Hacking

Как защититься от вредоносной флешки

При желании вскрыть чужую сеть хакер может воспользоваться различными высокотехнологическими способами или же подбросить USB-накопитель с «подарком» сотрудникам компании, интересующей хакера. С каждым годом этот метод становится все менее популярным, но он все еще проникает в производственные сети промышленных компаний.  Вот сейчас мы и узнаем как защититься от вредоносной флешки. В данной публикации вы так же найдете информацию о том, как работает защита USB-устройст и как обмануть системы белых списков с помощью создания клонов.

Блокировкафлешки

В чем смысл их блокировки? Это необходимо для того, чтобы исключить возможность проникновения вируса-шифровальщика внутрь IT-инфраструктуры компании, что бы никто не таскал информацию домой и не приносил игрушки в офис. По-разному в разных офисах работают сотрудники охраны и администраторы. Самые плохие случаи – это когда порты закрыты (закрыты частично или полностью), а также залиты эпоксидной смолой или опломбированы. В более простых случаях порты отключаются BIOS / UEFi (что-то вроде USB Controller = Disabled).    

Если администратор не хочет ломать что-то, он может настроить реестр и групповые политики Windows. Например, для того чтобы полностью заблокировать USB-накопитьель, откройте данную ветку реестра:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR

В случае установки параметра запуска на 4, ваши флешки перестанут работать. В группе политики (gpedit.msc), вы смотрите в сторону оснастки «Кон­фигура­ции компь­юте­ра → Адми­нис­тра­тив­ные шаб­лоны → Сис­тема → Дос­туп к съем­ным запоми­нающим устрой­ствам».

На винде есть политика, связанная с съемными носителями

В каких еще вариантах можно ограничить нежелательное подключение мультимедиа на ваш компьютер? Некоторые компании используют дополнительные средства защиты информации ( SIS) — тот же KAV или DLP-системы, Secret Net ( SIS от nsd) и другие. А кто-то и вовсе ставит на компьютер специальный драйвер для проверки носителя из белого списков.

Нас­трой­ки СЗИ могут зап­ретить под­клю­чение вооб­ще всех устрой­ств, толь­ко устрой­ств из чер­ного спис­ка или раз­решить под­клю­чение девай­сов из белого спис­ка. На пос­леднем вари­анте мы с тобой и оста­новим­ся попод­робнее.

Как их различать?

Чем отличаются одна от другой флэш­ки? Конечно, у флешек есть производитель, объем и другие параметры… Но обычно производители снабжают каждую флешку серийным номером, который был прописан в ее прошивке.

Что­бы пос­мотреть его в вин­де, можешь исполь­зовать такую коман­ду Windows Management Instrumentation — WMIC (пред­варитель­но под­клю­чив флеш­ку):

wmic path win32_usbhub Where (Caption="Запоминающее устройство для USB") get DeviceID

По­луча­ем при­мер­но такой вывод коман­ды:

DeviceID

USB\VID_13FE&PID_4200\070867948D560839

По­лучен­ный DeviceID содер­жит:

  • VID — Vendor ID, иден­тифика­тор про­изво­дите­ля. 13FE Kingston Technology Company Inc.;
  • PID — Product ID, иден­тифика­тор изде­лия. 4200Platinum USB drive mini;
  • Serial — уни­каль­ный серий­ный номер флеш­ки 070867948D560839.

VID и PID исполь­зуют­ся опе­раци­онкой для поис­ка дров. Пол­ный спи­сок мож­но пос­мотреть, нап­ример, на сай­те Linux USB.

По DeviceID флеш­ка про­писы­вает­ся в реес­тре:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\VID_13FE&PID_4200\070867948D560839

Так­же ты можешь получить всю эту информа­цию с помощью прог­раммы USBDeview.

Вывод прог­раммы USBDeview

Однако нередки случаи, когда в качестве идентификатора флешки используется серийный номер тома, который можно получить командой vol или dir.В некоторых случаях в качестве идентификатора флешки используется серия номеров тома, которая может быть получена командой vol или dir.

Команды vol и dir

