  This paper presents a general overview on evolution of concealment methods in
computer viruses and defensive techniques employed by anti-virus products. In
order to stay far from the anti-virus scanners, computer viruses gradually
improve their codes to make them invisible. On the other hand, anti-virus
technologies continually follow the virus tricks and methodologies to overcome
their threats. In this process, anti-virus experts design and develop new
methodologies to make them stronger, more and more, every day. The purpose of
this paper is to review these methodologies and outline their strengths and
weaknesses to encourage those are interested in more investigation on these
areas.
