В последнее время регулярно появляются сообщения об утечках информации.
В данной статье хотелось поделиться опытом создания устройства в сфере информационной безопасности.
1. История создания
В конце 2013 года в компании Мультиклет появились идеи о движении вперёд и производстве не только отечественных процессоров, но и серийных устройств. Рассматривались идеи создания платы ускорителя с огромной производительностью для обычных ПК и устройства для защиты информации. Поскольку компания частная и большого финансирования для ускорителя в тот момент привлечь не удалось было решено начать с производства устройства для защиты информации.
Идея о создании устройства для защиты информации зародилась после теста алгоритма ГОСТ89 на процессоре Multiclet P1. Оказалось, что алгоритм шифрования достаточно хорошо распараллеливается и подходит для мультиклеточной архитектуры, пользователь хабра rnouse выявил ускорение шифрования на мультиклеточной архитектуре по сравнения с процессорами в рутокенах в 4 -5 раз.
Рис 1. Первое изображение корпуса
Постановка задачи
Предварительными соображениями, положенными в основу технического задания были следующие:
— недостатки программных средств, заключающиеся в меньшей защищенности по сравнению с аппаратными средствами;
— у шифровальных флешек недостатком является ограниченный функционал.
Поэтому было решено сделать устройство которое бы содержало гибкость и многофункциональность программных средств и ответ на новые угрозы (например BadUSB) и возможность создания корпоративных иерархических систем информационной безопасности. Как всегда хотелось «всё в одном».
В начале 2014 года был сделан большой макет для разработки устройства из отладочных плат.
В это же время корректировалось техническое задание на устройство. Первый эскиз корпуса представлен на рис. 1.
Был разработан примерный график работ с окончанием разработки в августе. Задачи, которые могли протекать одновременно, были распараллелены в зависимости от ресурсов. Затем мы приступили к разработке платы прототипа и программного обеспечения. В это же время потребовалось принять в команду специалистов по информационной безопасности.
Следующим этапом была попытка запуска проекта на kickstarter, но нужные средства собрать не удалось. Возможно, причиной было отсутствие подготовки СМИ перед началом проекта и начало периода санкций. Многие специалисты по краудфандингу также отмечали, что проект слишком сложен для этого сайта.
К апрелю у нас уже были на руках платы устройства с отладочной частью (см рис. 2). Сделать корректную разводку платы и определиться с компонентами удалось со второй попытки.
Рис 2. Отладочная плата устройства
Примерно в это же время были получены первые прототипы корпуса, изготовленные на 3D принтере, см. рис 3. Надпись была сделана в виде наклейки, которая оборачивала весь корпус, отпечатанный на принтере.
Рис 3. Прототипы корпуса
Некоторые моменты разработки
И после этого был дан старт разработке пресс форм для изготовления корпусов из пластмассы на одном из предприятий Екатеринбурга. Как оказалось, процесс изготовления форм для корпуса и колпачка достаточно длительный и потребовал коррекций, несмотря на то, что на 3D принтере проблем с изготовлением корпуса не было. В итоге корпуса были получены на два месяца позже срока. И чтобы результат был, как у фирмы Apple, нужно использовать горячую отливку вместо холодной.
Для разработки устройств, имеющих функции шифрования предприятие должно иметь лицензию ФСБ. Достаточно быстро за 2 месяца, включая работу по выполнению лицензионных требований, данная лицензия была получена.
Кроме того, для того, чтобы пользователи могли понять, что они устанавливают ПО, которое выпущено нами был получен сертификат для подписи приложений. Как оказалось дешевле всего получить этот сертификат тут codesigning.ksoftware.net/
Отметим, что для разработки ПО, работающего с устройством Key_P1, для организации поддержки ОС Windows и Linux, а также Mac после ряда дискуссий была выбрана система Qt.
В течение всего этапа разработки вносились коррективы в ТЗ, поскольку только после реализации некоторых функций приходит понимание того как сделать это удобно и какой функционал потребуется. В итоге был определён курс на две версии устройства: бизнес и профессиональную.
Профессиональная версия отличается от бизнес версии соответствием классу защищенности КС3 с сертификатом ФСБ (ряд дополнительных условий, в т.ч. защищенный от вскрытия корпус).
Бизнес версия уже выпускается серийно, профессиональная версия находится на этапе разработки. По основному функционалу устройства двух версий будут идентичны.
Когда мы начинали разработку устройства, то даже не предполагали, что утечки информации происходят настолько часто и могут нанести многомиллионный вред и российским компаниям.
В последнее время появился ряд аналитических материалов, посвященных этому вопросу.
Аналитики Zecurion провели более 100 интервью с топ-менеджерами компаний и специалистами по кибербезопасности и изучили реальные случаи выявления преднамеренных и случайных утечек корпоративной информации. Выяснилось, что лишь 8% организаций не страдают от утечек данных, а в 30% компаний крупного и среднего бизнеса фиксируют в среднем по две попытки в месяц похитить ценную информацию, потеря которой сказывается на финансовой стабильности компании. Это подтверждает и максимальный размер ущерба в $30 млн, который понесла российская компания от утечки конфиденциальных данных.
Одни из самых известных утечек данных за последние пару месяцев:
1) В результате хакерской атаки были скомпрометированы данные сотрудников, руководства и клиентов Почтовой службы США (USPS). В руках злоумышленников, возможно, оказались 800 тыс. записей, включая имена, адреса и номера социального страхования американцев, сообщает The Wall Street Journal.
2) Имена, адреса, номера телефонов, адреса электронной почты около 83 млн владельцев домохозяйств и предприятий были украдены через систему JPMorgan Chase, сообщают Ведомости со ссылкой на Reuters. У банка нет информации о том, получили ли хакеры доступ к номерам счетов, паролям, датам рождения и SSN.
3) Крупнейшая в мире компания по продаже стройматериалов и ремонтных приспособлений Home Depot заявила, что 53 миллиона адресов электронной почты клиентов сети магазинов были скомпрометированы. По предварительным подсчетам, убытки Home Depot вследствие взлома составили $56 млн, сообщает портал securitylab.ru со ссылкой на отчет компании.
Работа над ошибками
Основными проблемами, с которыми пришлось столкнуться на этапе бета-тестирования (хотя и проводили альфа-тестирование на десятках компьютеров), и которые устранены на момент написания данной статьи были:
— ошибка «возможно, открыта дверца», которая возникла при определении устройства
— невозможность расшифровать файлы корпоративными ключами
— ошибка работы по каналу scsi при работе нашего драйвера
— было решено устанавливать имена открытых и закрытых разделов на накопителях, вследствие проблем с их восприятием пользователями
— устранены проблемы индикации блокировки пин кодов, после 10 попыток
Также было замечено, что после нескольких открываний/закрываний прозрачной крышки, защищающей USB-разъем Key_P1, она стала закрываться без заметного ранее щелчка, что говорит о быстром износе фиксирующих выступов на корпусе. Вместе с тем, крышка довольно плотно подогнана к корпусу, что в итоге не позволяет ей произвольно отпадать от корпуса, даже при значительном стирании фиксирующих выступов.
Процент брака на первой партии устройств составил около 10%. Такой процент получается на основе допустимого брака импортной базы элементов, деформацией ножек элементов, брака печатных плат. Но в дальнейших партиях после устранения выявленных замечаний, процент брака должен уменьшиться.
Устройство для защиты информации, которое выпустила компания Мультиклет приобрело название Key_P1 MultiСlet (допустимое название Ключ_П1). Основные принципы, которые закладывались в устройство:
— дружелюбный оконный интерфейс
— безопасность данных
— ориентация на индивидуальных и корпоративных пользователей
— мобильность
В целом это устройство для защиты информации на ПК и накопителях, разработанное на базе мультиклеточного процессора и выполнено в виде портативного гаджета с тремя разъёмами: USB – розетка и вилка, а также разъём для SD карт. Устройство, которое получилось изображено на рис. 4.
Рис 4. Результат работ
Краткое сравнение программных и аппаратных решений
Отличие аппаратных устройств защиты информации от программных, таких как (Верба OW 6.1, Лисси CSP 2.0, Бикрипт 4.0, Крипто Про 3.6) заключается в хранении ключей на самом устройстве, отсутствии необходимости установки ПО. Отличие же непосредственно самого устройства Key_P1 от таких аппаратных устройств как Samurai, Шипка, DataShur состоит в том, что рассматриваемое устройство не имеет встроенной памяти для хранения информации (только память для шифровальных ключей, прошивки и т.п.), и предназначено для работы с неограниченным количеством накопителей. А также имеет шифрование на накопителях по секторам 1024 ключами. Таким образом, Key_P1 имеет широкий функционал программных и повышенную защиту аппаратных средств.
2. Как работает Key_P1
Для работы с устройством Key_P1 Multiclet необходимо загрузить приложение Key_P1 Manager. Программа Key_P1 Manager поддерживает весь функционал устройства, обеспечивает инициализацию устройства, инициализацию накопителей, формирует корпоративные ключи и др.
Отличительные особенности программы:
1) Программа не требует установки на операционную систему
2) Для поддержки кроссплатформенной работы рекомендуется сохранить на открытый раздел накопителя версию программы для ОС Windows и Linux
3) Программа, как и устройство Key_P1 Multiclet, не привязывается к конкретному ПК или накопителю, что позволяет обеспечить работу устройства на различных ПК и обеспечить поддержку неограниченного количества накопителей
4) Программа имеет простой и удобный интерфейс, а также обеспечивает разграничение прав доступа к функционалу устройства (по ПИН коду для пользователя и администратора, который может быть от 4-х до 16-ти символов)
Для начала работы с устройством в полном объёме необходимо выполнить следующие шаги:
1) Установить внутреннюю прошивку устройства
2) Провести инициализацию устройства (установка 1024 ключей, PIN администратора
PIN пользователя, тревожного PIN кода, имени устройства)
3) Провести инициализацию накопителей (разбиение на два раздела (открытый и закрытый), установка меток разделов)
Рис 5. Основное окно программы Key_P1 Manager
3. Функционал устройства
1) Защита ПК от шпионских устройств
Key_P1 разрешает работу только обычных накопителей информации, работа «устройств-шпионов» (представляются одновременно клавиатурой и накопителем и других) будет заблокирована. Устройство Key_P1 защищено от проблемы “BadUSB”. Контроль подключенных устройств осуществляется на аппаратном уровне. ПК просто не увидит вредоносное устройство, подключенное к Key_P1.
2) Шифрование информации
Шифрование информации возможно на накопителях и ПК. Шифрование осуществляется по алгоритму ГОСТ 28147-89 с шириной ключа 256 бит.
Шифрование файлов на устройстве Key_P1 осуществляется следующими способами:
1) автоматически при копировании файлов на закрытый раздел инициализированного накопителя: в этом случае файлы на накопителе будут зашифрованы на:
— накопителе по группам секторов при помощи нескольких ключей из 1024 созданных;
— при инициализации устройства.
Для подключения закрытого раздела используется ПИН код пользователя.
2) выбором метода шифрования в пункте «Шифрование файлов»: в этом случае шифрование файлов может осуществляться одним из 3-х способов:
— случайным ключом (несколькими ключами из 1024-х, заданных при инициализации, части одного файла могут быть зашифрованы 1024-мя ключами);
— синхронизированным ключом (с помощью выбранного синхронизированного ключа);
— корпоративным ключом (одним из нескольких ключей предназначенных для шифрования файлов выбранной корпоративной группы):
Рис 6. Шифрование файлов
Окно для расшифрования выглядит аналогично окну, представленному на рис 6.
3) Сейф для паролей
Устройство позволяет сохранять пользовательские пароли и логины на внутреннюю защищенную память устройства Key_P1. В дальнейшем пользователь может, кликнув мышкой, скопировать логин в буфер обмена операционной системы и вставить в нужное поле для ввода логина. Аналогичную операцию можно проделать для пароля. Этим мы обеспечиваем удобное использование и хранение своих паролей, а также защищаемся от кейлогеров на ПК.
Рис 7. Хранилище персональных данных
4) Лог действий и времени
В дальнейшем планируется отображать также основные действия пользователя.
5) Режим «только чтение»
6) Три типа ключей шифрования
А) Случайный
Количество: 1024 штуки (фиксированно)
Применение: для шифрования информации на закрытом разделе накопителей и для шифрования обычной информации.
Рис 8. Формирование случайных ключей
Б) Синхронный
следующими данными: № алгоритма (первый, второй или третий) и начальное значение
(кодовое слово или фраза) для того, чтобы были сформированы одинаковые ключи у
всех абонентов.
Количество: 104 штуки
Применение: для шифрования информации между пользователями, когда нужно быстро произвести обмен конфиденциальной информацией (например, в командировке).
Рис 9. Формирование синхронных ключей
В) Корпоративный
Количество: 512 штук
Применение: для шифрования информации между пользователями внутри компании.
Рис 10. Формирование корпоративных ключей
Для шифрования данными типами ключей используется одно и тоже окно – «Шифрование файлов», см рис. 6
7) Быстрое криптопреобразование
Устройство Key_P1 позволяет провести быстрое шифрование или расшифрование информации. Таким образом, пользователи могут легко и быстро обмениваться зашифрованными текстовыми сообщениями, которые пересылаются с помощью электронной почты, различных систем обмена сообщениями (например skype), социальных сетей и т.д.
Рис 11. Исходное сообщение
Рис 12. Результат шифрования
4. Технические характеристики
Назначение: устройство предназначено для шифрования небольших объёмов конфиденциальной информации.
Скорость работы: с открытым разделом накопителя — до 3,2 Мбит/с, с закрытым разделом накопителя до 1,2 Мбит/с.
Поддерживаемые типы портов USB: 1.1, 2.0, 3.0
Поддерживаемые ОС: WindowsXP, Windows 7, Windows 8, Linux 2.6.х, Linux 3.х
Поддерживаемые типы накопителей: USB, SD, microSD, miniSD, MMC
5. Текущее состояние
Налажено производство устройств Key_P1 (бизнес версии) в городе Екатеринбург.
Устройство запатентовано, выполнено на базе мультиклеточного процессора Multiclet P1.
В устройстве имеются иностранные компоненты, однако разработка, основной процессор, изготовление, включая корпуса, напайку, тестирование – российское в объёме 80% стоимости, что и позволило сделать надпись «Made in Russia». В данный момент ведутся работы по выводу в серию профессиональной версии устройства и получению разрешительной документации на экспорт, т.к. к устройству проявляют интерес зарубежные компании.
6. Дальнейшее развитие
Устройство Key_P1 имеет возможность обновления прошивки (с проверкой ЭЦП перед стартом).
Поэтому на обновление прошивки и ПО составлен приличный список, основные пункты которого:
1) Поддержка Mac OS
2) Меню «Настройки», параметры которых сохраняются на Key_P1
3) Возможность задания личных ключей для шифрования
4) Поддержка функционала ЭЦП
5) Задание критериев установки ПИН кода пользователя
6) Генерация пароля для хранилища аутентификационных данных
7) Настройка списка доверенных устройств и разрешение работы с ними, а также их мониторинг
8) Система сервер-клиент для удаленного контроля за устройствами
9) Защищенный браузер
В перспективе возможно внедрение Key_P1 в почтовый клиент Mozilla Thunderbird, правда есть ряд вопросов, которые надо решить. А также потенциально осуществимым является создание собственного мессенджера или работа совместно с уже существующими, такими как qip, icq.
Представляет интерес и выпуск устройства для внедрения в системные блоки, с подключением напрямую к материнской плате и защитой всех периферийных портов USB. Такое устройство может быть основано на отечественном процессоре Multiclet R1, что повысит производительность в десятки раз. Key_P1 в этом случае сможет защитить от проблем, описанных в статье про безопасность 4G USB модема habrahabr.ru/company/pt/blog/243697/#first_unread. Хотя и современный вариант Key_P1 после выпуска специального обновления сможет защитить ПК от вредоносных устройств.
Кроме того важной особенностью устройства является его простая интеграция в программные системы обеспечения безопасности, т.к. устройство не требует установки ПО и драйверов для ОС.
Устройство для идентификации в ОС использует стандартные драйверы системы.
Одна из причин почему мы здесь
Мы внимательно рассматриваем полезные советы и комментарии пользователей, а также анализируем отзывы клиентов. Именно на основе этой информации и будет сделан выбор ближайших обновлений устройства и направлений его развития. Мы нацелены на то, чтобы сделать качественное и востребованное устройство для защиты информации с широким спектром применения.
В 1988 году американская Ассоциация компьютерного оборудования объявила 30 ноября (день первой зафиксированной эпидемии «червя» Морриса) Международным днем защиты информации (Computer Security Day). Целью Дня является напоминание пользователям о необходимости защиты их компьютеров и всей хранимой в них информации.
Поздравляем всех специалистов, стоящих на страже информационной безопасности!
P.S. К текущему моменту для бизнес версии получено требований:
— ослабления алгоритмов: 0
— добавления спец-ключей: 0
— создания прошивок для взлома: 0
Автор: krufter