Почему не стоит использовать VSN (в Linux — UUID) для идентификации флешек? Это связано с тем, что они определяют логические тома файловой системы. Чтобы изменить VSN в случайном порядке, вам необходимо отформатировать раздел. Конечно, это не так часто происходит и для винчестеров эта процедура достаточно редка, но флешки форматируются довольно часто.

Что делать с ноунеймом

Для китай­ских noname-фле­шек, про­изво­дите­ли которых «кла­дут» на соот­ветс­твие девай­са все­воз­можным рекомен­даци­ям и стан­дартам, такой серий­ник будет менять­ся в зависи­мос­ти от USB-пор­та, в который ты под­клю­чил устрой­ство, и, разуме­ется, положе­ния звезд на небе. Если твою флеш­ку безопас­ники про­пишут в белый спи­сок толь­ко на одном пор­те, то на дру­гом ты ее исполь­зовать не смо­жешь.

Вот при­мер такой флеш­ки:

DeviceID=USB\VID_23A9&PID_EF18\6&45CEA456&0&2

Пер­вое, что бро­сает­ся в гла­за, — серий­ник содер­жит нес­коль­ко амперсан­дов. На самом деле у этой флеш­ки нет серий­ника вооб­ще. Ког­да & — вто­рой сим­вол серий­ного номера, это озна­чает, что сис­тема каж­дый раз при под­клю­чении генери­рует псев­досерий­ник сама, то есть он динами­чес­кий. Про­верим это, прос­то под­клю­чив флеш­ку в дру­гой порт:

DeviceID USB\VID_23A9&PID_EF18\6&45CEA456&0&1

Как ты видишь, при изме­нении пор­та в серий­нике меня­ется номер это­го пор­та (&2 в кон­це прев­ратилось в &1). Так что нуж­но или добав­лять в спи­сок номер такой флеш­ки на всех пор­тах, или исполь­зовать толь­ко выделен­ный порт для ее под­клю­чения.

В некото­рых СЗИ исполь­зуют иные свой­ства фле­шек. Все дос­тупные свой­ства ты можешь прос­мотреть, щел­кнув на знач­ке флеш­ки пра­вой кла­вишей мыши и выб­рав в кон­текс­тном меню «Свой­ства → Обо­рудо­вание → Све­дения». В выпада­ющем спис­ке наибо­лее полез­ные све­дения содер­жатся в стро­ках «Понят­ное имя», «Путь к экзем­пля­ру устрой­ства» и «Родитель» (тот же DeviceID).

Свой­ства устрой­ства → Путь к экзем­пля­ру устрой­ства

У китай­ских фле­шек эти парамет­ры меня­ются, как генера­тор слу­чай­ных чисел. Нап­ример, путь к экзем­пля­ру устрой­ства для пер­вого и вто­рого USB-пор­та выг­лядит так:

USBSTOR\DISK&VEN_AI&PROD_MASS_STORAGE&REV_\7&6266D645&0
USBSTOR\DISK&VEN_AI&PROD_MASS_STORAGE&REV_\7&977ABD2&0

Для нор­маль­ной флеш­ки здо­рово­го челове­ка дан­ный иден­тифика­тор ста­билен:

USBSTOR\DISK&VEN_JETFLASH&PROD_TRANSCEND_8GB&REV_1100\BBPIX7EB2VMBFI48&0

Здесь:

  • JETFLASH — про­изво­дитель;
  • TRANSCEND_8GB — наз­вание устрой­ства;
  • 1100 — номер ревизии;
  • BBPIX7EB2VMBFI48 — серий­ный номер.

У раз­ных фле­шек из одной пар­тии менять­ся будет толь­ко серий­ник.

Как палят?

Да­вай пос­мотрим, какими спо­соба­ми адми­ны могут выявить, что к сис­теме под­клю­чили флеш­ку. В Windows име­ется целый пул средств для отсле­жива­ния под­клю­чаемых носите­лей. Если хочешь поковы­рять­ся сам — смот­ри вот эти две вет­ки реес­тра:

HKLM\SYSTEM\CurrentControlSet\Enum\USB

