Этот компьютер в формате флеш-накопителя можно использовать в качестве самошифрующегося информационного хранилища, маршрутизатора сети Tor, сейфа для паролей, и не только.
Барисани приехал в Париж с пятью устройствами USB Armory, а обратно в Триест отправился с пустыми руками — все экземпляры прототипа буквально расхватали. USB Armory имеет разъем для карты microSD, процессор i.MX35 компании Freescale Semiconductor, полгигабайта памяти и разъем USB.
Как сообщил Барисани, этот миниатюрный компьютер по мощности примерно как Raspberri Pi. Но у него нет интерфейсов для подключения экрана, клавиатуры и блока питания. Электроэнергию дает ПК, к USB-разъему которого подключается Armory, а операционная система загружается с карты microSD. «Мы пользуемся Debian или Ubuntu», — сообщил Барисани.
Главная особенность устройства, отличающая его от других компьютеров в виде флешки, это процессор: в i.MX53 предусмотрена технология ARM TrustZone — защищенная область для выполнения кода.
«Имеется еще целый ряд механизмов безопасности, в том числе режим защищенной загрузки», — отметил Барисани.
Есть, в частности, защищенное хранилище для ключей шифрования, что позволяет превратить USB Armory в самошифрующуюся флешку, которая может автоматически стирать ключи при подключении к неавторизованному компьютеру. Зашифрованная область может быть доступной не только в виде локального накопителя: благодаря возможности эмуляции сетевого устройства, соединенного по USB, с ним можно работать как с сетевым томом.
У эмуляции сетевого устройства могут быть и другие применения, связанные с безопасностью, в том числе предоставление защищенного доступа к удаленным компьютерам по SSH и VPN — даже с недоверенных компьютеров, а также анонимный просмотр сайтов через Tor без установки соответствующего клиента на ПК.
«Если я пользуюсь интернет-киоском, которому не доверяю, то не могу зайти по SSH в свою домашнюю систему, так как не хочу оставлять пароль киоску, — объясняет Барисани. — Но я могу подключить USB Armory, соединиться с ним с помощью одноразового пароля, а затем связаться по SSH с домашней системой, воспользовавшись ключом, который хранится на устройстве».
Для использования USB Armory в качестве клиента Tor или VPN нужно обеспечить маршрутизацию трафика через устройство. «В Linux и Windows это очень просто», — отметил Барисани.
Можно огранизовать сопряжение двух USB Armory посредством обмена ключами шифрования между ними, после чего владельцы устройств смогут обмениваться зашифрованными файлами. «Можно общаться в защищенном режиме, перебрасываясь файлами путем буксировки, — продолжил Барисани. — Идея USB Armory в том, чтобы предоставить защищенную платформу для персональных приложений безопасности. Надеюсь, для нашего компьютера будут создавать приложения так же активно, как для Arduino, Raspberri Pi и т. д.».
Барисани рассчитывает в скором времени получить образцы релиз-кандидата USB Armory, после чего компания начнет принимать заказы на первую партию, которая составит тысячу штук или, возможно, больше. Вскоре после этого начнется доставка.
Идея защитного USB-устройства выглядит вызывающей, учитывая доклад, сделанный на июльской конференции BlackHat. Карстен Нол из SR Labs продемонстрировал BadUSB, способ программирования чипов USB-контроллера определенной марки на заражение компьютеров вредоносами. В начале октября другие исследователи опубликовали код, воспроизводящий атаку BadUSB. В результате уязвимыми оказались многие USB-устройства: традиционные антивирусы, работающие на компьютерах, не могут распознать такую атаку, и нет простого способа определить, какие устройства могут быть взломанными.
Хотя USB Armory и можно запрограммировать на программную эмуляцию всевозможных периферийных USB-устройств, устройство неуязвимо для атаки BadUSB, заявил Барисани. Операционная система и приложения устройства криптографически подписаны, а в режиме защищенной загрузки запуск модифицированного или неподписанного кода недопустим. Но большие возможности — большая ответственность: благодаря гибкости USB Armory устройство можно запрограммировать так, чтобы оно само осуществляло атаки BadUSB или иным образом служило инструментом хакеров и исследователей безопасности.
По словам Барисани, еще одно важное отличие USB Armory от уязвимых USB-устройств — открытость цепочки поставок. Серьезность BadUSB в том, что трудно сказать, какую именно микросхему контроллера содержит USB-устройство и каково происхождение других элементов, в связи с чем затруднительно выяснить, можно ли доверять тому или иному устройству. Барисани же собирается раскрывать происхождение всех компонентов USB Armory: Inverse Path предлагает конструкцию устройства в качестве «открытого аппаратного обеспечения», так что, если вы не доверяете производителю, с которым сотрудничает компания, можно самостоятельно изготовить устройство из комплектующих от надежных, с вашей точки зрения, источников. Файлы конструкции прототипа USB Armory размещены на Github, и в Inverse Path собираются опубликовать конструкцию серийного варианта, как только он будет готов к производству.