обработчик втыкания USB flash

Тема в разделе "WASM.WIN32", создана пользователем int_13h, 23 мар 2009.

  1. int_13h

    int_13h New Member

    Публикаций:
    0
    Регистрация:
    15 дек 2008
    Сообщения:
    163
    Адрес:
    Красноряск
    задача - при вставке флешки или сменного ЖД должна отработать моя прога которая очистит флешку от всяких autorun.inf'ных "недо-вирусов" так вот есть ли официально документированный путь перехватить втыкание флешки?
     
  2. Partner

    Partner Павел

    Публикаций:
    0
    Регистрация:
    28 фев 2008
    Сообщения:
    917
    Адрес:
    Los Angeles
    WM_DEVICECHANGE
    DBT_DEVICEARRIVAL
     
  3. int_13h

    int_13h New Member

    Публикаций:
    0
    Регистрация:
    15 дек 2008
    Сообщения:
    163
    Адрес:
    Красноряск
    Partner
    данке =)
     
  4. transserg

    transserg New Member

    Публикаций:
    0
    Регистрация:
    24 мар 2009
    Сообщения:
    17
    вот держи =) писал для себя есть один косяк но не существенный =) быкидывает ощибку (Windows) что нет диска в дисковводе! но не везде!!!
    написанно на Delphi
    P.S за код не пиннать=)
     
  5. Hellspawn

    Hellspawn New Member

    Публикаций:
    0
    Регистрация:
    4 фев 2006
    Сообщения:
    310
    Адрес:
    Москва
    transserg

    может SetErrorMode() поможет?
     
  6. transserg

    transserg New Member

    Публикаций:
    0
    Регистрация:
    24 мар 2009
    Сообщения:
    17
    Hellspawn возможно спасибо за совет.
     
  7. int_13h

    int_13h New Member

    Публикаций:
    0
    Регистрация:
    15 дек 2008
    Сообщения:
    163
    Адрес:
    Красноряск
    так а запуск екзешника по авторану как понял можно отследить только если CreateProcess перехватить из explorer.exe?
    [+] нужно чтоб вообщем даже если NoDriveTypeAutorun!=0FFFFFFFFh всёравно ничего с флешек не запускалось
     
  8. transserg

    transserg New Member

    Публикаций:
    0
    Регистрация:
    24 мар 2009
    Сообщения:
    17
    int_13h если не ошибаюсь то можно выключить! либо пользоваться моим примером (глюк исправил нужен? могу выложить) либо не кликать по иконке флешки в проводнике а пользоваться другими файл менеджерами типа фара или тотола! еси ты опосаещься за свою флешку то вот еще совет форматируй ее в NTFS создавай пустой AUTORUN.INF и ставь на него права ВСЕМ запрет на запись и удаление если вирь черьвь и.т.д скопируется на феш то не запустится так как ауторан неизменит! если сам не пользуешься автозапуском то можно мои пример переделать чтоб удалял без суда и следствия все что пытается запуститься!
     
  9. int_13h

    int_13h New Member

    Публикаций:
    0
    Регистрация:
    15 дек 2008
    Сообщения:
    163
    Адрес:
    Красноряск
    transserg да, скинь если не трудно - гляну, флехи с НТФС глючно работают, но давно так сделал со своим USB винтом никакая дрянь действительно не лезет, правда до поры пока сами права не начнут менять :dntknw: просто надо отловить что и откуда запускается и отправить это по почте если сигнатуры этого в проге нет, просто разбираться "вручную" с возможно обфусцированными ауторанами, т. е. писать нормальный парсер желания нет к тому же надо обрезать любую возможность автозапуска (прога будет стоять у секретарш как тут один товарищ выразился "с колбой вместо мозгов")
     
  10. transserg

    transserg New Member

    Публикаций:
    0
    Регистрация:
    24 мар 2009
    Сообщения:
    17
    int_13h вот держи! переделал получение буквы диска и удаление AUTORUN и запускаемых файлов через поток тоесть вставил флешку запустился поток на ее очистку вставил вторую запустился второй так быстрее работает=)
    вот еще посмотри должно полностью отключить автозапуск со всех носителей

    Код (Text):
    1. Windows Registry Editor Version 5.00
    2.  
    3. [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer]
    4. "NoDriveTypeAutoRun"=dword:000000ff
    5.  
    6. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Cdrom]
    7. "AutoRun"=dword:00000000
    p.s Вчера припер с универа червя Kido вот так это чудо =) точнее его ауторан больше был похож на бинарник чем на текстовый файл и его просто так не обработаеш есть идея, если неудается прочитать AUTORUN то удалять его и проверять если есть на диске папка RECYCLER то ее тоже без заговорочно выносить +) но это пока идея еще не реализованна!
     
  11. test555

    test555 New Member

    Публикаций:
    0
    Регистрация:
    7 дек 2007
    Сообщения:
    241
    Народ, а как можно отловить момент втыкания флеша в безоконном приложении?

    (интересовался подобной задачей для отлова завершения работы http://www.wasm.ru/forum/viewtopic.php?pid=301275#p301275 )
    Но решения найдено не было (ну только что драйвер)

    Есть вариант проверять список дисков по таймеру, но это нежелательно, т.к. и криво и демаскировка...
     
  12. Partner

    Partner Павел

    Публикаций:
    0
    Регистрация:
    28 фев 2008
    Сообщения:
    917
    Адрес:
    Los Angeles
    test555
    А создать невидимое окно не вариант?