HKLM\SYSTEM\CurrentControlSet\Enum\USBSTOR

Там хра­нит­ся спи­сок иден­тифика­торов под­клю­чаемых устрой­ств, при этом информа­ция в этих вет­вях реес­тра не затира­ется стан­дар­тны­ми про­цеду­рами в пла­ниров­щике задач вин­ды, то есть дан­ные хра­нят­ся сколь угод­но дол­го.

Ес­ли ты пред­почита­ешь готовые решения, то к тво­им услу­гам клас­сичес­кий USBLogView, который в реаль­ном вре­мени регис­три­рует под­клю­чение и отклю­чение флеш­ки. В форен­зике для ком­плексно­го ана­лиза под­клю­чений рекомен­дуем пос­мотреть в сто­рону USB Detective и USB Forensic Tracker.

USB Detective извле­кает информа­цию из реес­тра, логов, иных источни­ков, а так­же может сни­мать информа­цию с Live-сис­темы (в вер­сии Pro), при этом выпол­няя кор­реляцию и верифи­кацию дан­ных.

USB Forensic Tracker извле­кает все арте­фак­ты под­клю­чений незави­симо, поэто­му для каж­дого источни­ка дан­ных ты име­ешь свою таб­лицу под­клю­чений USB-устрой­ств (кор­реляции, к сожале­нию, он не дела­ет).

При­мер вывода прог­раммы USB Forensic Tracker

Нап­ример, прос­матри­вая дан­ные по нашей китай­ской флеш­ке, мы выяс­нили, что ее отоб­ража­емый серий­ник на пер­вом пор­те — 388e987, на вто­ром — 3с69e2с9. Пос­ле фор­матиро­вания они ста­ли 4247e754 и 966cde2 соот­ветс­твен­но.

Во внеш­них СЗИ име­ются фун­кции прос­мотра и бло­киро­вания под­клю­чен­ных фле­шек в реаль­ном вре­мени или на осно­ве ранее под­клю­чен­ных устрой­ств.

Практический подход к сбитию параметров флешек

Часть 1. VSN (UUID)

Ес­ли тебе повез­ло и в тво­ей орга­низа­ции бло­киру­ют флеш­ки через VSN/UUID, то сущес­тву­ет мас­са год­ных вари­антов. Все пред­став­ленные ниже кей­сы не изме­няют основные парамет­ры флеш­ки, такие как серий­ный номер и информа­ция о модели. Одна­ко пом­ни, что иног­да VSN при­меня­ется при лицен­зирова­нии ПО и изме­нение VSN может пов­лиять на его работос­пособ­ность. Зато, научив­шись менять VSN, ты смо­жешь давать вто­рую жизнь лицен­зион­ным про­гам, которые жалу­ются на сме­ну жес­тких дис­ков и не хотят работать.

Ма­нипу­ляции пред­став­лены для демонс­тра­ции. При­меняя их, будь осто­рожен и вни­мате­лен, пос­коль­ку при некор­рек­тном под­боре команд, прог­рамм, про­шивок ты рис­куешь окир­пичить флеш­ку, за что мы, конеч­но, ответс­твен­ности не несем. Не сто­ит упо­минать, что на тес­тиру­емых флеш­ках не сле­дует дер­жать цен­ную инфу.

Вариант 1. Форматирование

Дан­ный вари­ант исполь­зует­ся, ког­да акти­вен толь­ко чер­ный спи­сок фле­шек, пос­коль­ку фор­матиро­вание меня­ет иден­тифика­тор раз­дела. Одна­ко задать кон­крет­ный иден­тифика­тор в дан­ном слу­чае не получит­ся.

Нап­ример, флеш­ка с FAT32 до фор­матиро­вания име­ет VSN 4652-F858, а пос­ле быс­тро­го фор­матиро­вания — 76DA-6C78. Для NTFS ситу­ация в целом ана­логич­на.

Как ты видишь, вари­ант пре­дель­но прос­той, но совер­шенно некон­тро­лиру­емый. Это нам как‑то не очень под­ходит, поп­робу­ем менять парамет­ры на избран­ные нами зна­чения.

