Авторские статьи Защищаем Flash-Drive (а так же USB-HDD) от заразы.

Discussion in 'Статьи' started by -=lebed=-, 26 Oct 2007.

  1. -=lebed=-

    -=lebed=- хэшкрякер

    Joined:
    21 Jun 2006
    Messages:
    3,804
    Likes Received:
    1,960
    Reputations:
    594
    Защищаем Flash-Drive (а так же USB-HDD) от заразы.

    [INTRO]
    Наверно каждый, имеющий сменный носитель - флешку, обнаруживал на ней вредоносные программы, прописанные в autorun.inf на запуск. Да что уж говорить, если купив абсолютно новый MP3-плеер, малоизвестной фирмы я обнаружил на нём виря, а ссылка на загрузку его была в файле autorun.inf. Учитывая тот момент, что я пользуюсь Portable Soft'ом на флехе и использую ещё удобное меню на основе PStart.exe, т.е. я имею уже настроенный autorun.inf на запуск этого меню мне порядком надоело, что я получаю на своей флехе после вставки флешки в чужой комп виря и отредактенный autorun.inf на его запуск. Вообщем я стал думать как защитить от заразы свою флеху.

    [Ищем способы защиты]

    1. Использовать переключатель Read-Only, т.е. попросту аппаратно, переключателем запретить производить запись на флешку и сделать её только читаемой. Этот способ имеет следующие недостатки: ну во-первых не на всех флешках есть такой переключатель (на моей не оказалось), ну а во вторых это очень не удобно: мне приходится по работе бегать по разным компам и активировать на них ПО, а всю инфу об активации (серийники, коды и т.д) я храню в файле на флешке и постоянно редактирую его, т.е. права на запись мне нужны на флешку. В итоге этот способ мне совсем не подходит.
    2. Использовать шифрование. Способ требует наличия спец софта на компе клиента, который на лету шифрует/дешефрует файлы, что мне тоже неудобно. Использовать шифрование на уровне системы XP ? В этом случае я не уверен что поможет от виря, так как он сам может пользоваться системными функциями...
    3. Использование другой файловой системы.
    И тут я вспомнил про NTFS и тут же полез смотреть какая файловая система у меня на флешке. Конечно оказалась FAT. Тут же мне интуиция подсказала надо пробовать пересесть на NTFS, потому как там больше атрибутов и можно задать права на используемые файлы. Ясное дело что в первую очередь это autorun.inf. Т.е. если вирь не будет иметь прав на запись/редактирование/перезапись/удаление этого файла, то мы решим проблему: не дадим заразить нашу флешку с помощью механизма заражения через autorun.inf (хотя вирю пока никто не мешает сканить весь флеш-драйв на предмет исполняемых файлов и пробовать заражать их дописывая своё тело к файлу-жертве, но об этом позже.)


    [Немного теории файловых системах]
    Для хранения файлов всё доступное для них пространство разбивается на кластеры. Таблица размещения файлов содержит ячейки, каждая из которых указывает на определенный кластер на жестком диске.
    1.FAT 12
    Применялась в пору DOS 1.0 на древних HDD и дискетах - не рассматриваем.
    2.FAT 16
    Максимальный размер раздела - 2 гигабайта (Что подходит для моей флешки - она 2 Гига, она ранее и была установлена). При размере раздела свыше 512 мегабайт неэкономно расходует место на диске (из-за большого размера кластера). Распознается и может использоваться практически всеми операционными системами, используемыми на ПК, имеет корневой каталог фиксированного размера (512 записей).
    3.FAT 32
    Работает чуть медленнее, чем FAT 16, но в большинстве случаев разница в скорости незаметна. Позволяет создавать разделы размером до двух терабайт. Диски почти любого размера может разбить на кластеры размером 4 КБ, уменьшая тем самым бесполезную трату места на диске. Кроме того есть ограничение на размер файла - он не может быть больше 4 гб. (Целиком образ DVD не запишешь).
    4.NTFS
    Была специально разработана для Windows NT-систем. В NTFS значительно расширены возможности по управлению доступом к отдельным файлам и каталогам введено большое число атрибутов, реализована отказоустойчивость. В NTFS версии 5.0 были добавлены дополнительные атрибуты файлов, наряду с правом доступа введено понятие запрета доступа, позволяющее, например, при наследовании пользователем прав группы на какой-нибудь файл, запретить ему возможность изменять его содержимое. Как раз то, что доктор прописал!

    [Ставим NTFS на флешку]
    1. Подготовка
    Для начала посмотрим свойства флэшки и замерим размер файлов а так же размер места занимаемого ими на диске.
    Вот что у меня получилось:
    Налицо ощутимая потеря ёмкости 52 Мб, скорее всего из-за того что используется большой размер кластера, проверим какой. Кидаем на флешку файл размером менее 512 байт (или находим маленький из уже имеющихся на флешке) смотрим его свойства, и видим что на диске он занимает аж 32Кб. т.е таким образом мы выяснили, что размер кластера равен 32Кб., что при размере флешки 2 Гб. является слишком расточительным и при наличии большого колличества файлов размером менее 32 Кб. потери пространства могут оказаться ощутимыми. Что и имеет место быть в моём случае.
    Теперь обязательно скопируйте себе на жёсткий диск всё содержимое флешки.
    2. Форматируем.
    Если вы уже имеете на борту компа специализированный софт для работы с разделами, ну напрмер Partition Magic, то можете конвертнуть флешку в NTFS на свой страх и риск с помощью его.
    Я поступлю немного иначе: Отформатирую флешку в NTFS средствами самой системы.
    Стандартный предлагаемый размер кластера на объём 1-2 Гб - 4Кб. Оптимален ли он будет для моей флешки? Форматируем. Смотрим что получилось:
    Сразу возникает вопрос чем? Самой файловой системой NTFS - это плата за использование.
    Теперь копируем файлы обратно на флешку, получаем:
    Налицо выйгрыш свободного места в 14 Мб. NTFS (4Kб) vs FAT16 (32Кб.- такой размер кластера, кстати при форматировании стандартной утилитой, которая идёт в комплекте к флэшке).
    Кластер у нас действительно получился 4Кб, что я считаю много для флешки размером 2 Гб.
    Переформатируем в NTFS ещё раз с минимальным размером кластера в 512 Байт и посмотрим свойства получившегося диска (раздела).
    Т.е. в итоге мы потеряли ещё около 400Кб, Что не очень много, но дисковое пространство будет расходоваться более экономно в случае большого колличества файлов маленького размера.
    Теперь снова копируем всё содержимое обратно на флешку. Смотрим что получилось:
    Если сравнивать с изначальной FAT16 с кластером в 32Кб. которую нам предлагает производитель мы получили сумарный выйгрыш в почти в 18 Мб, несмотря на то что перешли на более прожорливую NTFS. Т.е. потери ёмкости флешки при переходе с FAT16 на NTFS окупились уменьшением кластера с 32Кб. до 512байт.
    Это исследование было проведено специально для скептиков, которые по тем или иным причинам не хотят ставить NTFS на флешку.

    [Защищаем файл autorun.inf]
    Обычно он имеет вид:
    Code:
    [autorun] 
    Open = may_file.exe - ссылка на запуск нужного мне файла
    Icon = autorun.ico
    
    Я хочу сделать так чтоб он таким и оставался и изменить его мог только я, как владелец данного файла. Смотрим его свойства->Безопасность и видим, что стоит Полный доступ для группы Все, а именно, если капнуть глубже (Жмякнем пимпу "Дополнительно") разрешение "Полный доступ" унаследовано от самого корня диска. Жмякаем изменить, снимаем галку наследования. Далее Изменяем разрешения - ставим галки в столбце запретить на:
    1. Создание файлов/запись данных
    2. Создание папок/дозапись данных
    3. Запись атрибутов
    4. Запись дополнительных атрибутов
    5. Удаление
    6. Смена разрешений
    7. Смена владельца
    Таким образом у нас появился элемен разрешения "Запретить" что имеет более высокий приоритет над элементом "Разрешить"
    ...................................

    [Испытания]
    Сегодня вторник и мне "посчастливилось" испытать мою флеху в бою. На третьем компьютере, после установки драйвера PDF-принтера и просмотрщика PDF, я обнаружил, что комп не хочет отдавать мне флешку ("вы не можете извлечь безопасно устройство, так как оно используется в данный момент"), хотя все файлы с флехи были закрыты, включая корневой каталог. Сразу у меня мелькнула мысль - на компе вирус. И действительно, запустив портабл процессэксплорер, я увидел знакомый процесс трояна tel.xls.exe, который был запущен из папки system32 и являлся ранее известным мне Trojan.Win32.VB.atg. Я убил процесс виря и открыл на просмотр autorun.inf - он остался прежним! Закрыл файл, нашёл файл виря, удалил его из папки и из автозапуска. Спокойно извлёк флешку и пошёл дописывать статью...
    [Заключение]
    Я думаю, учитывая всё выше изложенное, можно экспериментировать и ставить на флешку NTFS 5.0, выставлять права на файл autorun.inf и смело пользоваться флехой на заражённых компах - вирь не пролезет (по крайней мере способом прописывания в autorun.inf). Для защиты остальных файлов на флехе и корневого каталога можно также выставить необходимые права на файлы и папки, защитив их таким образом от изменения/удаления/перезаписи. По мере эксплуатации свой флехи, статья может быть дополнена. На своём примере я убедился, что способ работает, кроме того я ещё получил дополнительное свободное место на флешке, передя с FAT16 на NTFS.

    (c) -=lebed=- спец. для Античат

    ссылки на используемый материал:
    http://remont-hdd.by.ru/fat.shtm
    http://yura.projektas.lt/archiv/per/fsinf.html
     
    #1 -=lebed=-, 26 Oct 2007
    Last edited: 22 Jan 2008
    13 people like this.
  2. EST a1ien

    EST a1ien Elder - Старейшина

    Joined:
    2 Apr 2006
    Messages:
    249
    Likes Received:
    48
    Reputations:
    16
    Один минус нельзя нормально работать из линуха если на нем нету софта для работы с Ntfs
     
  3. -=lebed=-

    -=lebed=- хэшкрякер

    Joined:
    21 Jun 2006
    Messages:
    3,804
    Likes Received:
    1,960
    Reputations:
    594
    Согласен, но Линукс у нас на работе - это далёкая экзотика. (Есть тока у меня на виртуалке). :D
     
  4. DisturbeR

    DisturbeR Elder - Старейшина

    Joined:
    11 Mar 2006
    Messages:
    95
    Likes Received:
    40
    Reputations:
    25
    Софт ставиться в 2 секунды (ntfs-3g запись в NTFS). В новых дистрибутивах (ubuntu 7.10 например) запись на NTFS из коробки.
     
  5. $aSH

    $aSH New Member

    Joined:
    15 May 2006
    Messages:
    9
    Likes Received:
    3
    Reputations:
    0
    у меня на работе такой заразы полно =\ постоянно боремся
    но способ не подходит. ибо есть 98.
     
  6. Spyder

    Spyder Elder - Старейшина

    Joined:
    9 Oct 2006
    Messages:
    1,388
    Likes Received:
    1,209
    Reputations:
    475
    ставишь ntfs-3g и всё нормально пишется)
     
  7. igorf()x

    igorf()x Elder - Старейшина

    Joined:
    17 Oct 2007
    Messages:
    138
    Likes Received:
    53
    Reputations:
    5
    ... можно дописать?

    Что бы появилась возможность отформатировать flash в Ntfs , нужно в Диспетчере устройств -- Дисковые устройства -- в свойствах - политика - ВКЛЮЧИТЬ "Оптимизировать для выполнения" точнее разрешить кеширование записи. И также flash при изьятии из компа обязательно "отключить програмно", так как возможны потери только записанных данных ...
     
  8. -=[AL!EN]=-

    -=[AL!EN]=- Elder - Старейшина

    Joined:
    29 Aug 2007
    Messages:
    24
    Likes Received:
    15
    Reputations:
    0
    Наверное ты забыл дописать один оч большой (имхо) минус FAT32: файлы только <=4Gb, что даже хдтврип не запишешь =\
     
    1 person likes this.
  9. -=lebed=-

    -=lebed=- хэшкрякер

    Joined:
    21 Jun 2006
    Messages:
    3,804
    Likes Received:
    1,960
    Reputations:
    594
    Вообщем сегодня попробовал - способ сработал, файл autorun.inf остался неизменным. Отписывайтесь, кто тоже перешёл на NTFS на флешке.
     
    1 person likes this.
  10. ground_zero

    ground_zero Elder - Старейшина

    Joined:
    11 Oct 2006
    Messages:
    398
    Likes Received:
    85
    Reputations:
    5
    -=lebed=- статья хорошая ! а вот если например у меня на флешке файловая система другая ? ext 3 или RFS тогда к какому врачу обратитса ?
    А на никсах тоже есть такой механизм автозапуска при вставке?
    P.S. я правда не знаю...
    -=lebed=-
     
    #10 ground_zero, 2 Jan 2008
    Last edited by a moderator: 2 Jan 2008
  11. KEZ

    KEZ Ненасытный школьник

    Joined:
    18 May 2005
    Messages:
    1,604
    Likes Received:
    754
    Reputations:
    397
    Помню авторан.инф меня заебал как-то на флешке...
     
    1 person likes this.
  12. -=lebed=-

    -=lebed=- хэшкрякер

    Joined:
    21 Jun 2006
    Messages:
    3,804
    Likes Received:
    1,960
    Reputations:
    594
    Мля, один раз флеху видел полный писец... В корне диска, куча всякой живности... (10-12 видов всякой заразы). Некоторые вири чтоб закрепиться на флехе искорявали свои имена, так что с ними нельзя ничего сделать средствами системы. Часть спряталась в корзину, вообщем все способы выживания были на лицо, ну а сколько там перезаписывался autorun.inf я промолчу... (были старые autorun, c другими расширениями).

    Вообщем за всё время эксплуатации флэшки, у меня один раз вышел прокол - файл после использования на чужом компе оказался перезаписан. (не помню точно какой это был вирь, да и не совсем уверен что правильно тогда выставил права на файл).
    В остальных случаях зараза лезла (записывалась на флеху) но ссыль на её запуск через autorun.inf оставалась прежней - запуск моего PStart.exe - меню для портабл-софта.

    ЗЫ Как недостаток, кстате теперь у вирей появилась возможность прятаться в потоках, раз на флехе NTFS, но антивири не дремлют, они и в потоках обнаружат заразу...

    Интересно было рассмотреть хоть какой-то способ защиты флэхи, когда она вставлена в заражённый комп, средствами самой флехи... как я убедился способ работает, хотя и имеет свои недостатки...
     
    #12 -=lebed=-, 2 Jan 2008
    Last edited: 2 Jan 2008
    2 people like this.
  13. Midas

    Midas Elder - Старейшина

    Joined:
    17 Jan 2008
    Messages:
    241
    Likes Received:
    45
    Reputations:
    1
    Раз уэ хочется NTFS на флехе, то делается это моментально:

    convert <буква_диска> /fs:ntfs /v /x

    и никаких форматирований и партишн мэджиков.

    Данная команда работает не только с флэшками, но и с логическими разделами HDD
     
    4 people like this.
  14. execom

    execom Elder - Старейшина

    Joined:
    5 Jun 2007
    Messages:
    46
    Likes Received:
    71
    Reputations:
    18
    Хорошая статья респектоЗЗЗ афтару.. Лично я предлагаю немного другое решение проблемы.. Кидаем в авторан прогу которая сидит в памяти (очень мало жрёт) и через каждую секунду проверяет наличие флешки в компе и если есть то удаляет на ней файл autorun.inf... Т.о. если вставит заражённую флеху то червяк не будет забущен ибо авторан инф удалится в течении секунды после вставки флэхи... Вот мой способ...

    А вот его реализация: virusoff.pisem.su/USBCLEAR.RAR в архиве лежит исходник проги и уже готовый ехе.. Просто кидаем этот exe-файл в автозагрузку и на всегда забываем про usb-червей... Кстати прога весит совсем не много - 1641 байт - написана на делфи 7.
     
  15. LynXzp

    LynXzp Elder - Старейшина

    Joined:
    21 Oct 2007
    Messages:
    147
    Likes Received:
    22
    Reputations:
    0
    Хорошая статья.
    Но.. он удаляется.. ничего не могу сделать.. уже все и всем запрещаю - ничего не дает сделать кроме удаления.
    =======================
    Нашел - если поставить галочку "только для чтения" (перед назначением прав) то его и удалить нельзя будет.
     
  16. -=lebed=-

    -=lebed=- хэшкрякер

    Joined:
    21 Jun 2006
    Messages:
    3,804
    Likes Received:
    1,960
    Reputations:
    594
    Этот способ не решит проблему распространения usb-червя, так как прога должна работать на компе до вставки флехи в него, т.е. другие компы, кроме своего (где уже работает прога) заразить червю удастся...
     
    2 people like this.
  17. JayKa

    JayKa New Member

    Joined:
    19 Jan 2008
    Messages:
    22
    Likes Received:
    0
    Reputations:
    0
    У меня в свойствах autorun.inf нету вкладки безопасность (
     
  18. KIR@PRO

    KIR@PRO from Exception

    Joined:
    26 Dec 2007
    Messages:
    826
    Likes Received:
    291
    Reputations:
    359
    JayKa заходишь в проводнике в Сервис -> Cвойства папки -> Вид
    убераешь гаочку Использовать простой и общий доступ к файлам и вот у тебя появится вкладка безопасность... ;)
     
    _________________________
  19. mmvds

    mmvds Member

    Joined:
    28 Apr 2008
    Messages:
    5
    Likes Received:
    9
    Reputations:
    0
    С плеером не прокатило :(
    Ntfs не видит :(
    Хотя может мой только.
     
  20. wizzz

    wizzz New Member

    Joined:
    19 Nov 2008
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    Пуск –> Выполнить… –> Запуск программы –> cmd –> OK –> convert <буква_флешки>: /fs:ntfs /nosecurity /x