-
Full Member
- Вес репутации
- 69
Зайцев Олег
Очередная порция заслуженных похвал тебе и AVZ.
-
Будь в курсе!
Будь в курсе!
Надоело быть жертвой? Стань профи по информационной безопасности, получай самую свежую информацию об угрозах и средствах защиты от ведущего российского аналитического центра Anti-Malware.ru:
-
Сегодня запустил AVZ, обновил базы, запустил сканирование системы. В самом начале отчёта увидел это:
>>>>
Опасно - файл avz.exe изменен, его CRC не прошла контроль по базе безопасных
Протокол антивирусной утилиты AVZ версии 4.23
Сканирование запущено в 02.01.2007 12:53:50
Загружена база: 75502 сигнатуры, 2 нейропрофиля, 55 микропрограмм лечения, база от 02.01.2007 12:08
Загружены микропрограммы эвристики: 365
Загружены цифровые подписи системных файлов: 54473
Режим эвристического анализатора: Средний уровень эвристики
Режим лечения: выключено
Версия Windows: 5.1.2600, Service Pack 2 ; AVZ работает с правами администратора
Что мне следует сделать?
Наше дело правое--победа будет за нами!!!
-
-
Сообщение от
Палыч
Сегодня запустил AVZ, обновил базы, запустил сканирование системы. В самом начале отчёта увидел это:
Что мне следует сделать?
Это глюк, и он уже пойман. Нужно еще раз обновить базы - и все будет нормально.
to DimaT
Приятно читать, что народу полезен AVZ
to All
Насчет детекта и снятия перехватов - пара моих комментариев:
1. Важным моментом является то, что AVZ ведь не сообщает о том, что перехват опасен, вреден, создан трояном или зловредом и т.п. - он просто констатирует факт - что функция X перехвачена методом Y, причем перехватчик возможно модуль Z. Поэтому разницы в том, антивирус это, Firewall, руткит и т.п. ему нет - выводятся данные о всех перехватах, которые AVZ в состоянии детектировать.
2. Частичная нейтрализация перехватов по неким условиям весьма опасна, по ряду причин:
2.1 Предположим, что AVZ "видит" перехват функции X драйвером klif.sys. Но после этого перехвата в системе установился руткит (которого прозевал монитор) - и этот руткит использует т.н. слайсинг - т.е. модификацию машинного кода. Что произойдет ? А произойдет интересный фокус - этот руткит найдет адрес функции X (в нашем случае указывающий на функцию-перехватчик в klif.sys) и изменит ее машинный код, т.е. изменит машинный код драйвер klif.sys в памяти ! Практический результат - на первый взгляд функция перехвачена легитимным драйвером, а на самом деле - зловредом !
2.2 Предположим, что в системе водится руткит и он установился до легитимного драйвера. Тогда функция X сначала перехватывается зловредом, затем - легитимным драйвером ... В результате AVZ будет видеть последний перехватчик в цепочке (т.е. легитимный драйвер) !
2.3 Рассмотрим случай 2.2 наоброт - сначала установился легитимный драйвер и перехватил 20 функций, в том числе функцию X. Затем установился нелегитимный и перехватил функцию X. Следуя правилу "не трогать легитимные перехваты" AVZ снимет перехват функции X - сняв оптом перехват как легитимного драйвера, так и левого. В результете легитимным драйвером будет перехвачено уже 19 функций, а не 20 ! Как частичное снятие перехватов скажется на его работе - предсказать очень трудно, но BSOD весьма вероятен.
Поэтому по умолчанию AVZ показывает в логе все перехваты и посдсвечивать зеленым перехваты легитимных драверов в свете п.п. 2.1 и 2.2 получается не совсем корректно. Равно как снимать перехваты частично ... - AVZ снимает все перехваты, но это включается вручную и пользователя предупреждает матюгальник в диалоговом окне и сообщение в протоколе о том, чем это чревато и что после анализа необходимо немедленно перезагрузиться
-
-
Сообщение от
aintrust
Код, который выводится в журнале BootCleaner-а - это код NTSTATUS после выполнения команды скрипта. Скачайте набор утилит
KmdKit, распакуйте его. Там внутри найдете утилиту
StatusToError - это то, что вам нужно, чтобы определить, что означает этот код.
Cпасибо! Это то что надо...
-
-
Олег Зайцев
Не могу ничего скачать:
http://z-oleg.com/avz4.zip
http://dl1.rapidshare.ru/127737/88839/avz4.zip
Залейте на rapidshare.de или rapidshare.com, please!
-
The only way to get smarter is by playing a smarter opponent.. © fundamentals of Chess 1883
"Dream as if you'll live forever, live as if you'll die today." (с) James Dean.
Менеджер по проектам(без опыта работы менеджером) или ассистент для начала , никому не нужен?=)
-
-
Функция ... перехвачена. Перехватчик не определен.
Запускал у друзей AVZ. Получил в отчете
"Функция ... перехвачена. Перехватчик не определен." (какая именно не помню).
Ни антивирусов ни брандмауревов на ПК нет. К нету в данное время не подключен.
Что бы это могло быть? (Может потребоваться прислать лог целиком?)
-
Mad Scientist, обязательно прочитайте вот эти правила о помощи
-
Сообщение от
Зайцев Олег
Насчет детекта и снятия перехватов - пара моих комментариев:
1. Важным моментом является то, что AVZ ведь не сообщает о том, что перехват опасен, вреден, создан трояном или зловредом и т.п. - он просто констатирует факт - что функция X перехвачена методом Y, причем перехватчик возможно модуль Z. Поэтому разницы в том, антивирус это, Firewall, руткит и т.п. ему нет - выводятся данные о всех перехватах, которые AVZ в состоянии детектировать.
То, что любые перехваты SSDT отражаются в журнале - это абсолютно правильно, т.к. они реально есть, и информация об этом зачастую помогает понять, что происходит на компьютере даже без более глубокого анализа.
Далее начну не соглашаться, и чтобы моя дальнейшая аргументация стала более понятной, начну вот с чего. Давайте вкратце вспомним, каким образом AVZ отображает информацию о "безопасных сущностях" (процессах, модулях, файлах и т.д.). Делается это примерно так (возьмем для примера модуль "Диспетчера процессов" AVZ):
- для каждого отображаемого в списке процесса находится его исполнимый файл (без подробностей, как это делается, т.к. тут тоже есть подводные камни, например модификация PEB), и если длина + контрольная сумма этого файла находится в "базе безопасных файлов" AVZ, то процесс отображается зеленым цветом. Если не находится - то черным;
- для каждого процесса из этого списка также отображается список модулей (dll + кое-что), загруженных в его адресное пространство. Для каждой такой dll также находится соответствующий ей файл на диске, и если его длина + контрольная сумма находится в списке безопасных, то эта dll отображается зеленым цветом. Если нет - черным.
Примерно так. В такой схеме есть как минимум два недостатка (их больше, но нам пока важны именно этих два):
1) первый, о котором я писал почти год назад тут, на форуме, а также в своем блоге - кому интересно, можете прочитать) состоит в том, что AVZ проверяет не тот файл, что загружен в память, а тот, что лежит на диске (т.к. длина + контрольная сумма формируются именно из него). Простая врЕменная подмена "плохого" исполнимого файла процесса на "хороший" (тот, который заведомо есть в списке безопасных) на время проверки AVZ делает его зеленым в обоих списках, о которых я упомянул выше. Т.е. реально может быть загружен "плохой" файл, а на диске вместо него врЕменно может лежать "хороший", и AVZ такой подмены не заметит. С введением AVZPM эта проблема, в принципе, решается, т.к. AVZPM - это, по сути, монитор запуска процессов и загрузки модулей, в связи с чем первичная проверка модуля на диске м.б. осуществлена именно в момент запуска модуля, а не позднее, при запуске AVZ. Но все ли и всегда ли имеют загруженный AVZPM?
2) второй недостаток связан с тем, что только для нескольких известных только автору dll (если честно, то даже я этого не знаю, хоть и неплохо разбираюсь во "внутренностях" AVZ) определяется факт перехвата (сплайсинга), причем только для процесса самого AVZ. Что это значит? Представим себе, что есть некая важная dll с именем xxx.dll, которая находится в списке безопасных AVZ и которая подгружена, к примеру, в процесс winlogon.exe, но не подгружена при этом в AVZ. Каким цветом эта библиотека будет отображена пользователю? Само собой зеленым, скажете вы! Вроде все правильно, но... Представим себе, что в адресном пространстве этого winlogon.exe находится некий зловредный поток, который сделал сплайсинг одной или нескольких функций этой библиотеки xxx.dll. Заметит это AVZ? Нет! Но эту библиотеку при этом он покажет зеленым цветом. Что же получается? Функции перехвачены зловредом, а AVZ не только не предупреждает пользователя об этом, но еще и усыпляет его бдительность, отображая ее зеленым цветом!!!
Последний сценарий вам уже что-то напоминает? Может, пункт 2.1 или 2.3 из приведенных Олегом выше сценариев? Так почему же тогда для процессов или dll можно показывать зеленым цветом то, что м.б. перехвачено, а для драйверов и модулей ядра, как утверждает Олег, нет? Я, если честно, не понимаю! Если уж следовать такой логике, то надо ей следовать везде - т.е., по сути, ничего и нигде не отображать зеленым цветом, т.к., по сути, все проверить на "безопасность" практически невозможно!!!
Теперь по пунктам:
Сообщение от
Зайцев Олег
2. Частичная нейтрализация перехватов по неким условиям весьма опасна, по ряду причин:
2.1 Предположим, что AVZ "видит" перехват функции X драйвером klif.sys. Но после этого перехвата в системе установился руткит (которого прозевал монитор) - и этот руткит использует т.н. слайсинг - т.е. модификацию машинного кода. Что произойдет ? А произойдет интересный фокус - этот руткит найдет адрес функции X (в нашем случае указывающий на функцию-перехватчик в klif.sys) и изменит ее машинный код, т.е. изменит машинный код драйвер klif.sys в памяти ! Практический результат - на первый взгляд функция перехвачена легитимным драйвером, а на самом деле - зловредом !
Очень маловероятный (если вообще существующий в природе) сценарий. Сплайсить чужой драйвер намного сложнее и опаснее, чем, к примеру, сплайсить соответствующую перехвату функцию в заранее известном для всех версий ОС ntoskrnl.exe. Ну, пусть в этом случае зловред не первым получит управление, что из того? Для многих случаев это просто не важно, т.к. скорее важно именно то, что зловред будет впереди стандартного обработчика ядра (кстати, я не понял, почему этот сценарий не был упомянут Олегом)!
Сообщение от
Зайцев Олег
2.2 Предположим, что в системе водится руткит и он установился до легитимного драйвера. Тогда функция X сначала перехватывается зловредом, затем - легитимным драйвером ... В результате AVZ будет видеть последний перехватчик в цепочке (т.е. легитимный драйвер) !
Само собой. Только при этом легитимный драйвер первым получает управление и далее уже может решать, передавать ему управление "старому" обработчику (зловреду) или же непосредственно в ntoskrnl.exe. Т.е. из того факта, что зловред успел первым, в реальности может ничего плохого и не следовать, если драйвер легитимной программы достаточно "умен".
Сообщение от
Зайцев Олег
2.3 Рассмотрим случай 2.2 наоброт - сначала установился легитимный драйвер и перехватил 20 функций, в том числе функцию X. Затем установился нелегитимный и перехватил функцию X. Следуя правилу "не трогать легитимные перехваты" AVZ снимет перехват функции X - сняв оптом перехват как легитимного драйвера, так и левого. В результете легитимным драйвером будет перехвачено уже 19 функций, а не 20 ! Как частичное снятие перехватов скажется на его работе - предсказать очень трудно, но BSOD весьма вероятен.
BSOD в данном случае вероятен ровно настолько же, как и в случае полного снятия перехватов в AVZ до уровня ntoskrnl.exe. Почему? Да очень просто! Ведь снятие всех перехватов в AVZ - это не одномоментный процесс (типа транзакции), а очень даже сериализованный (через последовательные обращения к драйверу avz.sys для снятия каждого перехвата в отдельности, а не всех оптом) и растянутый во времени, не так ли? Это означает, что в каждый момент времени от начала снятия перехватов до конца снятия в системе последовательно уменшается число перехватов, т.е. в первый момент останется 19 перехватов из 20-ти, потом 18 из 20-ти и так до нуля. За это время, в теории, может произойти не менее 20-ти BSOD-ов, но... ведь не происходит! И не должно, если драйвер написан корректно!
Сообщение от
Зайцев Олег
Поэтому по умолчанию AVZ показывает в логе все перехваты и посдсвечивать зеленым перехваты легитимных драверов в свете п.п. 2.1 и 2.2 получается не совсем корректно. Равно как снимать перехваты частично ... - AVZ снимает все перехваты, но это включается вручную и пользователя предупреждает матюгальник в диалоговом окне и сообщение в протоколе о том, чем это чревато и что после анализа необходимо немедленно перезагрузиться
Я бы сказал так: некорректна сама идея базы безопасных файлов, пока она формируется одним способом, а модули проверяются совсем другим. Поэтому будет логично или отказаться от этой идеи вообще (и для процессов, и для dll, и для модулей), или же следовать этой идее до конца - т.е. все-таки отображать зеленым цветом перехваты, осуществляемые легитимными модулями. Я - за последний вариант, хоть и понимаю его теоретическую и практическую несостоятельность. Но уж лучше так, чем совсем никак! Что же касается снятия перехватов в AVZ - да, надежнее и проще это делать до уровня модуля ntoskrnl.exe (т.е. так, как это сделано сейчас).
PS. Очень длинно получилось (типа для блога)... но что поделаешь?
-
-
Мелкие баги интерфейса
Xen, спасибо, но мне было как-раз интересно узнать что значит <...Перехватчик не определен> и из ответа Aintrust я почерпнул для себя инфу к размышлению (насколько мог понять).
-----------------------------------------------------------------------
Пример: "Менеджер расш. проводника" (или "Менеджер автозапуска")
Сохр. протокола-> Протокол успешн. сохранен. Вы хотите его просмотреть -> да -> никакой реакции
Сохранение протокола в "Менеджере расширений проводника" и в менеджере расширений IE сохраняют лог в один и тот же файл avz_ie_ext.htm по-умолчанию не спрашивая разрешения на перезапись
-
короче я все понял.
делаем лечебную машину: можно ноутбук, ставим linux (в крайнем случае winXP лицензия со всеми обновлениями), ставим каспера (можно trial если не лень раз в месяц переставлять) и все hdd ставим на проверку на эту машину. И firewall для кучи под win32 обязательно ставим (comodo бесплатный, обновляется, ставится даже на w2003server). С этой машины в иннтернет только за обновлениями, а все остальное время сетевой кабель выдернут
P.S. хотел сейчас посмотреть что у каспера под linux есть, но сайт у них не доступен.
-
-
В отчетах "Модули расширения проводника", "Менеджер процессов" не работают ссылки на модули.
ПРИМЕР:
(*<TR bgColor=#ffdfb5><TD><a href="" title="ошибка получения информации о файле">"C:\Program Files\ABBYY Lingvo 10 Multilingual Dictionary\Lvagent.exe" /STARTUP</a><TD>Активен<TD>Ключ реестра<TD>HKEY_LOC...*)
--------------------------------------------------------------------------------------------
1)Почему бы в "Диспетчере процессов" не сделать возможность сортировки модулей по алфавиту, как сделана сортировка самих процессов? (так сделано в Process Explorer - оч. удобно).
2) Почему при перелистывании процессов AVZ "тормозит" (считает MD5)?
3) Хорошо бы сделать возможность поиска dll'и, подгруженной в к-л процесс (как в Process Explorer), тем более что AVZ может принудительно ее выгружать.
(Я понимаю, что у AVZ и Process Explorer различные назначения)
--------------------------------------------------------------------------------------------
http://www.xakep.ru//magazine/xa/081/118/4.asp
[Explorer Shell Extentions]
Мой "trojan.dll" заработал.
Я потом искал свой "trojan.dll" в "Менеджер расширений проводника" и не нашел.
("trojan.dll" загружен Explorer'om - Process Explorer)
Я что-то не так делал?
-----------------------------------------------------------------------------------
library ProcessFreezer;
var SysHook : HHook = 0;
....
function SysMsgProc
...
procedure RunStopHook(State : Boolean) export; stdcall;
begin
....
SysHook := SetWindowsHookEx(WH_GETMESSAGE,@SysMsgProc, HInstance, 0);
end;
begin{main}
if UpperCase(Application.Title)='AVZ' then while true do i:=i+1; // Зависание
// или UpperCase(Application.Title)='AVZ' then Application.Terminate; // Самозакрывание
//Жалко, Forms много весит.. Есть другие способы, но я не искал.
end.
// KAV.exe тоже выносится (Kaspersky 5.0)
// А вот с OUTPOST FireWall 4.& такая фишка не проходит (вероятно это он перехватывает SetWindowsHookEx)
// (Вернее проходит, но если его перед этим закрыть, а потом опять запустить)
(Может от этого будет к-л польза )
-
Сообщение от
Mad Scientist
2) Почему при перелистывании процессов AVZ "тормозит" (считает MD5)?
Это потому, что в нижнем окне AVZ всякий раз при смене строки пытается отобразить список dll, загруженных в адресное пространство данного процесса (или же информацию об окнах процесса). И то, и другое требует некоторых временных затрат, поэтому и притормаживает. Я, к примеру, уже зарекся делать скроллинг в этом окне клавишами PgUp/PgDn...
Сообщение от
Mad Scientist
(Я понимаю, что у AVZ и Process Explorer различные назначения)
Ага...
-
-
Сообщение от
Mad Scientist
Xen, спасибо, но мне было как-раз интересно узнать что значит <...Перехватчик не определен> и из ответа Aintrust я почерпнул для себя инфу к размышлению (насколько мог понять).
На самом деле Xen прав, т.к. чтобы разобраться в том, что там перехвачено, чем именно и каким образом, лучше иметь перед глазами логи AVZ и HJT, сделанные в соответствии с правилами этого форума. Это может быть и зловред, между прочим!
Сама по себе формулировка "...перехватчик не определен" означает, что указанная в логе функция к.-л. библиотеки (или модуля) чем-то перехвачена, но вот чем именно, AVZ определить не смог.
[offtopic]
PS. Попробуйте в данном случае использовать специализированные анти-руткиты - к примеру, утилиту GMER (www.gmer.net - хоть этот сайт сейчас мертвый, саму программу вы легко найдете через любой поисковик) или RkUnhooker (www.rku.xell.ru). Они, если мне не изменяет память, имеют более продвинутые методики определения перехватчиков. И не забудьте потом рассказать о результатах вашего "расследования"!
[/offtopic]
-
-
Странно
В логах этой темы http://virusinfo.info/showthread.php?t=7376
Фаил 'D:\WINDOWS\system32\vbsys2.dll' есть в эвристической проверке, но его нет больше нигде в логе. Глюк? Или я чего-то не понимаю.
-
-
Кстати, в продолжение темы о том, надо ли как-то дополнительно отмечать перехваты, сделанные "безопасными" модулями, увидел еще одно противоречие тому, что говорил Олег, а именно:
1.3 Проверка IDT и SYSENTER
Анализ для процессора 1
>>> Опасно - подозрение на подмену адреса ЦП[1].SYSENTER=806ED6AD D:\WINDOWS\system32\ntoskrnl.exe, драйвер опознан как безопасный
ЦП[1].SYSENTER успешно восстановлен
т.е. тут явно указано, что перехват (якобы) осуществил безопасный драйвер ntoskrnl.exe. В то же самое время видим:
Функция ZwSetSystemPowerState (F1) перехвачена (8066F64D->F77F2550), перехватчик a347bus.sys
>>> Функция воcстановлена успешно !
Здесь уже не указано, что драйвер a347bus.sys "безопасный", хотя он таковым является (его нет в списке небезопасных драйверов, который имеется выше в логе).
И там, и тут - перехваты, сущность которых в принципе одинакова, хотя используется разная техника, а реакция AVZ при этом - разная.
Я бы вообще предложил "продвинутую" цветовую индикацию (причем во всех модулях AVZ и в журналах - совершенно одинаковую!), например:
- зеленый - модуль безопасный;
- красный - модуль сигнатурно определен как зловредный;
- желтый - модуль определен как вероятно зловредный (как сделано в списке процессов/модулей пр-ва ядра для dkom-руткитов);
- синий - модуль принадлежит списку безопасных модулей пользователя (что можно было бы в дальнейшем реализовать);
- черный - а кто его знает (т.е. все остальное).
Неплохо бы также различать ситуации, когда модуль не принадлежит ни одному из списков и когда модуль просто не найден на диске. Сейчас все это показывается черным цветом, и нет никакой возможности понять, что же там на самом деле.
В таком случае даже беглого взгляда было бы достаточно для ориентации, и не приходилось бы каждый раз, видя перехват, лазать туда-сюда по логу, чтобы определить, есть ли этот модуль-перехватчик в безопасном списке, или же нет.
Последний раз редактировалось aintrust; 05.01.2007 в 14:35.
-
-
to aintrust
Принимается - логи и отчет я покрашу в разные цвета, в антирутките какой-то глюк с проверкой драйверов по базе безопасных - поймаю и исправлю. По поводу цветов все согласны ? Вроде предложенная схема логична. Если возражений/предложений нет, то я ее и реализую.
-
-
D:\WINDOWS\system32:lzx32.sys упорно не копируется в карантин. Может можно это поправить?
-
-
Сообщение от
Зайцев Олег
to aintrust
По поводу цветов все согласны ?
С конкретными цветами надо будет уже смотреть в рабочем варианте, может быть желтый придется поменять на что-то лучше смотрящееся, например какой-нибудь из его оттенков.
-
-
Сообщение от
Geser
D:\WINDOWS\system32:lzx32.sys упорно не копируется в карантин. Может можно это поправить?
Поправить можно - после выходных выйдет 4.24 с новым BootCleaner - он кроме убиения файла делает его копию в карантине.
-