Сетевой червь
— разновидность самовоспроизводящихся компьютерных программ,
распространяющихся в локальных и глобальных компьютерных сетях. В
отличие от других типов компьютерных вирусов червь является
самостоятельной программой.
История
Одни из первых экспериментов по использованию компьютерных червей в
распределённых вычислениях были проведены в исследовательском центре
Xerox в Пало Альто Джоном Шочем (John Shoch) и Йоном Хуппом (Jon Hupp)
в 1978. Термин возник под влиянием научно-фантастических романов Дэвида
Герролда «Когда ХАРЛИ исполнился год» и Джона Браннера «На ударной
волне» (David Gerrold «When H.A.R.L.I.E Was One», John Brunner «The
Shockwave Rider», Thomas Ryan «The Adolescence of P-1»).
Одним из наиболее известных компьютерных червей является «Червь
Морриса», написанный Робертом Моррисом младшим, который был в то время
студентом Корнельского Университета. Распространение червя началось 2
ноября 1988, после чего червь быстро заразил большое количество
компьютеров, подключённых к интернету.
Механизмы распространения
Черви могут использовать различные механизмы («векторы»)
распространения. Некоторые черви требуют определенного действия
пользователя для распространения (например, открытия инфицированного
сообщения в клиенте электронной почты). Другие черви могут
распространяться автономно, выбирая и атакуя компьютеры в полностью
автоматическом режиме. Иногда встречаются черви с целым набором
различных векторов распространения, стратегий выбора жертвы, и даже
эксплойтов под различные операционные системы.
Структура
Черви могут состоять из различных частей.
Часто выделяют так называемые ОЗУ–резидентные черви, которые могут
инфицировать работающую программу и находиться в ОЗУ, при этом не
затрагивая жёсткие диски. От таких червей можно избавиться перезапуском
компьютера (и, соответственно, сбросом ОЗУ). Такие черви состоят в
основном из «инфекционной» части: эксплойта (шелл–кода) и небольшой
полезной нагрузки (самого тела червя), которая размещается целиком в
ОЗУ. Специфика таких червей заключается в том, что они не загружаются
через загрузчик как все обычные исполняемые файлы, а значит, могут
рассчитывать только на те динамические библиотеки, которые уже были
загружены в память другими программами.
Также существуют черви, которые после успешного инфицирования памяти
сохраняют код на жёстком диске и принимают меры для последующего
запуска этого кода (например, путём прописывания соответствующих ключей
в реестре Windows). От таких червей можно избавиться только при помощи
антивируса или подобных инструментов. Зачастую инфекционная часть таких
червей (эксплойт, шелл-код) содержит небольшую полезную нагрузку,
которая загружается в ОЗУ и может «догрузить» по сети непосредственно
само тело червя в виде отдельного файла. Для этого некоторые черви
могут содержать в инфекционной части простой TFTP-клиент. Загружаемое
таким способом тело червя (обычно отдельный исполняемый файл) теперь
отвечает за дальнейшее сканирование и распространение уже с
инфицированной системы, а также может содержать более серьёзную,
полноценную полезную нагрузку, целью которой может быть, например,
нанесение какого–либо вреда (например, DoS–атаки).
Большинство почтовых червей распространяются как один файл. Им не нужна
отдельная «инфекционная» часть, так как обычно пользователь–жертва при
помощи почтового клиента добровольно скачивает и запускает червя
целиком.
Полезная нагрузка
Зачастую черви даже безо всякой полезной нагрузки перегружают и
временно выводят из строя сети только за счёт интенсивного
распространения. Типичная осмысленная полезная нагрузка может
заключаться в порче файлов на компьютере-жертве (в том числе, изменение
веб-страниц, «deface»), заранее запрограммированной DDoS-атаке с
компьютеров жертв на отдельный веб-сервер, или бэкдор для удалённого
контроля над компьютером-жертвой. Часто встречаются случаи, когда новый
вирус эксплуатирует бэкдоры, оставленные старым.
|