Pull to refresh

Comments 108

UFO just landed and posted this here
просто хобби в свободное от работы время)
крутое хобби, пока остальные собирают марки...
Только spm решил отойти от дел, как его троя разбирают любители :)
+1
Спасибо за подробный бетатест-отчет для незадачливых разработчиков трояна. Они вам, наверняка, скажут спасибо. :)
В целом интересно и зря вы так себя скромно недооцениваете, какой же вы начинающий?
Дебагер какой используете? SoftIce?
UFO just landed and posted this here
Ага, давненько таких статей небыло. Автор молодец, ждем еще.
Интересно! Что-то на "начинающего" вы совсем не похожи :)
+ вам
> и начинающим (как я:)
Если Вы "начинающий", то что же будет, когда станете профессионалом (страшно представить :))
Почитайте книжки Криса Касперски, он тут наплодил некоторое количество штук по теме. 8)
правда книги ориентированы как раз на начинающих, но сам Крис явно в теме получше.
На то, чтобы ориентироватся на уровне этого отчета вполне хватает. Помницо, в старые добрые времена хакал и отвязывал от лицензии почти все проги самостоятельно, сейчас практический смысл в таких копаниях окончательно пропал.
Да, я помню читал в Хакере несколько его статей. Хотя в то время я вообще ничего не понимал, но было интересно следить за ходом мысли :))
Насчет почитать книжки, это Вы хорошую мысль подкинули, хочется уметь в этом разбираться :))
>Достаточно запретить себе запись в системные директории и большая половина вирусов работать просто не будет.

Т. е. не сидеть все время под Администратором?
либо так, либо просто запретить себе запись (если ваш акаунт входит в группу администраторов). Во втором случае есть обходной путь, так как права на выставление прав все же остаются. То есть в случае ошибки прогармма попробует выставить себе права на запись. Но я таких не встречал среди знакомой мне пары вирусов.
Ладно, а что на счет "меньшей половины вирусов"? Всё-таки сработает?
там могут не использоваться системые папки
Но руткит-то поставить оно сможет, если не из-под админа?
ну для этого драйвер надо зарегистрировать-загрузить, а это может администратор.
Только что винда запретила самому себе запретить доступ на запись в C:\Windows :)
Как советует сам Майкросовт Работать под учетной записью администратора опасно.
Поэтому необходимо создавать ограниченную учетную запись и работать с ней. Учетной записи с административными правами поменять название на отличное от Администратор. Соответственно в системные папки необходимо поставить права доступа для файловой системы только учетной записи администратора и тогда обычным вирусам не туда дороги, но это все для случаев, когда вирус не использует для внедрения сплойтов, которые позволяют запускаться с привилегиями самой системы.
В Windows встроена учётная запись Administrator (или Администратор - в русской версии будут работать оба варианта). И если при установке винды не задать "пароль администратора", в принципе ничто не помешает выполнять что угодно от его имени.
А кот мешает вам поставить пароль, при установки системы она предлагает это сделать. Тут вопрос уже в другом, а надо ли вам это делать. Если есть большое желание цеплять всякую гадость в сети, то конечно же на надо. А если нет, то нужно немного поковыряться с правами и все. Ну и хороший анитивирь с файрфолом.
Кот мне не мешает, он на системнике спит :)
Я имел в виду, что НЕ ПОСТАВИВ пароль на встроенную учетную запись "администратор" (что наблюдается в 90% установок), вы никак не обезопасите себя, даже работая под ограниченной учетной записью. И где в моих словах желание "цеплять гадость"? Я просто дополнил ваши слова :)
Если вы, работая под одной учетной записью, попытаетесь запустить программу под другой учетной записью с админскими правами, но с пустым паролем, Windows вам этого сделать не даст. То же касается и программных методов. Так что на этот счет можете не волноваться, но пароль все-таки лучше поставить
Я так понимаю, что цель этой статьи баг репорт? :)
:)
скорее радость по поводу такой простой ошибки, а не какого-нибудь полного удаления системы.
Нет, ограничить всеголишь один пункт.
Кстати а как бороться с Hidra?
Я не совсем уверен что прально написал название, но читаеться как гидра. Эта гадасть содиться в ехе-шники, и начинает распростроняться во все ехе файлы на компьютере. А избавиться от нее у меня получилось лишь удалением всех ехе файлов и как следсвие переустановка системы!
Антивирусы очень успешно борются с этой заразой. А если нужны погибшие в неравном бою фирмачные блокноты и пейнты в "установка - удаление программ" "дополнительные компоненты" решат ваши проблемы. А вообще до того как гидра поест все ехешки лучше использовать голову и антивирус. Вместе дают поразительные результаты =)
"и начинающим (как я:), " - убило :)
Спасибо за интересный обзор.
P.S. Свежая avira не смогла распознать что-нибудь подозрительное в этом файле. Очень жаль. :(
ну.. да, пока я так считаю.

вы про какой файл?
Спасибо за интересную статью.
А файл по ссылке — тот самый, который вам прислали? Мой антивир говорит «Nothing Found».
потому что это не файл, а просто ссылка. Я ее писал с амперсандами, но у хабра свои идеи на этот счет. Должно было быть "угловая скобка" href= и так далее.
"resume.exe (не кликайте, ссылка для примера)."
почему-то сервер хабра заменяет [амперсандlt;] на реальные угловые скобки.
UFO just landed and posted this here
смотря, с какой частотой вирусы будут приходить в почту)
UFO just landed and posted this here
спасибо за интересный обзор! :)

