Вирус, photo by twenty_questions |
Gunsmoker сегодня сообщил о вирусе, заражающем установленную Delphi и распространяющим себя через скомпилированные программы. Известно, что в интернете гуляли заражённые версия Qip и Aimp.
Вирус делает 2 вещи: размножается и иногда глючит. Собственно по глюкам его и нашли. Вирус заражает версии Delphi с 4й по 7ю, и при активации перезаписывает собой файл sysconst.dcu, сохраняя оригинальный файл с именем sysconst.dcu.bak.
Подробное описание этого вируса, алгоритма его действия и способа лечения можно найти в блоге GunSmoker-a.
Сама по себе эта разновидность вируса не опасна. Его легко найти и исправить. Однако этот вирус демонстрирует жизнеспособность такого способа заражения, и уязвимость установленной Delphi.
Мне “повезло” обнаружить этот “вирус” в своей инсталляции Delphi 6 и Delphi 7. Причём дата модификации у одного из sysconst.dcu.bak был январь 2008 года.
После этого я задумался, о том, что необходимо как-то защитить Delphi и исходники. Большое везение, что этот вирус оказался довольно безобидным. Однако, возможно появятся (или уже есть) и другие, которые не столь явно себя проявляют.
Первое, что пришло в голову – это занести стандартные папки Delphi Bin и Lib (и некоторые другие) в Subversion. Хотя бы и в локальный. Сказано – сделано. Теперь, если какой-то из файлов изменится, это будет видно невооружённым глазом (TortoiseSVN помечает изменившиеся файлы другой иконкой).
Но зная себя, я могу сказать, что регулярно проверять эти папки вручную мне будет лень. Поэтому, следующий шаг – автоматизировать проверку, и настроить уведомление по e-mail-у если хотя бы один файл изменится.
Это сделать довольно просто. Можно написать, например, .bat-файл, который будет делать следующее:
- Запускать консольный svn-клиент, проводить сравнение локальной папки с репозиторием кода и выводить список изменений в какой-нибудь файл.
- Написать программку на Delphi, которая будет проверять указанный файл, и в случае появления изменений отправлять e-mail.
А также будет необходимо прописать этот файл в планировщик Windows, чтобы он регулярно запускался.
p.s. Пока это только идея.
p.p.s. А до тех пор, придётся воспользоваться каким-нибудь антивирусом. Например, установить Norton AntiVirus 2012 Beta, или ещё лучше Касперского прикупить.
А не проще работать из под рестриктед-юзера, без прав модификации ProgramFiles?! А с UAC-ом так вообще всё просто..
ОтветитьУдалитьдавно собираюсь написать прогу, которая будет маяковать о всех изменившихся и добавившихся файлах как в папке винды.. так например и в папке делфей... видать пора ))))))
ОтветитьУдалить> Вирус заражает версии Delphi с 3й по 7ю
ОтветитьУдалитьОшибка: с 4-й по 7-ю.
> А не проще работать из под рестриктед-юзера, без прав модификации ProgramFiles?! А с UAC-ом так вообще всё просто..
ОтветитьУдалитьЧетно говоря не проще. Слишком много используемых программ не дружат с ограничениями по правам. :(
А тема жива :) Из ленты delphifeeds:
ОтветитьУдалитьhttp://wings-of-wind.com/2009/11/02/compile-a-virus-filefeeds-a-solution/
Помню, что впервые о вирусе прочитал в вашем блоге, но не помню, чтобы у вашего поста был такой заголовок, как сейчас :)
Спасибо за статьи о разработке в Delphi!
Илья
Пожалуйста, Илья. Спасибо за доброе слово. =)
ОтветитьУдалитьИнтересно будет посмотреть как работает их watcher.
А название темы всегда таким было. Чтобы не переборщить с серьёзностью.=) Вирус всё-таки не таким уж и зловредным оказался.