Вариант 2. Смена VSN через утилиты

Су­щес­тву­ют готовые ути­литы для сме­ны VSN, нап­ример VolumeID от ком­пании Sysinternals или более при­ятная на вид гра­фичес­кая ути­лита Volume Serial Number Changer. Во вто­ром слу­чае нуж­но прос­то запус­тить ути­литу, выб­рать мет­ку дис­ка, вбить новый иден­тифика­тор, нажать Change Serial number, вынуть‑вста­вить флеш­ку, и все готово.

Ра­бота с ути­литой Volume Serial Number Changer и ее резуль­тат

Вариант 3. Сделай сам

Ты хочешь пол­ностью поз­нать дзен фле­шек? Не воп­рос. Пред­варитель­но опре­делись с фай­ловой сис­темой. Открой любой HEX-редак­тор и перета­щи туда зна­чок флеш­ки из про­вод­ника. Для FAT32 VSN находит­ся по сме­щению 0x43, для NTFS — на 0x48.

Про­верим это.

Ис­ходный VSN устрой­ства с фай­ловой сис­темой NTFS

На­шел­ся серий­ник 6666-6666. Что ж, испра­вим его и сох­раним резуль­тат. Пом­ни, что порядок чте­ния бай­тов — спра­ва налево (little endian).

Из­менен­ный VSN устрой­ства с фай­ловой сис­темой NTFS

Для FAT32 ситу­ация пол­ностью ана­логич­на.

Из­менен­ный VSN устрой­ства с фай­ловой сис­темой FAT

Итак, теперь ты уме­ешь менять VSN (UUID). Но для по‑нас­тояще­му серь­езных вещей и соз­дания поч­ти пол­ноцен­ного кло­на нуж­но еще нем­ного углу­бить­ся в тему.

Часть 2. VID, PID, Serial

Что­бы менять мак­сималь­ное количес­тво парамет­ров, тре­бует­ся переп­рошить кон­трол­лер флеш­ки. Про­цеду­ра эта срав­нитель­но нес­ложная, но опас­ная — в слу­чае ошиб­ки ты рис­куешь сде­лать флеш­ку нерабо­тос­пособ­ной (одна­ко ошиб­ка чаще все­го воз­ника­ет при неудач­ном выборе про­шив­ки или про­шиваль­щика).

Пред­ста­вим, что у тебя есть исправ­ная флеш­ка (которая работа­ет в офи­се без проб­лем), а так­же ты при­обрел дру­гую флеш­ку — потен­циаль­ный клон. Если ты купишь флеш­ку точ­но той же модели, то при некото­рых обсто­ятель­ствах смо­жешь обой­ти СЗИ, в которых идет про­вер­ка толь­ко по VID и PID.

На прак­тике луч­ше най­ти флеш­ки, которые лег­че все­го переп­рошивать, нап­ример фир­мы Silicon Power или Transcend с USB 3.0 — в них час­то исполь­зует­ся SMI-кон­трол­лер. Хотя в целом тебе могут попасть­ся флеш­ки с кон­трол­лерами AlcorMP, Phison и дру­гие. Для них тоже есть про­шив­ки.

Об­щий алго­ритм про­шив­ки девай­са сле­дующий:

  1. Вы­ясни тип иден­тифика­тора, который исполь­зует­ся для опре­деле­ния флеш­ки в СЗИ, или исполь­зуемые сос­тавля­ющие на осно­ве дан­ных флеш­ки (опци­ональ­но), запиши их для пос­леду­ющей под­делки.
  2. Оп­редели кон­трол­лер флеш­ки.
  3. Под­бери ути­литу для про­шив­ки, под­ходящую под кон­крет­ную вер­сию кон­трол­лера.
  4. В про­шиваль­щике задай необ­ходимые парамет­ры, иден­тичные ори­гиналь­ной флеш­ке.
  5. Про­шей флеш­ку‑клон и про­верь ее работу. В слу­чае неудач­ной про­шив­ки — пов­тори шаги, начиная со вто­рого. Если флеш­ка окир­пичилась, пос­тупай ана­логич­но.

