Чтобы увеличить вероятность достижения своих целей, киберпреступники разработали целый ряд технологий противодействия антивирусному программному обеспечению, в том числе:
- Упаковка и шифрование кода
Большинство червей и троянских программ упаковываются и подвергаются шифрованию. Для упаковки и шифрования хакеры разрабатывают специальные утилиты. Каждый файл, упакованный с помощью CryptExe, Exeref, PolyCrypt и некоторых других утилит, является вредоносным.
Чтобы обнаруживать упакованные и зашифрованные черви и троянские программы, антивирусная программа должна иметь в своем арсенале либо соответствующие технологии распаковки и дешифрования, либо сигнатуры для каждого образца вредоносной программы. - Мутация кода
Вирусописатели стараются маскировать свои вредоносные программы, подвергая их код «замусориванию», чтобы код принимал другой вид, но при этом сохранялся весь исходный функционал троянца. Иногда мутация кода происходит в реальном времени во всех или почти всех случаях загрузки троянской программы с зараженного веб-сайта. В почтовом черве Warezov была использована эта технология, что стало причиной серьезных эпидемий. - Методы сокрытия присутствия вредоносных программ
Руткит-технологии, которые обычно используются в троянцах, позволяют перехватывать и подменять системные функции, чтобы сделать зараженный файл невидимым для операционной системы и антивирусных программ. Иногда вредоносной программе удается скрыть даже разделы реестра, в которых зарегистрирована троянская программа, и другие системные файлы. Троянец-бэкдор HacDef — пример вредоносного кода, использующего эти методы.