Одним из опаснейших способов проведения атак является внедрение в атакуемые системы вредоносного программного обеспечения.
Выделяют следующие аспекты вредоносного ПО:
вредоносная функция;
способ распространения;
внешнее представление.
Часть, осуществляющая разрушительную функцию, предназначается для:
внедрения другого вредоносного ПО;
получения контроля над атакуемой системой;
агрессивного потребления ресурсов;
изменения или разрушения программ и/или данных.
По механизму распространения различают:
вирусы — код, обладающий способностью к распространению (возможно, с изменениями) путем внедрения в другие программы;
" черви" - код, способный самостоятельно, то есть без внедрения в другие программы, вызывать распространение своих копий по сети и их выполнение (для активизации вируса требуется запуск зараженной программы).
Вирусы обычно распространяются локально, в пределах узла сети; для передачи по сети им требуется внешняя помощь, такая как пересылка зараженного файла. «Черви», напротив, ориентированы в первую очередь на путешествия по сети.
Иногда само распространение вредоносного ПО вызывает агрессивное потребление ресурсов и, следовательно, является вредоносной функцией. Например, «черви» «съедают» полосу пропускания сети и ресурсы почтовых систем.
Вредоносный код, который выглядит как функционально полезная программа, называется троянским. Например, обычная программа, будучи пораженной вирусом, становится троянской; порой троянские программы изготавливают вручную и подсовывают доверчивым пользователям в какой-либо привлекательной упаковке1 (обычно при посещении файлообменных сетей или игровых и развлекательных сайтов).