Шаг 1. Так слу­чилось, что на пер­вой про­тес­тирован­ной нами машине сто­ял анти­вирус Comodo с воз­можностью кон­тро­ля устрой­ств. Недол­го думая, вклю­чаем бло­киров­ку для USB и добав­ляем флеш­ку‑ори­гинал в исклю­чение. Анти­вирь любез­но показы­вает нам исполь­зуемый иден­тифика­тор флеш­ки.

Кон­троль устрой­ств анти­виру­са Comodo

В свой­ствах обо­рудо­вания находим, что эта стро­ка соот­ветс­тву­ет опции «Путь к экзем­пля­ру устрой­ства». Запишем иден­тифика­тор как целевое зна­чение, которо­му наша флеш­ка‑фейк дол­жна соот­ветс­тво­вать:

USBSTOR\DISK&VEN_&PROD_USB_DISK_2.0&REV_PMAP\070867948D560839&0

На вся­кий слу­чай запом­ним и DeviceID:

USB\VID_13FE&PID_4200\070867948D560839

Бывает и такое, что CЗИ может не отображать идентификатор, а только определять некоторые свойства подключенного устройства. Такие случаи часто бывают связаны с тем, что идентификатор может состоять из видимых полей и свойств. Здесь нет никакой разницы для нас – ведь, адаптируя фальшивые данные к исходным, мы используем одни и те же данные и формируем один схожий идентификатор.

Шаг 2. Программа ChipGenius поможет определить контроллер фальшивой флешки. Для того чтобы скачать ее, необходимо зайти на сайт USBDev. По мнению многих пользователей сайта, он является самым полезным русскоязычным ресурсом по прошивке флешек. Также можно использовать аналог — Flash Drive Information Extractor.

Выпол­нения прог­рамм опре­деле­ния кон­трол­лера

Срав­ни с выводом ChipGenius для нашего будуще­го фей­ка:

  • DeviceID
  • USB\VID_090C&PID_1000\CCYYMMDDHHMMSS000000
  • Description: [H:]Запоми­нающее устрой­ство для USB(SMI USB DISK)
  • Device Type: Mass Storage Device
  • Protocal Version: USB 2.00
  • Current Speed: High Speed
  • Max Current: 500mA
  • USB Device ID: VID = 090C PID = 1000
  • Serial Number: CCYYMMDDHHMMSS000000
  • Device Vendor: SMI Corporation
  • Device Name: USB DISK
  • Device Revision: 1100
  • Manufacturer: SMI
  • Product Model: USB DISK
  • Product Revision: 1100
  • Controller Vendor: SMI
  • Controller Part-Number: SM3257ENBA — ISP 131128-AA-
  • Flash ID code: 98DE8493 — KIOXIA TC58TEG6DCJBA00 — 1CE/Single Channel [MLC-16K] → Total Capacity = 8GB
  • Tools on web: http://dl.mydigit.net/special/up/smi.html

Теперь мы можем увидеть, что у нас есть контроллер семейства SMI (Silicon motion), номер SM3257ENBA. Найдем для него прошивку.

Шаг 3. На сайте ChipGenius есть ссылка для скачивания прошивки, но сайт полностью на китайском языке, поэтому его проще загрузить с USBDev. В этом случае это обязательно в версии с поддержкой нашего контроллера SM3257ENBA. Этот контроллер использует программы SMI MPToolи Dyna Mass Storage Production Tool. На данный момент у нас в приоритете последний вариант (работает долго и эффективно, и почти со всеми типами данных контроллеров).  Найдите нужную версию и скачайте Dyna Mass Store Production Tool, вставьте фейковую флешку и запустите программу.

Шаг 4. Вам не о чем волноваться, это совершенно не сложно. Практически все рошивальщики имеют почти идентичный набор параметров, поэтому общие правила и изменяемые параметры одинаковы у всех, независимо от марки и модели контроллера. Убедитесь в том, что флешка отображается в окне программы.

Флеш­ка в Dyna Mass Storage Production Tool

