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

(Речь здесь идёт только о шифровании, обеспечение целостности и аутентификацию – оставим за рамками заметки. И там же, за рамками, очевидный момент: тезис “внутренней сети” – весьма и весьма спорный.)

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

Авторизованный узел, реализующий автоматический мониторинг, должен знать используемые ключи. Или уметь эффективно вычислять эти ключи. Тогда мониторинг можно реализовать пассивно, без необходимости как-то вмешиваться в канал связи и в передачу пакетов. Ключи, используемые в некоторой сессии, могут быть определены на основе метаинформации, к которой относятся номера пакетов, адреса самих устройств, метки времени; вариантов – очень много. Ключи могут вычисляться на основе некоторого мастер-ключа, известного мониторингу. Опять же, это далеко не единственная схема: возможно применение общей для системы псевдослучайной функции с секретом, которая позволяет узлу, знающему секрет, быстро подобрать ключ; можно даже просто использовать статические ключи на устройствах или внедрить сервер ключей. (Заметьте, что узел, реализующий мониторинг трафика, обычно не испытывает недостатка в вычислительных ресурсах.)

При этом, с точки зрения защиты передаваемой информации, решение с шифрованием окажется заведомо не хуже, чем полностью открытый протокол. А внедрить именно мониторинг – особенной проблемы не составляет, если только сразу проектировать протокол с учётом этого требования. Другое дело, что в случае с шифрованным протоколом, у чисто внешнего решения, предназначенного для “защиты”, возникнут проблемы: это решение должно уметь работать с ключами, как-то получать их, и так далее. Это существенно увеличивает затраты на разработку, по сравнению с “мониторингом” открытого протокола, где можно быстро и просто приспособить имеющиеся в “офисной линейке” решения (с сомнительной степенью полезности).

Естественно, зашифрованный промышленный протокол нужен далеко не всегда. Универсальные требования – это аутентификация и целостность. Однако возможность мониторинга – может быть реализована и для зашифрованных протоколов, то есть, не является здесь каким-то ограничением.



Комментарии (1) »

В инфраструктуре DNSSEC существует самый верхний ключ – KSK корневой зоны. К этому ключу ведут все (штатные) цепочки валидации DNSSEC, соответствующие общепринятой структуре DNS с единым корнем. Главный корневой ключ не менялся с момента запуска DNSSEC в 2010 году: спроектировать и согласовать механизм замены ключа каким-то образом забыли. Сейчас такой механизм появился, и начался процесс подготовки ротации KSK корня DNS: 11 июля в корневой зоне опубликован новый ключ (KSK) – KSK-2017. Так как новый KSK подписан действующим, можно произвести его замену автоматически, используя только DNS. Алгоритм описан в RFC 5011. То есть, если валидирующий резолвер поддерживает RFC 5011, то можно ожидать, что он автоматически заменит старый ключ на новый. Тем не менее, лучше заранее проверить, что резолвер смог получить новый ключ и включил его в список доверенных. Фактическая замена ключей (rollover) намечена на осень этого года (11 октября 2017) – до этого момента нужно убедиться, что ваш резолвер сможет использовать новый ключ, иначе валидация, спустя какое-то время после ротации, полностью сломается.

KSK-2017 можно добавить в резолвер и в ручном режиме, например, скопировав значение ключа из корневой зоны и проверив подписи. Информация о корневых ключах также доступна на сайте IANA.



Комментировать »

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

Создание хорошо сокрытого канала связи представляет проблему. В случае с Интернетом, дополнительный канал может быть спрятан внутри того или иного “обычного трафика”, но подобрать правильный трафик – непросто. Например, не годится метод, когда для маскирования используется специально создаваемая сессия с особым удалённым узлом, даже если эта сессия является “обычной” парой “HTTP-запрос/HTTP-ответ”: во-первых, будет зафиксирован факт отправки запроса; во-вторых, активная атакующая сторона может перехватить соединение, прервать его, а потом повторить запрос самостоятельно, тем самым выяснив какие-то детали обмена информацией.

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

На практике эта схема сталкивается с трудностями распределения ключей. На первый взгляд, можно предположить, что узлы просто используют тот или иной типовой вариант протокола Диффи-Хеллмана (DH). Но этот протокол обычно виден в трафике: так, в случае подходящего варианта на эллиптических кривых, открытый ключ представляет собой координаты точки на кривой – соответственно, если прослушивающая сторона знает кривую, то она может элементарно обнаружить факт обмена DH, проверив, что подозрительные байты действительно кодируют точки на кривой. Сам секрет таким образом вычислить, конечно, нельзя, поэтому узлы смогут использовать полученный ключ в других сессиях. Более того, далеко не всегда можно с большой вероятностью сказать, что стороны действительно обменялись ключами, а не просто передали случайные значения (точки). Однако, речь идёт именно о сокрытии факта соединения, а сеанс DH этот факт документирует довольно неплохо.

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

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

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



Комментировать »

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

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

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

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

Биометрическая идентификация должна использоваться только в качестве дополнения к другим методам, и проводить её должен тоже человек (пусть и с применением “технических средств”).



