Раздел: Документация
0 ... 5 6 7 8 9 10 11 ... 102 ИСТОЧНИКИ УГРОЗЫ По данным сайта VX.NETLUX.ORG на начато сентября 2003 года, рейтинг «популярности» вирусов и троянских коней выглядел так: •I-Worm.Sobig.f •Worm.Win32.Lovesan •Worm.Win32.Welchia •I-Worm.Sobig.a •Worm.Win32.Ladex •Win32.Parite •I-Worm.FireBurn •Trojan. Win32.Filecoder •I-Worm.Mimail •I-Worm.Klez.a-h •33.525 •Worm.P2P.Harex.a •I-Worm.Tanatos.a •TrojanProxy.Win32.Webber •MBA. First •AJ family •Worm.P2P.Tanked •Andrey.932 •Worm.Win32.0pasoft •Worm.Win32.Autorooter Все двадцать вирусов из двадцати «сильнейших» — чрезвычайно примитивные и неспособные к качественной мимикрии твари, легко обнаруживемые даже при поверхностном анализе исследуемых файлов по методикам, описанным ниже. КРИТИЧЕСКАЯ ОШИБКА В SVCHOST.EXE Если, работая иод Windows 2000/Windows ХР, вы поймаете сообщение о критической ошибке приложения в модуле SVCHOST.EXE и эта критическая ошибка с завидной регулярностью будет повторяться вновь и вновь, — не торопитесь переустанавливать систему, не несите ваш компьютер в ремонт! Источник ошибки сидит отнюдь не в нем, а приходит к вам но сети своим шагом и имя ему — DCOM RPC bug (рис. 1.1). Небрежное тестирование операционной системы вкупе с использованием потенциально опасных языков программирования привело к тому, что всякий нехороший человек получил возможность выполнять на вашей машине свой зловредный машинный код, управление которому передается путем нехитрого переполнения буфера. Однако современные хакеры в своей массе настолько тупы. что Дажс переполнить буфер, не уронив при этом машину, оказываются не в состоянии! ,vcho*texe - Ошибка приложения Искпсчемле ипклоуя* $oftw*e exceptic-n (0>с OiX:00%t в прь*поженииоо адресу ОйГгЭ1 3 "OK" - эавершение гфипоженмя "Отмена" - тмвгл положения:: ; рис. 1.1. Это — не признак нестабильности системы. Это — признак вирусной атаки! Если нажать ОК — перестанет работать буфер обмена и некоторые другие функции системы, если нажать Отмена — запустится отладчик (если он у вас есть) и система полностью встанет. Если же не делать ни того, ни другого — система успешно продолжит свою работу... Немедленно кликните мышью на Windows Update и скачайте все критические обновления, которые вы но своей лени не скачали ло сих пор! Поймите же, наконец, что антивирусы против этой беды вам все равно не помогут, поскольку осуществляют лечение ност-фактум, когда зачастую лечить уже нечего... На худой конец, закройте 135-й порт — тогда вирусы и троянские кони не смогут распространяться. Подробнее об этом рассказывается в разделе, посвященном червям и методам борьбы с ними. МЕСТА НАИБОЛЕЕ ВЕРОЯТНОГО ВНЕДРЕНИЯ ВИРУСОВ Объектом вирусного поражения могут выступать исполняемые файлы (динамические библиотеки, компоненты ActiveX, плагины), драйверы, командные файлы операционной системы (bat, cmd), загрузочные сектора (MBR и BOOT), оперативная память, файлы сценариев (Visual Basic Script, Java Script), файлы Документов (Microsoft Word, Microsoft Excel) и... и это далеко не все! Фантазия создателей вирусов поистине безгранична, и потому угрозы следует ожидать со всех сторон. Поскольку охватить все вышеперечисленные типы объектов в рамках «Записок...» не представляется сколь-нпбудь разрешимой задачей, автор остановил свой выбор на самых интересных вируеоноеителях — на исполняемых файлах. Во-первых, вирусы, поражающие исполняемые файлы (а также троянские нро-раммы, распространяющиеся через них же), лидируют по численности среди всех остальных типов вирусов вообще. Во-вторых, методология анализа new-ехе файлов на предмет их заражения не в пример скудно освещена. В-третьих, Тема днзассемблирования достаточно интересна и сама но себе. Для многих она слУЖит источником творческого вдохновения да и просто хорошим средством 30 Глава 1. Борьба с windows-вирусами — опыт контртеррористических on - --—-Рауий времяпрепровождения. Так что не будем мешкать и совершим наш рецщТе ный марш-бросок, снося всех вирусов, встретившихся на нашем пути! Ль~ ОСНОВНЫЕ ПРИЗНАКИ ВИРУСНОГО ВНЕДРЕНИЯ Единственным гарантированным способом выяснения, относится ли дащ.у файл к «плохим» файлам или нет, является его полное дизассемблирование Ц скрою, дизассемблирование — крайне кропотливая работа и на глубокую ? конструкцию программы размером в пять-лесять мегабайт могут уйти годы есчц не десятки человеко-лет! Чудовищные трудозатраты делают такой способ ащ лиза чрезвычайно непривлекательным и бесперспективным. Давайте лучше отталкиваться от того, что подавляющее большинство вирусов и троянских коней имеют ряд характерных черт, своеобразных «родимых пятен», отличающих их от всякой «нормальной» программы. Надежность таких «индикаторов» зараженности существенно ниже, и определенный процент зловредных программ при этом останется незамеченным, но... как говорится, на безрыбье и слона из мухи сделаешь! Количество всевозможных «родимых пятен», прямо пли косвенно указывающих на зараженность файла, весьма велико, и ниже перечислены лишь наиболее характерные из них. Но даже они позволяют обнаружить до 4/5 всех существующих вирусов, а по некоторым оценкам и более того (но крайней мере, все «лауреаты» вирусного ТОР-20 -- обнаруживаются). ТЕКСТОВЫЕ СТРОКИ Прежде чем приступать к тотальному дезассемблированию исследуемого ([йн-ла, нелишне пролистать его дамп на предмет выявления потенциально неосзо-пасных текстовых строк, к которым, в частности, относятся команды SMTP-сервера и командного интерпретатора операционной системы (HELO/MAIL FROM/MAIL TO/RCPT ТО и DEL/COPY/RD/RMDIRсоответственно).; вей автозапуска реестра (RunServices, Run, RunOnce), агрессивные лозум и высказывания («легализуем марихуану», «сам дурак») и т. д. Конечно, все это еще не свидетельствует о наличии вируса (троянской нр01 РаМ мы), а отсутствие компрометирующих программу текстовых строк не гар.п рует ее лояльности, но... просто поразительно, какое количество совремс. вирусов ловится таким элементарным способом. Не иначе как снижение натуры программирования дает о себе знать! Действительно, подавляюще " шинство современных программ (и вирусов в том числе) разрабатывае языках высокого уровня, и программисты не дают себе никакого труда-4 qt то скрыть «уши», торчащие из секции данных (не знают, как это сделать, л компилированная программа просто шифруется статическими упаковш»1 которые легко поддаются автоматической/полуавтоматической Распа*а щг выдавая исследователю исходный дамп со всеми текстовыми строками g. верхности (см. раздел «Идентификация упаковщика и автоматическая Р ковка»)., 0 ... 5 6 7 8 9 10 11 ... 102
|