Справа нажмите на слово Settings, пропустите ввод пароля, нажав Enter (в некоторых инструментах он также есть, обычно легко гуглить на форумах), в качестве конфигурации по умолчанию укажите файл в корне каталога флешера — NDefault. INI.

Кстати, все эти операции позволяют восстановить любимый неисправный USB-гаджет, перепрошив его значениями по умолчанию, главное не связываться с определением программы и контроллера. Что ж, продолжаем. В появившемся окне перейдите на вкладку DeviceConfig.

Парамет­ры флеш­ки в Dyna Mass Storage Production Tool

Здесь мало что нужно изменить. В поле SN Method выберите Static SN (иначе наш серийник будет пустым, как у безымянных флешек). В этом случае мы создали серийный номер, такой же сильный, как швейцарский банк, который не будет меняться от системы к системе.

В сек­ции USB чуть ниже выс­тавля­ем парамет­ры, как у флеш­ки‑ори­гина­ла:

VID 13FE, PID 4200, bdcDevice (номер ревизии) PMAP

Производитель и название продукта в нашем случае не используются, мы не можем его изменить. Однако в некоторых крупных СЗИ они также используются для формирования подписи устройства. Если вы совсем не знаете, какие параметры и куда вводить, рекомендуем повторить шаги с первого до этого на исходной флешке, скопировать все параметры на фальшивую флешку и продолжить чтение. Оригинал прошивать не нужно.

В поля SN Begin No., SN End No. и SN Mask забива­ем серий­ник флеш­ки‑ори­гина­ла: 070867948D560839.

Да­вайте еще раз пос­мотрим на целевую стро­ку:

USBSTOR\DISK&VEN_[пустой]&PROD_USB_DISK_2.0&REV_PMAP\070867948D560839&0

Мы уже перенес­ли номер ревизии (PMAP) и серий­ник — циф­ровую часть в кон­це.

В разделе «Inquiry» очистите поле «Vendor» и введите USB DISK 2.0 в поле «Product». Мы изменили VID и PID, чтобы серийный номер (Device ID) также был идентичен оригиналу. В правом верхнем углу нажмите «Save», а в главном окне нажмите «Start». Флешка запускается.

Парамет­ры в Dyna Mass Storage Production Tool

В нашем случае глубокая перепрошивка занимает 35 минут. А при использовании SMI MPTool можно использовать более быстрый способ перепрошивки, когда CID-регистр (Card Identification; открывается через Debug register → Read CID \ Write CID) считывается с контроллера, необходимые данные туда записываются вручную, по аналогии с HEX-редактированием (но еще раз вам нужно установить байты контроля длины, не забудьте водить значения справа налево и так далее, что удобно). 

Флеш­ка в прог­рамме SMI MPTool

Шаг 5. После успешной прошивки все, что вам необходимо сделать, это проверить нашу фальшивку и узнать, насколько она хороша. Теперь посмотрим на детали с ChipGenius и выделим отличия от оригинального варианта:  

  • Description: [H:]Запоми­нающее устрой­ство для USB(USB DISK 2.0)
  • Device Type: Mass Storage Device
  • Protocal Version: USB 2.00
  • Current Speed: High Speed
  • Max Current: 500mA (у ори­гина­ла — 200 mA, мож­но поменять через свой­ство USB Power — см. позап­рошлый скрин, но при заниже­нии силы тока устрой­ство может отка­зать­ся работать)
  • USB Device ID: VID = 13FE PID = 4200
  • Serial Number: 070867948D560839
  • Device Vendor: SMI Corporation (у ори­гина­ла отсутс­тву­ет, меня­ется через панель USB → Vendor String)
  • Device Name: USB DISK (у ори­гина­ла USB DISK 2.0, меня­ется через панель USB → Product String)
  • Device Revision: 4200 (у ори­гина­ла 0100, дан­ный параметр не изме­няет­ся)
  • Product Model: USB DISK 2.0
  • Product Revision: PMAP
  • …(осталь­ное по кон­трол­леру и так раз­лича­ется)…

А теперь сопоставим DeviceID флеш-карты оригинала, фейка до клона и фейка после прошивки.

Изме­нения на флеш­ке‑кло­не

От­крыв свой­ства обо­рудо­вания, про­веря­ем путь к экзем­пля­ру‑кло­ну:

USBSTOR\DISK&VEN_&PROD_USB_DISK_2.0&REV_PMAP\070867948D560839&0

Це­левой путь:

USBSTOR\DISK&VEN_&PROD_USB_DISK_2.0&REV_PMAP\070867948D560839&0

Те­перь встав­ляем фейк в тес­товую машину с вклю­чен­ным белым спис­ком для флеш­ки‑ори­гина­ла.

Под­клю­чение флеш­ки анти­виру­сом Comodo

Флешка открывается и работает. Пытаемся подключить оригинальную флешку вместе с фейковой — жаль, конфликт возникает, поэтому работает только первая вставленная флешка. Затем соединяйте их по одному.

Чтобы копия полностью соответствовала оригиналу, рекомендуем изменить остальные параметры, отформатировать подделку и присвоить ей оригинальную метку. И не забудьте изменить свой VSN — вы уже знаете, как это сделать.

Да­вайте про­верим фейк на надеж­ном анти­виру­се — нап­ример, Kaspersky Endpoint Security 10.

Ин­терфейс кон­тро­ля устрой­ств Kaspersky Endpoint Security 10

Смот­рим, что исполь­зует­ся в качес­тве иден­тифика­тора флеш­ки‑ори­гина­ла.

Иден­тифика­тор флеш­ки в Kaspersky Endpoint Security 10

Это путь к экзем­пля­ру устрой­ства, добав­ляем его в белый спи­сок, про­веря­ем на какой‑нибудь левой флеш­ке.

Бло­киров­ка в Kaspersky Endpoint Security 10

И вот тут-то мы и рассмеялись – флешка отобразилась в проводнике, проверяется антивирусом, но при попытке обратиться к ней получаем вот такое окно.

Отка­з дос­тупа к флеш­ке

Но флеш­ка‑фейк пред­ска­зуемо работа­ет без каких‑либо проб­лем.

Схо­жим обра­зом мы про­тес­тирова­ли ряд ком­мерчес­ких DLP-сис­тем, СЗИ под Linux и ниг­де не встре­тили ни отпо­ра, ни попыток вос­пре­пятс­тво­вать ата­ке кло­нов.

Часть 3.

Со­вер­шенно слу­чай­но ока­залось, что в зависи­мос­ти от СЗИ мож­но исполь­зовать и допол­нитель­ные методы обхо­да USB-бло­киро­вок.

Дискетко

Отформатировав флешку, вы можете превратить ее в классическую дискету для чтения / записи объемом всего 1,38 МБ. Хватит потихоньку перетащить игрушку на работу? Размещается по частям в несколько проходов. Вот как это сделать. Берем новую флешку и следуем известному алгоритму. На этот раз нам попалась флешка Transcend 8 Gb USB 3.0 с контроллером SMI SM3267AB (возьмем прошивальщик — SMI MPTool V2.5.51 v7 P0920v1). Итак, прошивальщик, окно настроек, вкладка Multi-Lun Settings.

Фор­матиро­вание флеш­ки как дис­кеты

Запускаем программу, устанавливаем галочки на Floppy и формотировании, прошиваем. 

Про­шив­ка флеш­ки в роль дис­кеты

Floppy-дис­ковод работа­ет.

Проверим на Касперском. USB по-прежнему заблокирован для любых флешек, кроме доверенных, но «дисковод» успешно подключен, можно читать-писать информацию. Доступа к флешке пока не предвидится.

В случае сравнения информации о Floppy в Касперском с информацией по USB, то разница заключается только в типе устройства (Дис­кеты и Съемные дис­ки).

Данный метод не работает при включении бло­киров­ки дискет.

CD-привод

Аналогичный подход, но теперь давайте попробуем создать раздел CD на USB-накопителе и предварительно записать образ из файла ISO. Обратная сторона очевидна — вы можете читать информацию только с раздела CD, вы не можете записывать файлы на USB-накопитель. Но запустить установщик любимой игры — не проблема. Берем такую ​​же флешку на контроллере SM3267AB и прошиваем раздел CD через SMI. В разделе Multi-Mon Settings установите флажок Static CDROM size и укажите размер вашего ISO, который мы будем загружать в него.

