AUTOSTOP - скрипт для захисту від autorun-вірусів:
Радий буду почути ваші коментарі - їх можна писати прямо тут навіть тим, хто незареєстрований на livejournal.com.
При повному або частковому використанні коду скрипта зазначення авторства обов'язково - http://mechanicuss.livejournal.com/195192.html
Скрипт AUTOSTOP призначений для:
- відключення на комп'ютері автозапуску з усіх носіїв
- захисту флешки від autorun-вірусів
- програмної захисту флешки від запису
Кожна з трьох процедур виконується окремо за бажанням користувача.
Найбільший ефект захисту досягається при застосуванні всіх трьох функцій скрипта.
Ті, хто запитає, навіщо потрібен cкриптов AUTOSTOP, адже можна скористатися способом, описаним, наприклад тут: Захист флешки від Autorun-вірусів (метод зміни прав в NTFS) - http://habrahabr.ru/blogs/infosecurity/47287/ за великим рахунком матимуть рацію - цей спосіб зручніше і надійніше мого. Але, відповідаючи на питання, я скажу наступне:
- Існують ситуації, коли форматування флешки в NTFS небажано або неприйнятно (наприклад, конкретна модель автомагнітоли або DVD-плеєра читає тільки FAT32).
- Я хочу показати що "можна таки бити фашиста" альтернативними способами (будь-яка альтернатива це плюс).
- Я люблю логічні задачі, а робота над скриптом - це відмінна гімнастика для розуму.
- Спосіб, придуманий мною в версії 2 скрипта (з посиланням на іконку) можна взяти за основу в багатьох інших прикладних розробках.
- Є віруси типу Trojan-Downloader.Win32.VB.hkq (перше виявлення за даними virustotal 2008.08.14), які виявивши на флешці папки з файлами роблять їх прихованими і системними, а на флешку копіюють свої тіла у вигляді виконуваних файлів з іменами прихованих каталогів . Іконку для виконуваних файлів використовують у вигляді стандартної іконки папки. В цьому випадку скрипт AUTOSTOP буде корисний: зникнення іконки на каталозі AUTORUN.INF буде служити ознакою зараження.
- захист флешки від запису нових файлів відмінно підходить для завантажувальних флешок (мають файл autorun.inf), які неможливо захистити створенням однойменного каталогу AUTORUN.INF.
Відключення автозапуску НА ДОМУ
REG ADD "HKLM \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Explorer \ AutoplayHandlers \ CancelAutoplay \ Files" / v "*. *" / D "" / f
У CancelAutoplay \ Files знаходяться текстові параметри, що містять імена файлів, відшукавши які на носії вбудований AutoRun запускатися не стане і дозволить запустити носій через autorun.inf. Додаємо строковий параметр такого змісту: *. * (Всі файли).
REG ADD "HKLM \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ IniFileMapping \ Autorun.inf" / ve / d "@SYS: DoesNotExist" / f
@SYS: DoesNotExist говорить explorer'у щоб він не читав параметри запуску з файлу Autorun.inf, а читав їх з гілки реєстру HKEY_LOCAL_MACHINE \ SOFTWARE \ DoesNotExist, яка не існує. В результаті якщо зовнішній носій містить файл Autorun.inf - то при підключенні носія до комп'ютера, Autorun.inf не починається. Більш того - не запускається він і при подвійному натисканні на букві диска цього носія в провіднику.
REG ADD "HKLM \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ policies \ Explorer" / v NoDriveTypeAutoRun / t REG_DWORD / d 255 / f
За допомогою NoDriveAutoRun забороняється завантаження з певних приводів по їх буквеному позначенню, а NoDriveTypeAutoRun забороняє завантаження з певних приводів по їх типу. Оскільки нам авторан взагалі не потрібен, використовуємо друге.
REG ADD "HKLM \ SYSTEM \ CurrentControlSet \ Services \ Cdrom" / v AutoRun / t REG_DWORD / d 0 / f
Cdrom - повне відключення будь-якої підтримки автозапуску компакт-дисків (навіть ручний).
ЗАХИСТ ФЛЕШКИ ВІД AUTORUN-вірусів
На флешці створюється захищений від видалення (методом створення всередині нього підкаталогу з "некоректним" ім'ям LPT3) каталог AUTORUN.INF з атрибутом "системний", в який поміщається іконка, а у властивостях файлу desktop.ini цього каталогу прописується абсолютне посилання на іконку.
mkdir "\\? \% ~ d0 \ AUTORUN.INF \ LPT3"
mkdir "\\? \% ~ d0 \ AUTORUN.INF \ LPT3 \ .."
copy minus.ico AUTORUN.INF
echo [.ShellClassInfo]> AUTORUN.INF \ desktop.ini
echo IconFile = ".. \ AUTORUN.INF \ minus.ico" >> AUTORUN.INF \ desktop.ini
echo IconIndex = 0 >> AUTORUN.INF \ desktop.ini
echo InfoTip = "Антивірусний скрипт AUTOSTOP version 2.5" >> AUTORUN.INF \ desktop.ini
attrib + h + r + s AUTORUN.INF \ desktop.ini
attrib + h + r + s AUTORUN.INF \ minus.ico
attrib + s AUTORUN.INF
Таким чином, при перейменуванні каталогу AUTORUN.INF, або при знятті з нього атрибута "системний", іконка зникає - це служить візуальним попередженням про те, що флешка заражена.
Піктограма взята з безкоштовного набору Fugue Icons з сайту http://www.pinvoke.com
ПРОГРАМНА ЗАХИСТ ФЛЕШКИ ВІД ЗАПИСИ
Програмна захист флешки від запису здійснюється шляхом визначення вільного простору на ній, з наступним повним його заповненням. Такий метод відмінно підходить, наприклад, для захисту завантажувальних флешок (мають файл autorun.inf), які неможливо захистити створенням однойменного каталогу AUTORUN.INF.
Для створення такого файлу використовується команда:
fsutil file createnew <filename> <length>
Завантажити AUTOSTOP 2.5 - http://rghost.ru/1011124
autostop.2.5.exe, MD5: ee4ef9ee6bffe460e8c24b9bf545c235
Люстерко - ua/?d=B5FA461B9> http://filestore.com.ua/?d=B5FA461B9
ВСТАНОВЛЕННЯ: уважно прочитати пункти 1-3 файлу README.TXT.
Переписати файл autostop.2.5.exe на флешку, яку необхідно захистити (в кореневій каталог), і запустити звідти.
- Ввести 1 або 0 в залежності від того, чи хочете ви відключити автозапуск на комп'ютері, або не хочете.
- Далі ввести 2 або 0 в залежності від того, чи хочете ви захистити флешку від autorun-вірусів, чи ні.
- І в завершенні ввести 3 або 0 в залежності від того, чи хочете ви захистити флешку від запису, чи ні. Ця процедура може тривати до декількох хвилин - необхідно дочекатися її завершення не перериваючи роботу скрипта. У міру виконання проміжних її етапів, скрипт видає одинарні звукові сигнали через системний динамік комп'ютера, а по завершенні - подвійний звуковий сигнал.
- Якщо програмний захист флешки від записи (пункт 3) не проводилася, то після закінчення установки файл autostop.2.5.exe можна видалити з флешки (в разі застосування пункту 1 - захисту флешки від autorun-вірусів - копія файлу autostop.2.5.exe буде знаходитися в каталозі AUTORUN.INF).
- Якщо ж проводилася програмна захист флешки від записи (пункт 3), то ніяких файлів (включаючи autostop.2.5.exe) і каталогів видаляти з флешки можна, інакше захист перестане функціонувати.
Подяки:
Спасибі Alex577, який дав мені стимул довести вишукування до кінця, і подав ідею написання bat-файлу, Ostrich і wasapl за тестування, eugenius_nsk за тестування і багато важливих доповнень, stasik за думку викласти скрипт у вигляді окремого файлу, bodry_yar - за ідею про популяризацію, dreamhelg - за запрошення на habrahabr.ru, FloppyFormator за чудову ідею з одним індикатором замість двох, mikey_aka_711 за знайдену помилку індикації під Vista, cook з kpnemo.ru за ідею захисту флешки від запису нових файлів, Elroir і king_stiven з forum.ru-board.com за допомогу в написанні фрагмента скрипта, який здійснює захист флешки від запису нових файлів, bog і dmn13 за ідею заповнення вільного простору на флешці не одним, а кількома файлами, krasnoff - за повідомлення про помилкове спрацьовування антивіруса Касперського на версію 2.4.
.
Також дякую всім, хто брав участь і бере участь в тестуванні і обговоренні скрипта.
Історія версій скрипта AUTOSTOP:
Посилання по темі:
Способи та методи:
- Захист флешки від Autorun-вірусів - метод зміни прав в NTFS (Кращий метод для NTFS)
- Як повністю убезпечитися від autorun-нів - архів гілки форуму virusinfo.info
- Боротьба з автозапуском новими методами (by XP user aka Paul. Згадується важливість гілки реєстру MountPoints2, викладені готові REG-файли)
- Як знешкодити Internet Explorer? (by XP user aka Paul)
- Ariad (AutoRun.Inf Access Denied) - реалізований Didier Stevens принципово новий спосіб (автор попереджає: It's beta software running inside the kernel - use at your own risk): використовуючи minifilter driver в системі встановлюється однойменний сервіс ariad, який блокує доступ до \ autorun.inf на USB-флешках. Особливості: блокується доступ до \ autorun.inf, який лежить в кореневому каталозі USB-флешок і CD-ROM. Але на USB HDD доступ до \ autorun.inf не блокується. Також не блокується доступ до файлу autorun.inf, який лежить не в кореневому каталозі. Сервіс ariad має 2 режиму установки: з автоматичним запуском, і з ручним (net start ariad і net stop ariad) - рекомендую ручної, тому що у мене при тестуванні вивалювали систему в синій екран. Але метод, без сумніву, цікавий!
- How to disable autorun when double-clicking on a volume in windows explorer (by delaage.pierre, метод заснований на зміні прав гілки реєстру MountPoints2)
- Preventing Autorun Infection (метод заснований на більш жорсткому, ніж в попередньому пункті, зміні прав гілки реєстру MountPoints2)
- Люстерко цього поста в flash_pc
- Як відключити автозапуск при підключенні USB-Flash дисків? (Використовується редагування групових політик)
- Вибіркове підключення USB-флешок в Windows XP (Використовується ключ HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Enum \ USBSTOR)
- Обмеження кількості елементів кореневого каталогу в FAT (автор поста - vjunk)
- Стаття про скрипт AUTOSTOP з обговоренням на сайті habrahabr.ru
- Скасування примусового відключення автоматичного запуску в реєстрі Windows (Не вдається правильно відключити функції автозапуску відповідно до інструкцій, які були опубліковані до випуску цієї статті. У даній статті описаний процес отримання оновлень, що виправляють необхідні параметри розділів реєстру)
- Обговорення скрипта AUTOSTOP на kpnemo.ru
- гілка Захист флешки від вірусів на ru-board.com
- Дослідження в сфері автозапуску і впливу різних параметрів на нього на oszone.net, автор - volk1234.
Програми та утиліти:
- AUTOSTOP 2.5 - мій скрипт для захисту комп'ютера і флешок від autorun-вірусів. Повністю відключає на комп'ютері автозапуск. Захищає флешку шляхом створення каталогу AUTORUN.INF (містить підкаталог з "некоректним" ім'ям) і установки піктограми-індикатора на цей каталог. При зараженні флешки, індикатор зникає. Скрипт також вміє програмно переводити флешку в режим "read only" (шляхом інтелектуального заповнення всього вільного місця на флешці спеціальними файлами).
- Panda USB and AutoRun Vaccine 1.0.1.4 - хороша програма для захисту флешок від autorun-вірусів. Докладний опис тут . Починаючи з версії 1.0.0.50, програма вміє працювати і з NTFS. мною знайдена вразливість в Panda USB and AutoRun Vaccine 1.0.1.4. Будемо сподіватися, що розробник скоро усуне її (напевно хлопці з Panda Research читають мій ЖЖ).
- Модифікована версія Panda USB and AutoRun Vaccine 1.0.0.19 (зроблена __x_tra на моє прохання), яка, на відміну від оригінальної, створює прихований захищений файл autorun.inf. (Якщо посилання неробоча, повідомляйте в коментарях - перезалью). Panda USB and AutoRun Vaccine починаючи з 1.0.0.50 теж навчилася створювати саме прихований файл. Таке відчуття що хлопці з Panda черпають ідеї __x_tra з мого ЖЖ :)
- AutorunCleaner - краща програма для захисту комп'ютера від autorun-вірусів. При підключенні флешки перевіряє її на наявність файлу autorun.inf, в разі наявності - переглядає його і виводить на екран список файлів, прописаних в ньому (дуже зручно і інформативно). В налаштуваннях також можна вказати автоматичне видалення знайдених файлів, або видалення по чорному списку. Вміє захищати флешки способом, подібним попередніх версій AUTOSTOP (каталог AUTORUN.INF і знаходиться в ньому підкаталог з "некоректним" ім'ям). Програма динамічно розвивається, постійно виходять нові версії.
- Flash Guard - відмінна програма для захисту комп'ютера від autorun-вірусів. Коли вставляється новий носій, Flash Guard може здійснювати такі дії: видалити додані файлом Autorun.inf пункти контекстного меню диска, інформувати користувача про наявність на диску файлу Autorun.inf, видалити файл Autorun.inf, видалити всі файли Autorun. * (Обговорення тут )
- USB_Tool - вельми багатофункціональна програма. Вміє автоматично або в інтерактивному режимі вживати дії при виявленні на флешці файлу autorun.inf (не конфліктує з autorun.inf, створеним Пандою). Вміє захищати флешки способом, подібним попередніх версій AUTOSTOP (каталог AUTORUN.INF і знаходиться в ньому підкаталог з "некоректним" ім'ям). Вміє відновлювати безліч системних параметрів, які можуть вражати autorun-віруси (буде незайвим використовувати при відновленні системи поряд з AVZ). Вміє окремо відключати флешки, аудіо та принтери, або всі перераховані пристрої разом. На мій погляд, подібна багатофункціональність є одночасно і плюсом, і мінусом програми: перевантаженість меню елементами управління, деякі з яких викликаються за допомогою контекстного меню, а також дворівневе контекстне меню значка програми в system tray роблять роботу з програмою непростий і позбавленою оперативності. З цієї причини можу рекомендувати її досвідченим користувачам. Програма динамічно розвивається, автор регулярно випускає нові версії.
- HP USB Disk Storage Format Tool - партія визнає єдино вірну утиліту для форматування USB-носіїв.
- Flash Drive Protector - програма для захисту флешок, працює за тим же принципом, що і Panda USB and AutoRun Vaccine. Не вміє захищати флешки з NTFS, для установки захисту вимагає щоб флешка була порожньою (чистої). Огляд програми »
- USB Cop - програма для захисту комп'ютера від autorun-вірусів. Якщо на підключеної флешці немає файлу autorun.inf - вміє відкривати вікно провідника з вмістом флешки. В іншому випадку виводить на екран вміст файлу autorun.inf. Якщо autorun.inf містить фрагмент, занесений в блекліст програми (блекліст редагується руками) - наприклад resycled, svchost, .jpg.exe і тд, то крім виведення вмісту autorun.inf видається попередження про небезпеку, з пропозицією перейменувати autorun.inf.
- Відключення Autoplay за допомогою TweakUiPowertoy (by XP user aka Paul )
- Naevius USB Antivirus - платна (10 $) утиліта, яка моніторить підключаються флешки і видаляє autorun.inf, повідомляючи користувача про його вмісті. Повинна захищати флешки за допомогою створення autorun.inf з некоректним атрибутом (по аналогії з пандою) і вмістом "12345" - але на практиці дуже надовго замислюється, і в більшості випадків встигає тільки створити autorun.inf, при спробі ж виставити атрибут видає помилку, і сама ж зносить щойно створений autorun.inf, рапортуючи про те, що флешка була заражена.
- знайдена у zlava посилання на китайський скрипт для видалення вірусу, що створює на флешках каталог "runauto ..." - (див. також переклад цього китайського скрипта на англійську мову - там є чимало корисних конструкцій). На цьому скрипті грунтується розробка VirusVaccine (див. Нижче), в якій автор скрипта неввічливо іменується "невідомим китайцем". Відновлюю справедливість: автора звати Lou Zhu, aka zybaby2008 . його блог зручно читати російською через Google Translate - там є цікаві речі.
- VirusVaccine - скрипт, заснований на розробці Lou Zhu (див. Вище) для видалення деяких вірусів з системи, видалення наслідків вірусної атаки, відключення AutoRun зі знімних носіїв (Auto Play залишається), видалення шкідливих файлів autorun.inf з усіх дисків. За посиланням знаходиться версія v1.0. Доопрацьовані версії v1.1 і v1.2 викладені тут . З мінусів відзначу вузьку спрямованість скрипта на видалення тільки окремих вірусів. З плюсів - цікаву ідею зі зміною кольору папок (Blue folders).
- NoMoreAutorun - скрипт, що відключає автозапуск з усіх пристроїв крім CD \ DVD (за допомогою параметра NoDriveTypeAutoRun) і встановлює 2 поновлення KB967715 (KB950582), KB971029. Захищає флешки за допомогою створення каталогу AUTORUN.INF, що містить підкаталог з забороненим ім'ям. Автор - volk1234.
- DiskCont - програма для захисту комп'ютера від шкідливих програм, що розповсюджуються через змінні диски (безкоштовна, але після закінчення терміну ознайомлення, варьируемого автором, частина функціональних можливостей стане недоступна).
- FlashControl - програма для видалення вірусів і шкідливих програм, які впроваджуються в автозапуск дисків і використовують файл "autorun.inf"
- Anti-autorun 2.0 від Bombina Soft (видаляє autorun. * з усіх носіїв, Вам не доведеться видаляти хороші файли, показує, де і скільки у вас файлів autorun. *)
- Flash_Disinfector (Створена автором відомої програми ComboFix ), Яка дозволяє позбутися від більшості autorun.inf троянів і захистити ваші диски від воможность зараження - (опис програми тут )
- Зірке око - програма для запобігання зараження комп'ютера autorun-вірусами (PS: пробував версію 5.102 - абсолютно не сподобалася)
- Ninja Pendisk - програма для захисту комп'ютера від autorun-вірусів. При підключенні флешки перевірятиMkdir "\\?
Ua/?