Обсуждение записи: Autorun Guard v.1.0 (http://people.overclockers.ru/siliks/record16)
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
В последнее время развелось много вирусов, распространяющихся на флешках через файл Autorun.inf.
У этого способа есть одно "узкое место" - сам файл autorun.inf.
Расчёт на то, что пользователь не заметит вредоносного файла и сам (или посредством услужливого проводника Windows) запустит вирус.
Устроим флешкам "проверку на вшивость": будем отслеживать наличие autorun.inf и его содержимое.
Пока вирус находится флешке, и его не запустили, он беззащитен: файл autorun.inf и тело вируса легко удалить.
Таким образом можно отлавливать все вирусы, которыеи используют autorun.inf для распространения, какими бы хитрыми они не были.
Для этого и была написана программа AutorunGuard, или сторож авторана.
#77
AutoRun Guard v.1.0, о программе
Программа тихо-мирно сидит себе в трее, пока юзер не вставит флешку. Тогда программа отслеживает появление нового съёмного диска и проверяет его на наличие autorun.inf.
Если такой файл существует, то программа оповещает пользователя об этом "лаем караульной собаки", и показывает его содержимое.
#77
AutoRun Guard v.1.0, главное меню
Можно сразу же удалить autorun.inf, или оставить "как есть", если файл безвредный (кнопки "удалить" и "оставить").
Если файл autorun.inf скрытый и/или системный вирусу это не поможет, программа всё равно его обнаружит. И удалит, даже если он readonly.
Программа не требует установки, нужно просто скопировать её на винчестер и кинуть ярлык в автозагрузку.
Распространяется как всегда с исходниками. Написана на Delphi5+KOL
AutorunGuard.exe - программа
dog.wav - лай караульной собаки
Member
Статус: Не в сети Регистрация: 27.05.2006 Откуда: Saransk
В целом неплохая програмка, но я в процессе её работы обнаружил недостаток. Если вызвать PopMenu у иконки в трее, то оно немного съезжает вниз и строку выход почти не видно(стоит XP SP2) и это меню не исчезает с экрана если например кликнуть на пустом месте. Но это скорее придирки, а там вобще полезная програмка.
_________________ Я рвусь от новостей так быстро мир стал другой.
Тыкаем на папочку 'Система', справа находим пункт 'Отключить автозапуск', лезем в его свойства, выбираем там 'Включить' и в выпадающем списке ставим 'На всех дисководах'
И не надо всей этой порнографии со всеми этими УГ-утилитами...
Создаёте текстовый файл (блокнотом) и сохраняете с расширением ".reg"
Делаем двойной щелчёк по файлу и вуаля... любой авторан становится невозможным... Почему любой..?
Потому, что любой носитель информации может содержать тот самый всеми "любимый" авторан...
Главное преимущество этого способа НЕТ необходимости засорять свой ПК всяким левым программным обеспечением, который ввиду своей бесплатности тоже может содержать АдВаре или ещё лучше МалаВаре...
Если я не прав, то "старшие товарищи" меня поправят...
Поправки конечно приму только в виде "полного текста рег файла" к тому ещё и с огромным удовольствием...
Advanced member
Статус: Не в сети Регистрация: 27.02.2007 Откуда: Москва Фото: 54
Надо просто написать авторан-червя, который при запуске отключает автозапуск на всех носителях, распространить его, и все... А методы административного воздействия неэффективны по причине абсолютной тупости юзеров... Кстати она же подтверждается заголовком этой темы, вместо настройки политик городить костыль-это круто
Advanced member
Статус: Не в сети Регистрация: 27.02.2007 Откуда: Москва Фото: 54
Артём™ писал(а):
Если ты понимаешь то, что написано в исходниках, то пожалуйста напиши
Еще желательно, чтобы он полностью чистил ветки Run и RunOnce и удалял всякие ntde1ect.com и был достаточно "умным", чтобы не валиться в случае запуска под ограниченной учеткой.. Я бы и сам занялся, но что-то влом вендузятников уму-разуму учить..
Артём™ писал(а):
Сообщество будет славить твоё имя в веках...
Это вряд ли, историю с CodeRed и его антиподом CodeGreen уже забыли.
Если ты понимаешь то, что написано в исходниках, то пожалуйста напиши
Пошутил? Немножко понимаю, я же их и написал...
Эта функция обрабатывает Windows Messages:
Код:
function TForm1.KOLForm1Message(var Msg:tagMSG; var Rslt:Integer):Boolean; type _DEV_BROADCAST_HDR=record dbch_size:DWORD; dbch_devicetype:DWORD; dbch_reserved:DWORD; end; _DEV_BROADCAST_VOLUME=record dbcv_size:DWORD; dbcv_devicetype:DWORD; dbcv_reserved:DWORD; dbcv_unitmask:DWORD; dbcv_flags:WORD; end; var DB_HDR:_DEV_BROADCAST_HDR; DB_V:_DEV_BROADCAST_VOLUME; P:pointer; begin // $8000 - подключили $8004 - отключили FD if (Msg.message=WM_DEVICECHANGE) and ((Msg.wParam=$8000) or (Msg.wParam=$8004)) then begin P:=Ptr(Msg.LParam); DB_HDR:=_DEV_BROADCAST_HDR(P^); if DB_HDR.dbch_devicetype=2 then begin DB_V:=_DEV_BROADCAST_VOLUME(P^); if DB_V.dbcv_flags=0 then begin //флешка вставлена: if Msg.wParam=$8000 then begin CheckAutoRun(GetNewRemovableDisks); end; //флешка убрана: if Msg.wParam=$8004 then begin GetNewRemovableDisks; end; end; end; Result:=true; //прервать обработку сообщения end else begin Result:=false;//продолжить обработку сообшения end; end;
если событие WM_DEVICECHANGE и параметр $8000 - значит подключили флешку, если $8004 - значит отключили.
Код:
if (Msg.message=WM_DEVICECHANGE) and ((Msg.wParam=$8000) or (Msg.wParam=$8004)) then begin
и далее наш код обработки события:
Код:
//флешка вставлена: if Msg.wParam=$8000 then begin CheckAutoRun(GetNewRemovableDisks); end;
Advanced member
Статус: Не в сети Регистрация: 27.02.2007 Откуда: Москва Фото: 54
Паскаль-это конечно круто, но неплохо бы написать ту штуку (о которой я говорил) на чем-то дающем менее объемные файлы. Причем, можно обойтись одним файлом autorun.inf, без внешних бинарников... Как? Даю две подсказки...
1) Все, что не подходит под формат inf-файла, воспринимается как комментарий, и игнорируется, ошибок не происходит.
2) Команда вроде dir|fotka.jpg запустит файл fotka.jpg как программу, если файл соответствует формату исполняемых файлов Windows, при этом совершенно неважно его расширение, его может не быть вообще.
Member
Статус: Не в сети Регистрация: 12.03.2005 Откуда: Sumy (UA)
HertZ писал(а):
А дальше думайте, я и так много сказал
Ничего умнее, чем echo в файл с последующим запуском не приходит... Ну или через reg import.
_________________ ЭТО Я НЕТЕРПЕЛИВЫЙ!?!!?Да я Сталкера прошел,не зная что можно бегать! Как убивать друзей в STALKER: people.overclockers.ru/SilentF/record2
Advanced member
Статус: Не в сети Регистрация: 27.02.2007 Откуда: Москва Фото: 54
Silent forest Зачем echo, когда можно запускать сам autorun.inf? И не нужно никаких вспомогательных файлов.. Только нужно еще кое-что сделать, чтобы это стало возможным
Для того чтобы было легче обдумывать, пример гибридного JScript + inf-файла (для проверки нужно сохранить, как autorun.inf и положить в корень флэшки):
Advanced member
Статус: Не в сети Регистрация: 27.02.2007 Откуда: Москва Фото: 54
siliks, посмотрим, может кто догадается до рабочего варианта
Удивительно, но я пока в реальных условиях не видел ни одного червя такого рода, а ведь все элементарно... Вот она, иллюстрация глупости вирусопейсателей... Копировать чужие решения умеем, а самим что-то придумать туговато...
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения