Silenda Flash USB Безопасность Шифрование

Silenda Flash. Флешка с функцией физического уничтожения данных

Silenda Flash. Флешка с функцией физического уничтожения данных

А где свои гигабайты хранишь ты? На флешке в укромном месте? В криптоконтейнере? А может, в облаке или на Яндекс-диске? Можешь ли ты быть на 100% уверен в том, что твои методы защиты (или их отсустствие) помогут тебе в критической ситуации?

Действенный способ только один – уничтожить.

Да, мой друг, сегодня речь пойдёт об устройствах с функцией автоматического уничтожения.

В мою бурную юность устройство, предназначеное для физического удаления информации, используемое мной, спасло очень многих людей от длинных тюремных сроков. В тот девайс вставлялся жёсткий диск, а само устройство я установил в сервер, размещенный на определённой площадке. Суть устройства заключалась в том, что при определённых условиях вставленный в него жесткий диск уничтожался мощным разрядом электричества. Диски востановлению не подлежали. Мы это проверяли. То устройство работало с SIM картой с номером на который нужно было звонить. Не отзвонился в определённый период времени – бум, диска нет. Были, конечно, и другие настройки, но я выбрал именно такой вариант. И как оказалось не ошибся. Когда меня “приняли” и я не отзвонился – диск взорвался, вместе с миллионами ворованных кредиток, логами продаж и именами тысяч клиентов, отправителей и получателей денег. Тем самым спася очень многих людей от бед.

С тех пор прошло много времени и технологии изменились. Но потребность в безопасном хранении информации только возросла.

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

Знакомьтесь, Silenda Flash.

Флешка выглядит так

Это не заказная статья. В ходе тестирования этого устройства я на протяжении почти двух месяцев тестировал железо и ПО, потому что я, как никто другой понимаю и знаю на своём опыте насколько важно быть уверенным в надежности хранения своей информации и того, где она храниться. Здесь нет никаких “но”. Поэтому в этой статье только факты.

Что пишут производители?

По заявлениям производителей, Silenda Flash представляет из себя флешку объемом 64гб с возможностью самоуничтожения и шифрования. Разработчики заявляют следующий функционал (информация взята с сайта разработчиков):

Физическое уничтожение данных

Выгодно отличаясь от своих конкурентов, Silenda Flash гарантирует физическое уничтожение данных, в то время, как другие устройства предназначенные для обеспечения безопасности данных просто “затирают” информацию путём перезаписи. Silenda Flash оборудован встроенным аккумулятором, а на корпусе носителя расположена кнопка, нажав которую физически уничтожается сам чип памяти за счёт электрического разряда направленного действия с напряжением до 74 вольт, что и гарантирует невозможность восстановления данных.

Шифрование данных

По желанию пользователя, доступ к информации на Silenda Flash возможен только при наличии пароля, который устанавливается при шифровании данных на носителе. Таким образом информация защищена даже в случае попадания в чужие руки.

Возможность задания заведомо ложного пароля, приводящего к уничтожению данных

Пользователь может задать второй пароль при введении которого происходит моментальное физическое удаление данных с носителя.

Silenda Flash в качестве переносного рабочего места

Устройство может быть использовано в качествее удаленного рабочего места. Доступного объема вполне хватает для установки Windows или Tails с небольшим криптоконтейнером.

Что на самом деле?

Сразу хочу сказать, что это – вторая версия устройства. Первую ещё в 2015 году тестировали и писали об этом ребята из журнала “Хакер”, ресурс, почитаемый мною с самого раннего детства. Мне очень польстило, что на этот раз возможность первого “тест-драйва” досталась именно мне. Статья из “Хакера” показала мне, что производитель имеет достаточный опыт в разработке устройств защиты информации. И мне не терпелось посмотреть и проверить самому, а что же это такое. Поехали?

Устройство выполнено в виде флешки, в черном пластиковом корпусе с кнопкой и светодиодом. Внутри располагается печатная плата достаточно хорошего исполнения с припаяной к ней micro-SD картой. Маркировка чипов затёрта, но производитель сообщил, что используется USB хаб от MJ Microchip. К контроллеру подключена непосредственно сама micro-SD карта и управляющий модуль Arduino (производитель отказался сообщить маркировку). Выше расположен аккумулятор. Механизм физического уничтожения приводится в действие с помощью разряда конденсатора с пиковым напряжением до 74 вольт, в зависимости от заряда аккумулятора. Этого вполне достаточно, чтобы физически уничтожить информацию на носителе. Тем не менее, физическая защита от вскрытия корпуса не реализована. А это значит, что если ты вовремя не успел нажать на кнопку – всё будет зависеть лишь от стойкости твоего пароля, ведь батарею можно просто отсоединить.

Флешка в разобранном виде

Подключаем?

При подключении к компьютеру устройство идентифицируется, как обычная флешка на 64гб. И… Как HID-устройство, то есть Human Interface Device, или по-русски, устройство ввода, с ID производителя Van Ooijen Technische Informatica Datakiller. Что это? HID устройства – это, например мыши или клавиатуры…

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

Разработчики пояснили, что это технический изъян, который они признают и обещают устранить в следующих версиях продукта. Дело в том, что в ходе реализации, разработчиками задумывалась функция уничтожения при вводе заведомо ложного пароля. Функция очень полезная во многих ситуациях, особенно, когда имеешь дело с критически важной иноформацией. Требуют пароль – сообщил заведомо ложный, бах, и информации нет. А соответственно – нет и спроса. Идея великолепна, только вот в нашем случае реализация хромает. Разработчики очень старались реализовать функцию обратной связи с устройством, так как ни micro-SD накопитель, ни USB хаб этого сделать не смогут, а соответственно, нужен и контроллер, который бы за этим следил. Но как быть, ведь если реализовывать свой функционал, то потребуется и установка драйверов, что повлечёт ещё больше проблем в разработке и поставит не меньше вопросов о безопасности устройства для конечного пользователя. Ребята выбрали из двуг зол меньшее и реализовали интерфейс взаимодействия контроллера с криптографическим ПО через эмуляцию HID устройства. Я тестировал устройство на стенде с полным дебагом USB и скачанным с сайта производителя ПО (равно, как и пересобирал сам). Несмотря на то, что у меня отутствовала возможность физически считать прошивку контроллера, я не выявил никакого аномального поведения девайса. Атака BadUSB работает по принципу, воспроизведения нажатий клавиш. Поэтому, если просто отключить устройство (в конце статьи я напишу как это делать) тогда и никакой атаки, мнимой или реальной, не может быть в принципе. Как по мне – это технический недочёт разработчиков. Но выбор – за тобой.

Устройство запускается и не отправляет никаких подозрительных команд

Теперь взгянём на ПО. Весь софт написан на GOlang, со всеми плюсами и минусами. Исходники опубликованы разработчиком в репозитории на Github. По сути софт просто создаёт на флешке криптоконтейнеры, шифрованные Blowfish (bcrypt с длинной ключа в 60 байт или 480 бит, что, в принципе, достаточно надежно при наличии стойкого пароля). Так для чего всё затевалось то? Ведь можно обойтись и обычной VeraCrypt?

Как бы не странно это звучало, и специализированное ПО и эмуляция устройства ввода реализованы лишь с одной целью. Это функция самоуничтожения по ложному паролю. Как это происходит?

Казалось бы, если уже реализовывать такое, то следовало бы хранить хэши в самом контроллере, реализовав тем самым некое подобие TPM, тогда можно было бы ограничить и колличество введённых комбинаций и достаточно надёжно реализовать функцию самоуничтожения по ложному паролю. Но разработчики решили обмануть судьбу. Из кода мы видим, что сверка хешей происходит в програмном обеспечении, для чего используется стандартная библиотека GO bcrypt c 480 битным хэшем:

storage.go:

type Hash [60]byte

func (h *Hash) Make(raw string) error {
	hash, err := bcrypt.GenerateFromPassword(
		[]byte(raw), bcrypt.DefaultCost,
	)

	if err != nil {
		return err
	}

	copy(h[:], hash)
	return nil
}

Можно было бы и побольше. Но основной провал идеи – не в этом. Давай посмотрим, как происходит процедура самоуничтожения при вводе подложного пароля:

usb.go:

func usbWrite() error {
	_, err := usbCommand("write", "0xac")
	if err != nil {
		return err
	}

	return nil
}

Никаких сверок с железом. Пароли, как правильный, так и заведомо ложный хранятся в крипто контейнере:

main.go:

func setFakePass(opt ...*sciter.Value) *sciter.Value {
	if len(opt) != 1 {
		return Error(unkn_error)
	}

	err := storage.pass.Real.Compare(
		opt[0].String(),
	)

	if err == nil {
		return Error(pass_same)
	}

	err = storage.pass.Fake.Make(
		opt[0].String(),
	)

	if err != nil {
		return Error(unkn_error)
	}

	err = storage.Update()
	if err != nil {
		if os.IsPermission(err) {
			return Error(perm_error)
		}

		return Error(unkn_error)
	}

	return Ok(true)
}

То есть, всё реализованно програмно. Если отключить HID устройство или блокировать комманду, а равно, как и написать своё програмное обеспечение для расшифровки контейнера (ведь используется стандартная библиотека), функция самоуничтожения по ложному паролю – бессмыссленна.

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

Корпус не имеет защиты от вскрытия. Поэтому лучше успеть нажать на кнопку. Если ты всё же не успел этого сделать – остаются надежды на использование функции заведомо ложного пароля, который ты можешь сообщить.

Epic fail. Надеюсь, в следующих версиях – будет лучше.

Тем не менее, для людей, которым придется иметь дело с потенциальными атакующими с низкой технической квалификацией (криминалитет, налоговая, уличная полиция, технически не продвинутые конкуренты, а равно, как и таможенники, как отечественные, так и иностранные) – флешка с такой функцией может и помочь. Особенно, если вспомнить то, что даже если отключить аккумулятор, при вводе заведомого ложного пароля, а равно как и при нажатии на кнопку, разряд всё равно произойдёт (если не будет блокирован драйвер и использовано оригинальное ПО) при подключении к USB, этого вполне достаточно.

Возможно ли восстановление информации

Ну и самое главное. То, ради чего это всё затевалось. А именно – физическое уничтожение информации на носителе. Насколько оно эффективно?

Напоминаю, что уничтожение происходит путём разряда каскада конденсаторов с пиковым напряжением в 74 вольта непосредственно в карту памяти. При моём тесте напряжение электрического разряда составило 68 вольт.

Этого напряжения вполне достаточно для того, чтобы уничтожить значительную часть данных. Если предположить, что при шифровании использовался стойкий пароль и несколько контейнеров, можно быть уверенным, что использование стандартных средств восстановления sd-карт ни к чему не приведет.

В лаборатории, в которую я обратился мне тоже ничем не помогли после нескольких дней попыток.

По заявлениям разработчиков, первая версия флешки была протестирована SecurityLab. У них тоже восстановить ничего не получилось.

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

Что делать параноикам?

Как я и писал, флешка эмулирует устройство ввода. А знающие люди понимают, что это потенициальный плацдарм для атаки BadUSB. Флешка никакой активности не проявляла, но и прошивку для анализа я из устройства извлечь тоже не смог. А значит 100% гарантии я дать не смогу. Тем не менее, для тех кому нужна флешка с функцией уничтожения данных, могут попросту отключить HID устройство.

Для Windows, PowerShell:

Disable-PnpDevice -InstanceId 'USB\VID_16C0&PID_05DF&REV_0100'

Или просто отключить его в “Управлении устройствами”:

Отключение через менеджер устройств Windows

Больше волноваться не за что.

И ещё раз. Устройство было подключено к компьютеру на протяжении нескольких дней с полным дебагом обмена информацией с компьютером. Никакой подозрительной активности замечено не было.

Вердикт

Устройство пригодно для использования и в случае необходимости справляется со своей основной функцией – уничтожением данных. С большой долей уверенности могу сказать, что на просторах СНГ восстановить с неё информацию навряд ли у кого то получится. Что касается США? Были случаи, когда там восстанавливали оперативную память с уже обесточенных компьютеров.

Производители флешки – люди, имеющие многолетний опыт разработки устройств защиты информации, о чём может свидетельствовать статья о первой версии Silenda Flash в журнале “Хакер”.

Если технически устройство реализовано на приемлемом уровне, то на уровне ПО и логики существуют серъёзные проблемы, например, отсутствует защита от вскрытия, да и на функцию уничтожения по подложному паролю я бы не стал возлагать больших надежд. Это техничский просчёт разработчиков, на который они потратили очень много ресурсов. А в добавок – функция реализовали очень подозрительно. Тем не менее, флешка легко превращается в обычный контейнер с функцией удаления данных. Для этого просто надо отключить дополнительные драйвера.

Девайс работает. Информация с флешки удаляется без возможности восстановления информации даже с использованием продвинутых средств форензики. Это я могу сказать с достаточной долей уверенности. В сочетании с другими средствами шифрования, например такими, как VeraCrypt, устройство работает отлично. И это предоставляет дополнительный уровень защиты информации.

Для кого это устройство: для секретарей и бухгалтеров, которым есть что прятать, для мелких чиновников, нарко-кладменов, барыжат и даже барыг покрупнее, а также продвинутых юзеров, которые просто хотят немного обезопасить свою информацию. В общем, для всех тех, кому не придётся иметь дело с технически-продвинутыми ИБ экспертами, будь то киберкопы, чекисты, вайтхаты и блэкхаты любых мастей. Отдельно хочется отметить, что такая флешка наверняка поможет журналистам и борцам за свободу информации, учитывая тревожную информацию о постоянных незаконных обысках, изъятии носителей информации и давлении силовых структур в РФ и РБ.

Для кого не подойдет это устройство: для киберпараноиков, для людей, которые имеют серьезные секреты, много информации, но не понимают в ИБ.

Абсолютно защищенных USB флешек я ещё не видел. Хочешь реальной защиты? Купи себе HSM. Ценник от $5000. Но и их мы тоже, помнится, разваливали. И не раз. Для своей цены(не многим дороже обычной флешки) 64гб, это устройство – вполне достойный представитель своей категории, отлично справляющееся со своим прямым назначением – уничтожением информации в случае необходимости.

И главное помните. Даже самый продвинутый девайс дурака не спасёт.

Купить можно на сайте производителя: https://silenda.systems

Очень злой админ
Очень злой админ Автор статьи

Админ сайта. Публикует интересные статьи с других ресурсов, либо их переводы. Если есть настроение, бывает, что пишет и что-то своё.

Комментарии

  1. Ну так если автор не дурак, сам чего попался?)
    А так статья крутая!

Leave a Reply

Your email address will not be published. Required fields are marked *