Комментировать »

В марте прошлого года я писал про направление атак, связанное с датчиками систем управления техпроцессами:

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

Эта тема, действительно, быстро развивается. Например, на Black Hat заявлен доклад как раз про устройства мониторинга уровня радиации, где речь должна идти и о беспроводных датчиках.



Комментировать »

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

Квантовые протоколы предполагают, что стороны смогут определить факт прослушивания канала при помощи статистического анализа принятых квантовых значений, сравнивая переданные и принятые данные при помощи открытого канала. Действительно, если прослушивающая сторона принимала передаваемые фотоны (или другие носители “квантовой информации”), то она обязательно внесла изменения в статистику и будет обнаружена. Проблема в том, что кванты генерирует и излучает вполне классическая установка. Рассмотрим простой воображаемый аппарат, где поляризация испускаемого фотона задаётся при помощи вращающегося диска с набором фильтров: лазерный импульс генерируется в случайный момент времени – фотон проходит через тот или иной фильтр, оказавшийся на его пути, и соответственно поляризуется. В этой схеме определить поляризацию фотона можно не измеряя его – достаточно знать, в каком положении находился диск в момент излучения импульса. Предположим, что двигатель, который вращает диск, излучает систематическую помеху. Тогда положение диска можно вычислить по этой помехе (да, может потребоваться дополнительная информация о стартовой конфигурации и т.п., но это детали). Момент, в который лазер генерирует импульс-источник фотона, также можно определить по той или иной помехе, например, разряд наводит некоторое “эхо” в цепи питания (вариант не столь теоретический, как может показаться). В случае использования более продвинутой системы, построенной на квантовой запутанности, соответствующие утечки информации могут происходить в момент измерения передающей стороной своей части накопленных квантовых пар. Логика прослушивания при этом не меняется.

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

Так что говорить о том, что квантовая криптография обеспечит “абсолютную защиту” “на уровне физических законов” – неверно: эти же самые физические законы разрешают всевозможные утечки информации по побочным каналам, от которых необходимо защищаться вполне классическими методами. И тут, по сравнению с современными криптосистемами, ситуация никак не меняется.



Комментировать »

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

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

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

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



Комментарии (1) »

Прямое и универсальное использование квантового компьютера для “взлома” симметричных шифров сводится к (квантовому) поиску при помощи алгоритма Гровера (это аналог полного перебора вариантов). Из-за квадратичного выигрыша, который даёт данный алгоритм относительно перебора на классическом вычислителе, симметричные шифры для сохранения практической стойкости должны использовать ключи в два раза большей разрядности. Но квантовый компьютер может быть использован и для криптоанализа, направленного на тот или иной конкретный шифр, то есть, для снижения стойкости конкретного шифра, а не для простого перебора: успешный криптоанализ – позволяет существенно снизить “мощность перебора”. При этом универсальный квантовый компьютер можно применить для реализации уже наработанных классических техник криптоанализа (с тем или иным выигрышем в производительности, либо без выигрыша), а можно разработать некие новые квантовые методы криптоанализа, что гораздо интереснее.

Эти квантовые методы должны использовать какие-то свойства взламываемого шифра, которые хорошо проецируются именно на возможности квантовых вычислений. Пример. Предположим, что для для заданного шифра можно построить некоторую периодическую функцию, разбивающую всё пространство ключей на интервалы. Период этой функции может эффективно определить квантовый компьютер (это типичная задача, так, на поиске периода основан квантовый алгоритм Шора факторизации чисел). Знание периода позволяет путём анализа нескольких пар, состоящих из открытого текста и соответствующего ему шифротекста, определить, в какой именно из интервалов попадает секретный ключ, а дальше уже перебирать значения только из этого интервала, который, предположим, невелик. (Можно переформулировать: пусть обнаруживается период функции, определяющей возможные ключи – в таком случае, зная период, можно будет проверить только их, прыгая по значениям.) Пары открытых текстов и шифротекстов часто известны на практике. Скажем, HTTPS, использующий TLS в качестве транспорта, подразумевает передачу куки-файлов или известных заголовков запросов. При этом режим счётчика (GCM и пр.) основан на зашифровании последовательных значений. Это грубое изложение, но оно математически сходно с атаками, которые уже несколько лет обсуждаются в публикациях, применительно к различным режимам симметричных шифров.

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



Комментарии (1) »

Google намеревается в браузере Chrome резко ограничить доверие SSL-сертификатам, выпущенным удостоверяющим центром Symantec. Это касается и других брендов Symantec: GeoTrust и Thawte, главным образом, а также прочих “партнёрских” линеек. Речь идёт о принудительном снижении допустимого срока валидности (не более девяти месяцев – коммерческие сертификаты обычно выпускаются на год и более, это одна из их важных особенностей) и отключении EV-статуса (“расширенная проверка”, самые дорогие сертификаты). Это реакция на выявленные нарушения политик и требований к работе УЦ.



Комментарии (1) »
Навигация по запискам: Раньше »