Про­шив­ка флеш­ки в роль CD-при­вода

На вкладке Main Stream Parameter рядом с флажком Make Auto Run укажите путь к ISO-образу, например, с Kali Linux — или чем-то еще. После мигания флешка будет отображаться в проводнике как отдельная флешка и дисковод для компакт-дисков. С раздела CD можно читать, копировать файлы — все как при классическом монтировании ISO-образа.

Что по этому поводу скажут наши блокираторы? В Kaspersky и других коммерческих решениях ситуация полностью аналогична случаю с дискетами: раздел CD успешно подключен и готов к работе.

Покупка мутантов

Кстати, есть уже готовые флешки, в которых есть CD-раздел с утилитами для подключения «закрытого» раздела — как, например, в Jet Flash Transcend 620. Это похоже на CD-раздел с программой + 2 USB-раздела — открытый и закрытый до ввода пароля. Размер приватной области настраивается.

Флеш­ка‑мутан­т

Ин­терфейс прог­раммы JetFlash SecureDrive

Итак, если белый список на USB-накопителях в Касперском работает (если CD-привод разблокирован), такая флешка монтирует себе раздел CD — вы можете запускать и копировать программы. Отказано в доступе при попытке смонтировать защищенный раздел. Чтобы избежать этой катастрофы, вы должны заблокировать привод компакт-дисков, даже если родительское устройство устройства содержит тот же старый добрый идентификатор USB, что странно. В Comodo полностью исключена возможность монтирования таких ненадежных носителей. Почему? Вопрос касается внедрения системы защиты информации и механизмов организации белых списков.

Вывод

В статье мы подробно разобрали способы сделать максимально правдоподобный клон флэшки, который сможет обходить любые блокировки. В зависимости от степени запутанности почти каждый белый список можно обойти. С нашей точки зрения, для гарантированной защиты от спуфинга USB можно было бы указать определенные модели флеш-накопителей в DSS и занести в белый список хэш из области CID, из комбинации VID + PID + serial или добавить ChipGenius выводит хеш (ну или его часть). Было бы неплохо добавить к идентификационной информации данные о модели контроллера устройства.

Поскольку нам известно несколько операционных систем, которые используют название производителя или другие аналогичные параметры в качестве значений для белого списка, было бы хорошо на уровне операционной системы проверить подключенные носители на предмет их замены или несоответствия с обычным (ожидаемым ) (например, вы можете сравнить VSN / UUID и обнаружить различия с одним и тем же DeviceID).

Безопасникам рекомендуется полностью заблокировать подключение гибких дисков и дисков в ОС, чтобы исключить описанные варианты обхода защиты.

 

 

 

 

Click to rate this post!
[Total: 3 Average: 1]
faza

Recent Posts

Лучший адаптер беспроводной сети для взлома Wi-Fi

Чтобы взломать сеть Wi-Fi с помощью Kali Linux, вам нужна беспроводная карта, поддерживающая режим мониторинга…

12 месяцев ago

Как пользоваться инструментом FFmpeg

Работа с консолью считается более эффективной, чем работа с графическим интерфейсом по нескольким причинам.Во-первых, ввод…

1 год ago

Как создать собственный VPN-сервис

Конечно, вы также можете приобрести подписку на соответствующую услугу, но наличие SSH-доступа к компьютеру с…

1 год ago

ChatGPT против HIX Chat: какой чат-бот с искусственным интеллектом лучше?

С тех пор как ChatGPT вышел на арену, возросла потребность в поддержке чата на базе…

1 год ago

Разведка по Wi-Fi и GPS с помощью Sparrow-wifi

Если вы когда-нибудь окажетесь в ситуации, когда вам нужно взглянуть на спектр беспроводной связи, будь…

1 год ago

Как обнаружить угрозы в памяти

Elastic Security стремится превзойти противников в инновациях и обеспечить защиту от новейших технологий злоумышленников. В…

1 год ago