получил +2 полезности:
/me пошел запрещать себе запись в системные папки
/me поностальгировал по временам DOS и всевластия ассемблера... :)
1 - готовьтесь к тому, что некоторые действия типа инсталляций программ надо будет делать в юникс-стиле, под администратором.
2 - ассемблер и сейчас живее всех живых )
А вы точно уверены, что драйвер-таки не загрузился? Судя по тому коду, что вы привели, драйвер регистрируется сервисом в системе. Но не факт, что троян запустит этот сервис сразу после регистрации ;-) Надо, все-таки, создавать тут отдельный блог по Reverse Engeneering, хотя я тоже начинающий :-)
регистрируется, ага, но потом StartService валится.
В msinfo32 он виден, как зарегеный, но незагруженный.
UFO just landed and posted this here
да ладно вам, тут много интересного, но спасибо)
Реверсинг это круто;)
Целое детективное расследование.
"как будто один компьютер рассказывает новости другому" - нечто такое сказали в одном из прошлых постов.
прочел с интересом хоть вирусами никогда не интересовался. и вообще думаю на никс свалить с виндоус :)
Я уже свалил. Не жалею. ;)
Очень хорошая статья!
Автору спасибо.
Хотелось бы больше таких статей, т.к. тематика вирусов и их ковыряния очень интересная и познавательная!
больше не надо, а то надоест быстро)
Спасибо за красивую статью. Повспоминал, как с приятелем в 90-х годах тоже ковыряли вирусняки, правда тогда еще 95-е винды только появились. Жаль плюсануть не могу, но все равно спасибо, было очень интересно.
Отлично, почаще бы таких расследований про реверсивную инженерию и "хакеров", которых вычисляют общими усилия хабра :))
зависит от того, как часто будут вирусы в почту приходить)
В ассемблерах не силен, но интересно было читать как вы анализировали... хоть и криворукий нерабочий (почти) троян...
P.S> Да распухнет твоя карма ;)
А можно поподробнее, из-за чего именно руткит не работает на ХР? Довольно любопытно. =)

Вдруг вам покажется интересным... Вы случайно Rustoсk.C не хотите поковырять для саморазвития? =) Вот образец, пароль 000.
Добрые вы! Такую заразу в открытый доступ класть :-D
не работает, потому, что он собран для windows 2000. Это задается полями Major/MinorOperating SystemVersion в PE заголовке. Ну, а загрузчик драйверов требует точного совпадения с текущей версией.
хмм..
а где, собственно, интсталлятор? или мне его самому в BootExecute прописывать?
Увы, дроппера мне не встречалось. Но даже не в дроппере дело. В BootExecute он, AFAIK, не прописывается, он вроде драйвер. Да и не уверен я, что он из BootExecute запустится как exe, когда у него флаг DLL в хедере установлен.

Честно признаться, я сам в нем не ковырялся. Рекомендую ознакомиться с подробностями тут, здесь, еще немного там.
ну вобщем, ясно. снимаем DLL flag, ставим подсистему на win32 console, и тогда запускается из пользовательского режима. Первый зашифрованный слой между pushad и popad - довольно просто. А потом, ууу.. таким начинающим, как я, не под силу. Особенно учитывая, что в dr web потратили целую неделю.
Спасибо за наглядную, показательную методику анализа вирусов!
это скорее обобщенный итог. со всеми подробностями это надо раз в двадцать больше страниц.
побольше бы таких статей! раньше тоже баловался, но щас времени нет :\, но с удовольствием бы покопался ;)
респект автору!
Спасибо большое! Было интересно прочитать.
UFO just landed and posted this here
хоть я и далёк от программинга, но прочитал всё равно с интересом :) всегда было интересно, что же такого люди мудрят в вирусах и прочих вредоносных программах. спасибо автору!
Повеселило :)
Если бы мне пришло письмо подобного содержания — я бы просто удалил его нафиг и всё.
А автору не влом было аккуратно скачать и препарировать... ну даёт :)
прсото интересно, что же оно конкретно делает.
Тоже заметил, но на фоне интересности и увлекательности самой статьи напрочь забыл об опечатке, чего и вам желаю :)
спасибо, внимательные вы какие)
спасибо! действительно очень интересно! Но те кто рассылают такой вирус, явно тупанули))
ну почему. насколько я знаю, примерно от одного до трех процентов пользователей windows используют win 2000.
Сервер:
PORT STATE SERVICE
22/tcp filtered ssh
25/tcp filtered smtp
111/tcp filtered rpcbind
135/tcp filtered msrpc
136/tcp filtered profile
137/tcp filtered netbios-ns
138/tcp filtered netbios-dgm
139/tcp filtered netbios-ssn
445/tcp filtered microsoft-ds
631/tcp filtered ipp
950/tcp filtered oftep-rpc

