Привет, Хабр! Сегодня мы расскажем вам об одном из простых способов сделать наш мир немного безопаснее.
Флешка — привычный и надежный носитель информации. И несмотря на то, что в последнее время облачные хранилища все больше и больше их вытесняют, флешек все равно продается и покупается очень много. Все-таки не везде есть широкий и стабильный интернет-канал, а в каких-то местах и учреждениях интернет вообще может быть запрещен. Кроме того, нельзя забывать, что значительное количество людей по разным причинам с недоверием относятся к разного рода «облакам».
К флешкам мы все давно уже привыкли и многие из нас помнят, как сначала робко появилась поддержка usb mass storage в Windows 2000, а потом, немного погодя и в Windows Me. Многие понимают, насколько удобно сейчас пользоваться флешками и помнят, как раньше мы все мучались с ненадежными дискетами и непрактичными оптическими дисками.
Автор этих строк примерно в 2004-м году был счастливейшим обладателем симпатичного 128-мегабайтного носителя в моднейшем корпусе с металлической вставкой. Он был моим верным спутником и хранителем ценной для меня информации долгие годы, пока я наконец не потерял его вместе со связкой ключей, к которой он был прицеплен.
И, казалось бы, потеря ключей — это довольно рядовое событие, которое наверняка происходило с каждым, но меня оно заставило срочным образом поменять все замки в доме.
Все дело в том, что в дебрях файловой системы моей флешки лежали сканы моего паспорта, сделанные на всякий случай (кто же знает, когда могут пригодиться сканы паспорта?). А в сочетании с настоящими ключами от реальной квартиры, данные о прописке превращаются в заманчивую возможность даже для тех людей, которые раньше может быть и не помышляли о квартирных кражах.
Чему этот инцидент меня научил?
В первую очередь — бережнее относиться к своим вещам, а во вторую — тому, что любую информацию, которую хоть каким-либо даже косвенным образом можно использовать во вред тебе, необходимо защищать.
Что могут предложить флешки в плане защиты?
Первый, самый очевидный вариант, флешки с аппаратной защитой и без внешнего программного управления, у них обычно клавиатура на корпусе — все в них вроде бы неплохо, но стоят они в большинстве своем совершенно диких денег, может быть за счет своей малосерийности, а может быть и жадности продавцов. Очевидно, ввиду высокой стоимости, особого распространения не нашли.
Второй вариант — навесная программная защита для обычной флешки.
Вариантов много (их можно легко нагуглить), но все они имеют явный плюс в виде почти нулевой стоимости и неизбежные ограничения, связанные с необходимостью установки специального программного обеспечения на компьютер. Но главный минус навесной защиты — это ее слабость.
В чем же слабость — спросите вы.
А дело в том, что любая шифрующая диски программа использует в качестве ключа шифрования последовательность полученную по особому алгоритму, например PBKDF, из пароля, который вы будете использовать для разблокировки. И что-то мне подсказывает, что вряд ли пароль, который придется часто набирать, будет длинным и сложным.
А если пароль короткий и простой, то подобрать его по словарю будет не таким уж и сложным делом.
Злоумышленник, завладев вашей зашифрованной флешкой даже на короткое время, может скопировать с нее криптоконтейнер. Вы так и будете думать, что данные по-прежнему в безопасности. А на самом деле все это время кто-то усиленно подбирает ключ к вашему контейнеру и с каждой минутой подходит все ближе к своей цели.
Поэтому, если вы не враг самому себе, то пароль должен быть «стойким». Но поскольку вам же потом этот же «стойкий» пароль придется многократно набирать — это начинает противоречить утверждению на предыдущей строке.
Что же делать — спросите вы.
Можно ли поставить между защищаемой флеш-памятью и компьютером аппаратную защиту так, чтобы это было удобно, надежно и более-менее доступно? Чтобы хотя бы можно было обойтись без монструозного корпуса с аппаратными кнопками.
Оказывается, да, можно, если вы российский производитель устройств электронной подписи (токенов и смарт-карт).
Безопасная флешка все-таки существует
В устройствах Рутокен ЭЦП 2.0 Flash флеш-память подключена через специальный защищенный контроллер, прошивка которого, карточная операционная система Рутокен, целиком и полностью разработана специалистами компании «Актив» (карточная ОС Рутокен находится в реестре отечественного ПО Минкомсвязи).
В эту прошивку встроен специальный управляющий модуль, который контролирует потоки данных, входящие на флешку и выходящие из нее.
А так как в карточной операционной системе Рутокен испокон веков есть функциональность, обеспечивающая доступ к криптографическим ключам электронной подписи по PIN-кодам, мы реализовали в ней своего рода «вентиль», который может быть открыт, закрыт или открыт в одностороннем режиме (например, только для чтения). Вентиль этот как раз и управляется PIN-кодом. Не зная его, этот вентиль невозможно повернуть.
Теперь представьте, что такой вентиль по умолчанию находится в положении «закрыт». А чтобы открыть его, нужно предъявить PIN-код, который знаете только вы. Причем, вентиль автоматически закрывается при извлечении устройства из компьютера. И количество попыток ввода неправильного PIN-кода жестко ограничено. Причем, устройство защищено от физического взлома и извлечения флеш-карты.
Получается вполне безопасная, надежная и удобная система. Мы реализовали ее в виде небольшой управляющей программы, которая называется — «Рутокен Диск».
Флеш-память устройства Рутокен ЭЦП 2.0, на котором работает «Рутокен Диск», разбита на 2 области: одна служебная, для эмулирующего CD-ROM раздела с управляющей программой; вторая — для пользовательских данных.
При подключении такого устройства к компьютеру вы увидите два физических диска. CD-ROM раздел сразу доступен для чтения и автоматически монтируется, а в операционных системах Windows еще и всплывает симпатичное окошко.
Защищенный раздел выглядит как ридер карт памяти, но без вставленной в него карты, доступа к данным нет.
Однако, запустив приложение и введя простой PIN-код, вы моментально получаете доступ к своим файлам.
Сам токен уже много лет продаётся и возможность реализации защищённой флешки в нем была изначально. На токен для организации безопасного доступа загружено приложение Рутокен. Диск.
Вместо резюме:
Если вы доверяете свою информацию обычной флешке — храните её, как зеницу ока. В случае же с Рутокеном ЭЦП 2.0 Flash и Рутокен.Диском — можно быть гораздо спокойнее за конфиденциальность своих данных. Хотя и полностью расслабляться никогда не стоит.
Заранее отвечу на некоторые вопросы, которые обязательно у кого-нибудь появятся:
- GUI под macOS и linux — будет.
- Возможность открывать защищенный раздел в режиме read-only, чтобы без опаски засовывать флешку в самые непредсказуемые места — будет.
- Кнопочка для безопасного извлечения раздела, чтобы не тыкать мышкой в трей — будет.
Остальные вопросы, пожелания и замечания оставляйте в комментариях — постараемся ответить на все вопросы.