То есть не веб-хостинг, +все порты для "обычных" коннектов закрыты.
WHOIS:
McColo Corporation MCCOLO (NET-208-66-192-0-1)
208.66.192.0 - 208.66.195.255
Aviacor ltd MCCOLO-DEDICATED-CUST425 (NET-208-66-195-128-1)
208.66.195.128 - 208.66.195.193

McColo - компания, дающая в аренду выделенные сервера.
Если с английским нормально - можно им написать abuse-report и лавочку прикроют.
А антивирусные компании о таких серверах не репортают разве?
Отловить все сервера по инету - нереально.
Обычно процесс происходит так: кто-то находит сайт, который распространяет вирус - недовольный пользователь пишет в саппорт хостинга о том, что так и так, сайт pupkin.com шлёт мне вирусы, примите меры. Дальше это письмо эскалируется до системных администраторов сервера , которые собсно и смотрят, что там не так и если находят что-то - просто тушат этот сайт.
Такие сервера, как этот отловить трудно - ибо он ничеого не отсылает, а наоборот - принимает некие данные - соответственно обнаржуть его можно, только расковыряв исходник вируса :)
Дописал комментарий и понял смысл вашего вопроса - насколько я знаю, АВ компании просто заносят в базу "слепок" вредоносного кода - что именно делает конкретный вирус - разбираются довольно редко, только если это не что-то распространённое - например какой нить червь.
Не поверите, но все-таки разбираются. Как отличить хитрый пакер или протектор от хитрого файлового вируса? Только разобраться. Да и имена хорошо бы не с потолка давать, а по функционалу.
Спасибо! Теперь я понял как работают вирусы! Попробую написать что-нибудь подобное на досуге! :))))
Кладбище уродов без чувства юмора. В сотый раз в этом убеждаюсь уже...
Откройте для себя ImpRec - чтобы не фиксить импорт руками
ImpRec - то да, но там вначале есть вызов SetupImports, который грузит нужные функции через GetProcAddress.
Браво! Вы настоящий хакер в исконном значении этого слова.
никогда об этому не думал. просто интересно, как это работает изнутри.
"Загружаем файл в дебагер, ставим точку останова на CreateFile. Логично ведь - любая вредоносная программа должна ее использовать?" - сильно =)
но такой простой финт обходится например запуском второй копии процесса, в итоге имеем зараженную систему. если руткит толковый - то имеем гемор с его обезвреживанием. это первый нюанс.
ну а второй - не стоит на рабочей машине исследовать вирусы, для этого стоит заводить VMWare. Сам так делаю и вам того же желаю =) Ибо способов уйти из-под отладки столько... =)
А во «второй копии процесса» CreateFile не будет?
смотря чем отлаживать. если ollydbg - то идет отладка одного процесса. других процессов не касается. поэтому второй запущенный выполняется вне отладчика. если же тем же softice, windbg, syser - ставить бряк на CreateFile глобально - не знаю не знаю. Бряк должен быть в АП определенного процесса. Если они ставят во все процессы - запаришься разгребать вызовы =)
Э! Если бряка ставитсо на вызов CreateFile - тогда да, запуск второго процесса проскочит. А если бряк ставить на начало CreateFile - это уже совсем другое. Правда, есть способ и от такого уйти :-) Да и не CreateFile единым...
А еще FileMon хорошо юзать - будет видно что и куда дропается.
1-для таких случаем есть опция "debug child process".
2-спасибо, подумаю)
>имеем зараженную систему
Виртуальную, скорее всего.
Ой, невнимательно прочитал - вы и сами такое решение предложили.
1-для таких случаем есть опция "debug child process".
если отлаживаешь в IDA - то можно считать что компьютер заражен =) главный деструктив выполняется вначале. Главаная задача вируса - запустица. На заражение и уничтожение данных ему хватит пары секунд. Отлаживать запустившийся вирус уже бестолку - разве что искать средство его лечения.

Я как то давно песал статью про препарирование вируса, и даж антивирус написал для него =) Лечилку. Если интересно - могу запостить. Хотя пока чет не получается сделать пост - выкидывает на объяснение, что такое карма итп.
Вот стотейка - http://rascalspb.narod.ru/articles/AntiWin32Friendly/AntiWin32Friendly.html
Ух ты, мега...
все детально и лаконично одновременно.
пишите, пожалуйста, еще !
Спасибо
Sign up to leave a comment.

Articles