Сейчас вновь поднялся шум, касающийся внедрения биометрической идентификации, применительно к банкам. Например, клиент идентифицируется по изображению лица и записи голоса. Подобные системы пытаются внедрять уже много лет. Естественно, банки привлекает потенциальное удобство для клиента: можно говорить, что ему больше не нужны никакие дополнительные “идентификаторы”, потому что банкомат уже не потребует банковской карты.
При этом с самой биометрией, естественно, ничего не изменилось: данные, которые предлагается использовать для идентификации, общедоступны. Лицо человека несложно сфотографировать (если, конечно, он не носит постоянно маску). Голос – нетрудно записать. При этом удалённые системы сразу создают новые направления для атак методами социальной инженерии (с повторным проигрыванием голосовой записи, или с трансляцией ответов атакуемого клиента банка).
Естественно, возможны варианты, когда для успешной авторизации требуется ответить на не известный заранее вопрос или, скажем, повернуть голову влево и моргнуть правым глазом. Но так как речь идёт об удобстве использования, вряд ли станут внедрять даже такие элементарные методы интерактивной идентификации. Тем более, что они малоэффективны.
Внутри технических систем биометрической идентификации используются лишь некоторые достаточно простые модели, описывающие лицо, голос или другие параметры. Это, например, означает, что не обязательно точно подделывать лицо. При наличии ошибок в реализации, достаточно предъявить системе авторизации макет, который с точки зрения системы окажется неотличим от оригинального представления. А ошибки – обязательно найдутся.
Биометрическая идентификация должна использоваться только в качестве дополнения к другим методам, и проводить её должен тоже человек (пусть и с применением “технических средств”).
Комментарии (2) »
В марте прошлого года я писал про направление атак, связанное с датчиками систем управления техпроцессами:
Особенно богаты на уязвимости беспроводные системы сбора информации: в случае с проводами – злоумышленник ещё должен добраться до провода, подключиться к нему (что, впрочем, не так уж невероятно, если речь идёт о стратегически важных объектах); радиообмен, обычно осуществляемый в открытом виде без аутентификации, упрощает задачу – данные, в рамках атаки, можно транслировать со значительного расстояния, вплоть до передачи с борта самолёта.
Эта тема, действительно, быстро развивается. Например, на Black Hat заявлен доклад как раз про устройства мониторинга уровня радиации, где речь должна идти и о беспроводных датчиках.
Комментировать »
Схемы с квантовым распределением ключей (или квантовая криптография, часто их называют так) – интересны тем, что в них большую роль играют утечки по побочным каналам. Почему-то часто приходится читать и слышать, что квантовая криптография обладает “абсолютной стойкостью” и её “невозможно взломать, так как взлом запрещён физическими законами квантовой механики”. Понятно, что подобные рассуждения соотносятся с реальностью примерно так же, как элементарная задача о бруске, который под действием силы тяжести без трения скользит по наклонной плоскости, со спуском горнолыжника по “чёрной” трассе (повышенной сложности). То есть, для “сферического в вакууме” случая про квантовую криптографию тоже всё верно написано, но на практике – можно здорово упасть с горы.
Квантовые протоколы предполагают, что стороны смогут определить факт прослушивания канала при помощи статистического анализа принятых квантовых значений, сравнивая переданные и принятые данные при помощи открытого канала. Действительно, если прослушивающая сторона принимала передаваемые фотоны (или другие носители “квантовой информации”), то она обязательно внесла изменения в статистику и будет обнаружена. Проблема в том, что кванты генерирует и излучает вполне классическая установка. Рассмотрим простой воображаемый аппарат, где поляризация испускаемого фотона задаётся при помощи вращающегося диска с набором фильтров: лазерный импульс генерируется в случайный момент времени – фотон проходит через тот или иной фильтр, оказавшийся на его пути, и соответственно поляризуется. В этой схеме определить поляризацию фотона можно не измеряя его – достаточно знать, в каком положении находился диск в момент излучения импульса. Предположим, что двигатель, который вращает диск, излучает систематическую помеху. Тогда положение диска можно вычислить по этой помехе (да, может потребоваться дополнительная информация о стартовой конфигурации и т.п., но это детали). Момент, в который лазер генерирует импульс-источник фотона, также можно определить по той или иной помехе, например, разряд наводит некоторое “эхо” в цепи питания (вариант не столь теоретический, как может показаться). В случае использования более продвинутой системы, построенной на квантовой запутанности, соответствующие утечки информации могут происходить в момент измерения передающей стороной своей части накопленных квантовых пар. Логика прослушивания при этом не меняется.
Если схема защиты передаваемого ключа базируется только на анализе сторонами статистики переданных квантов, то сторона, прослушивающая наводки и побочные излучения передатчика, в идеальном случае получает ту же информацию о ключе, что и участники обмена (соответственно, доступна даже проверка того, что канал, на квантовом уровне, не прослушал кто-то ещё; для этого нужно прочитать в открытом канале сообщения принимающей стороны). Естественно, реальная ситуация заметно сложнее, но и источников утечек – больше: реальная аппаратура содержит большое число элементов, при этом атакующая сторона может использовать активные методы, с отправкой зондирующих импульсов, внедрением разнообразных аппаратных закладок.
Так что говорить о том, что квантовая криптография обеспечит “абсолютную защиту” “на уровне физических законов” – неверно: эти же самые физические законы разрешают всевозможные утечки информации по побочным каналам, от которых необходимо защищаться вполне классическими методами. И тут, по сравнению с современными криптосистемами, ситуация никак не меняется.
Комментировать »
На сайте ESA опубликован отчёт по результатам анализа причин потери аппарата “Скиапарелли” на Марсе. Аппарат, напомню, разбился, так как не выполнил программу торможения и посадки. Отчёт довольно подробный, но некоторых технических деталей всё же не хватает (нет подробного описания архитектуры программного обеспечения и средств разработки, например; нет описания моделей движения и пр.). Авария произошла из-за того, что аппарат преждевременно перешёл в конфигурацию завершающего спуска, отстрелив парашют и проведя минимальное (3 секунды) “окончательное торможение” реактивными двигателями на высоте около 3,7 км. Последовавшее свободное падение завершилось ударом о поверхность Марса с предполагаемой скоростью около 150 м/сек.
Основной результат расследования такой. Причин у нештатного падения аппарата несколько: во-первых, использовавшиеся при разработке модели динамики парашютной системы не обладали достаточной точностью; во-вторых, логика системы управления, – по большей части, это логика в программном коде, – не учитывала возможных “экстремальных” или ошибочных данных, которые могли поступать с различных датчиков (прежде всего, инерциальная навигационная система); в-третьих – при проектировании даже не попытались заложить в систему какую-то устойчивость, а просто рассчитывали на то, что работа всех частей не выйдет за пределы некоторой упрощённой модели, которую сочли эквивалентной штатному снижению (и даже тут ошиблись).
Почему-то в СМИ пишут, что причиной падения “Скиапарелли” стала “тригонометрическая ошибка”, типа, неверно учли “знак значения синуса”. Из отчёта такой вывод не следует. Ошибка с расчётом угла положения (по одной из осей аппарата), приведшая в итоге к “отрицательной высоте” (расчётной) и преждевременному включению последовательности приземления, действительно упоминается, но причина её в том, что сигнальный флаг модуля инерциальной системы навигации, сообщавший о запредельных измеряемых параметрах, действовал слишком долгое время – это не было учтено в логике работы, так как разработчики почему-то рассчитывали на максимальную продолжительность такого режима в 15 мс. А главное, что ключевой дефект совершенно не в этом: так, если бы система управления была спроектирована должным образом, то она могла бы легко компенсировать и ошибку в определении угла, и даже вычисленную “отрицательную высоту”; последняя, впрочем, тогда и не возникла бы. Для компенсации не требовалось даже резервировать системы, достаточно было грамотно сверять имеющиеся данные от нескольких сенсоров (инерциальная система, таймер, радиовысотомер) между собой и с моделью движения. Более того, точное моделирование могло ещё на Земле показать, что возможны ситуации с запредельными угловыми скоростями, соответственно, их необходимо учитывать в логике системы управления. Именно об этом и сказано в отчёте.
Вообще, довольно странно и непривычно наблюдать, что логика в системе управления посадкой аппарата на Марс строится из самых оптимистических надежд на то, что посадка будет развиваться самым простым и благоприятным из возможных вариантов. Как будто проектируется веб-сайт с кодом на PHP (готовым для инъекций запредельных значений), а не система посадки на другую планету.
Комментарии (2) »
Одна из основных перспективных особенностей самоуправляемых автомобилей-роботов состоит в том, что они смогут обмениваться информацией в режиме онлайн. Например, когда одному из автомобилей потребуется сменить полосу движения, он может практически мгновенно договориться об исключении помех в движении с другими машинами, которые едут неподалёку. Считается, что роботами задача оптимизации совместного движения решается существенно лучше, чем “человеческими водителями”. Поспорить с этим довольно сложно. Методы оптимизации известны, протоколы обмена информацией и выработки решений – можно разработать.
Самое интересное начнётся после того, как реализованные в железе протоколы примутся ломать энтузиасты, внося изменения в принадлежащий им автомобиль, в частности, в его программное обеспечение. Если, конечно, ещё возможно будет получить автомобиль в собственность, в чём есть большие сомнения. Но если автомобиль приобрести нельзя, то в качестве инструментальной основы для взломов и атак может быть использовано другое, внешнее по отношению к автомобилю, оборудование.
Предположим, что автомобили-роботы при помощи радиообмена умеют договариваться о том, что один из них безопасно пропустит другой. Однако в протоколе есть дефект, позволяющий, через манипуляцию заголовками пакетов, ввести систему управления одного из автомобилей в некоторое “замешательство”. Не важно, как именно достигается такой эффект: думаю, нет никаких причин для особенных сомнений в “стойкости” автомобильных решений. То есть, получаем ситуацию, когда “хакерский” автомобиль, с чуть изменённой прошивкой, обеспечивает себе право преимущественного проезда, эксплуатируя дефект протокола. (Тут можно заметить, что строгое правило обеспечения преимуществ в движении – несомненно будет внедрено в систему управления автомобилей-роботов, стандарты и технические требования уже готовят.)
С другой стороны, возможность подобных действий – один из факторов, позволяющих обосновывать необходимость отказа от личного автомобиля-робота в пользу аренды услуг такси (именно услуг, не автомобиля), которое контролируется каким-нибудь муниципальным центром управления движением. Понятно, впрочем, что от атак это не спасёт.
Комментарии (1) »
Для того, чтобы ракета поразила цель, требуется информация о том, где данная цель находится. Рассуждение, конечно, очевидное. При этом возможны ситуации, когда сторона, обладающая ракетой нужной мощности и дальности, не обладает подходящими средствами разведки и наведения: например, цель – в море, а нет спутниковых средств или даже просто РЛС, находящихся на кораблях.
Предположим, что присутствует третья сторона, которая имеет и спутниковые средства, и различные РЛС, но эта сторона не должна запускать собственных ракет. Однако эта третья сторона может различными способами помочь с наведением чужой ракеты (негласно). Осуществлять командное наведение, подняв прямой радиоканал к ракете – не самый лучший вариант. Во-первых, он требует полного доверия со стороны запускающих ракету – ведь навести её теперь можно не только на предназначенную цель (понятно, что остаются варианты с самоликвидацией и прочими схемами “управления доверием”, но это излишнее усложнение). Во-вторых, даже если радиоканал зашифрован, факт прямой передачи управления ракетой может быть обнаружен и задокументирован, а это совсем не то, что хотелось бы афишировать нашей “третьей стороне”, формально “сохраняющей нейтралитет”.
Есть другое решение: третья сторона может непрерывно выдавать в эфир навигационный радиосигнал, который привязан к текущим координатам цели. Скажем, это может быть даже набор сигналов, которые кодируют координаты цели относительно некоторой заранее оговоренной точки с известным положением в виде разности опорных сигналов, с той или иной модуляцией. То есть, фактически, получается развитие классической системы радионавигации (Loran-C, “Чайка/Тропик” и др.), которая может работать на относительно небольшой частоте, при этом возможны загоризонтные варианты. На борту ракеты находится приёмник, который корректирует работу инерциальной навигационной системы, принимая опорный навигационный сигнал. Понятно, что сигнал будет доступен для приёма всем, но так как речь идёт о подвижной цели, то вычисление координат можно засекретить, заранее передав необходимые коды коррекции стороне, которая проводит пуск ракеты. Впрочем, тут тоже есть подводные камни: передача кодов коррекции, если она будет задокументирована и сопоставлена с записанным из эфира навигационным сигналом, приводит к прямому раскрытию роли “нейтральной” стороны.
Комментарии (2) »
Предположим, что некий летательный аппарат, пусть это будет крылатая ракета, использует навигацию по карте высот, а высоты в полёте измеряет при помощи радара (который, для упрощения картины, можно считать радиовысотомером). Логика известна: в памяти системы управления находится опорная карта, содержащая контуры (по высоте) местности, над которой проложен маршрут; в некоторые моменты времени система управления измеряет окружающую действительность при помощи радара, зондирующие импульсы которого позволяют построить карту высот, определяет положение, сверяя данные с картой в памяти, и вычисляет коррекцию для инерциальной навигационной подсистемы (это важный момент: инерциальную навигацию, как основной и автономный источник данных о местоположении, пока что не отменяли).
Как поставить помеху данной системе? В теории, можно задавить принимающий тракт радара мощной широкополосной помехой. Эффективность источника такой помехи будет сильно зависеть от его расположения – диаграмма направленности антенны, находящейся на ракете, кардинально ослабляет сигнал, принимаемый с направлений, которые не совпадают с текущим азимутом обзора радара. Так что оптимальный вариант размещения источника помехи – на земле, близко к точке, в которой находится ракета. Что, само по себе, уже весьма затруднительно, да и не имеет особого смысла: проще ракету сбить, раз она всё равно рядом. При этом, подавляющая помеха лишает систему наведения канала, используемого для коррекции, соответственно, если измерить контур “подстилающей поверхности” не удалось, то ракета продолжает полёт по маршруту дальше, с возросшей погрешностью. Если в какой-то момент помеха перестанет глушить радар (например, помехопостановщик отстал), то накопившуюся погрешность система тут же исправит. Современные инерциальные системы очень точны, так что не стоит рассчитывать, что отклонение будет очень большим. Памяти на борту достаточно, поэтому предполагать, что, как в 70-х годах прошлого века, ракета достаточно быстро вылетит за пределы опорной карты – тоже не приходится. Поэтому, даже если оставить за рамками обсуждения оптические системы, простая подавляющая помеха не обладает нужной эффективностью по совокупности параметров.
Более хитрая, активная помеха могла бы влиять на бортовой радар, приводя к искажению измеряемых параметров: то есть, ракета увидела бы другой контур, другой рельеф. Тогда ракету можно плавно увести в произвольную точку на карте. Логика схемы аналогична спуфингу GPS: там подменяются сигналы спутников, что приводит к сдвигу вычисленных координат; здесь – сигнал от рельефа. В теории, действительно, возможно сформировать на приёмной антенне радара такую картину, которая соответствует изменённому, “подставному” рельефу. На практике – потребуется знать очень много дополнительных параметров. Среди этих параметров: точное положение ракеты в момент времени, для которого вычисляется помеха; характеристики сигнала радара, его состояние в момент, когда сигнал помехи достигнет антенны. Заметьте, что так как на борту ракеты присутствует очень точная инерциальная система навигации, то знать положение ракеты тоже необходимо не в какой-то произвольный момент времени, предшествовавший генерации помехи, а именно в тот момент, когда помеха достигнет радара. То есть, в системе координат помехопостановщика, в будущем, пусть и удалённом от настоящего всего лишь на миллисекунды. Кроме того, как ни странно, потребуется информация о параметрах карты в памяти ракеты – в противном случае, как и для подавляющей пассивной помехи, бортовая система управления получает возможность определить, что радар вышел из строя, так как он возвращает заведомо ошибочные данные, которые не совпадают ни с каким фрагментом опорной карты. И если все эти сведения о положении ракеты и её внутреннем устройстве имеются, то нет смысла в помехопостановщике: имея точные данные о местоположении ракеты – её проще сбить противоракетой; ну или, например, остановить заградительной сетью, доставленной беспилотником, раз, очевидно, имеется подавляющее техническое превосходство над стороной, которая ракету запустила.
Естественно, системы наведения сейчас устроены сложнее, используют не только данные о рельефе, измеряют их не только радиовысотомером (кроме очевидной и ненадёжной GPS, есть пассивная оптика, магнитное поле). Всё это значительно усложняет задачу постановки активной уводящей помехи.
Комментарии (4) »
Прямое и универсальное использование квантового компьютера для “взлома” симметричных шифров сводится к (квантовому) поиску при помощи алгоритма Гровера (это аналог полного перебора вариантов). Из-за квадратичного выигрыша, который даёт данный алгоритм относительно перебора на классическом вычислителе, симметричные шифры для сохранения практической стойкости должны использовать ключи в два раза большей разрядности. Но квантовый компьютер может быть использован и для криптоанализа, направленного на тот или иной конкретный шифр, то есть, для снижения стойкости конкретного шифра, а не для простого перебора: успешный криптоанализ – позволяет существенно снизить “мощность перебора”. При этом универсальный квантовый компьютер можно применить для реализации уже наработанных классических техник криптоанализа (с тем или иным выигрышем в производительности, либо без выигрыша), а можно разработать некие новые квантовые методы криптоанализа, что гораздо интереснее.
Эти квантовые методы должны использовать какие-то свойства взламываемого шифра, которые хорошо проецируются именно на возможности квантовых вычислений. Пример. Предположим, что для для заданного шифра можно построить некоторую периодическую функцию, разбивающую всё пространство ключей на интервалы. Период этой функции может эффективно определить квантовый компьютер (это типичная задача, так, на поиске периода основан квантовый алгоритм Шора факторизации чисел). Знание периода позволяет путём анализа нескольких пар, состоящих из открытого текста и соответствующего ему шифротекста, определить, в какой именно из интервалов попадает секретный ключ, а дальше уже перебирать значения только из этого интервала, который, предположим, невелик. (Можно переформулировать: пусть обнаруживается период функции, определяющей возможные ключи – в таком случае, зная период, можно будет проверить только их, прыгая по значениям.) Пары открытых текстов и шифротекстов часто известны на практике. Скажем, HTTPS, использующий TLS в качестве транспорта, подразумевает передачу куки-файлов или известных заголовков запросов. При этом режим счётчика (GCM и пр.) основан на зашифровании последовательных значений. Это грубое изложение, но оно математически сходно с атаками, которые уже несколько лет обсуждаются в публикациях, применительно к различным режимам симметричных шифров.
Другими словами, алгоритм Гровера, “грубый поиск”, является универсальным. Если он будет реализован (а для реализации, применительно к шифрам, потребуется сложный квантовый компьютер с тысячами кубитов), то это затронет стойкость всех симметричных шифров, но приведёт “всего лишь” к росту разрядности ключей в два раза. Однако неверно полагать, что не существует куда более эффективных квантовых методов криптоанализа, которые, в случае появления мощного квантового компьютера, снизят до уровня непригодности стойкость если не самих используемых сейчас симметричных шифров, то их повсеместно применяемых режимов работы.
Комментарии (1) »
Google намеревается в браузере Chrome резко ограничить доверие SSL-сертификатам, выпущенным удостоверяющим центром Symantec. Это касается и других брендов Symantec: GeoTrust и Thawte, главным образом, а также прочих “партнёрских” линеек. Речь идёт о принудительном снижении допустимого срока валидности (не более девяти месяцев – коммерческие сертификаты обычно выпускаются на год и более, это одна из их важных особенностей) и отключении EV-статуса (“расширенная проверка”, самые дорогие сертификаты). Это реакция на выявленные нарушения политик и требований к работе УЦ.
Комментарии (1) »
Достаточно давно (больше семи лет назад) я уже писал о том, что аппаратные закладки можно активировать и в системах, которые к “внешним” вычислительным сетям не подключены, но обрабатывают информацию, поступающую извне. Вообще, введение в модель угроз подобных особенностей оборудования до сих пор встречается нечасто (если речь не идёт о полноценной РЭБ, конечно). Так, разговоры про защиту автоматических систем управления на производстве (АСУ ТП) регулярно сводятся к предложению “установить антивирус” на ПК и тщательно проектировать “сетевые соединения”, а это всего лишь защита от угроз из прошлого, да ещё и сложившихся на других платформах (“офисные системы”), отстающая на один шаг от реальности.
Развитие даже потребительской техники движется в сторону освоения новых сред распространения сигналов и, потенциально, передачи программного кода. Например, обработка голосовых команд давно стала стандартной функцией, однако эти команды могут передавать и одни устройства другим. Причём, не обязательно имитировать человеческий голос, хотя данное направление выглядит весьма занимательно. Есть решения, в которых данные передаются незаметно для пользователя, ультразвуковыми сигналами. Сейчас активно формируется новая среда передачи данных между большим количеством различных устройств. В этой среде нет брандмауэров и сетевых фильтров. Микрофон системы управления “умным домом” не может не принимать сигнал напрямую, иначе им было бы невозможно пользоваться. Побочный эффект: теперь динамики телевизора могут излучать сигнал, транспортирующий инъекцию кода в “умный дом”. Предполагать, что акустический сигнал не может содержать кода вторжения – примерно столь же наивно, как считать, что любые файлы .PDF можно абсолютно безопасно открывать, так как они изначально не являются исполняемыми. Заметьте, что голосовые команды – они уже команды, то есть, в самой концепции прямо связаны с управляющим кодом системы (и реализуются соответственно).
Возникает новое пространство, новые транспортные каналы, слабо связанные с классическими решениями – проводными и беспроводными (WiFi). Естественно, не только акустические: есть немало электромагнитных вариантов (разнообразные радиоканалы Интернета вещей), и даже “офлайновые” схемы – графические коды (QR и пр.). Всё эти каналы подходят для передачи, в том числе, вредоносного кода между большим количеством устройств. А привычный периметр защиты, который уже давно является весьма размытым, скоро будет стёрт окончательно.
Комментарии (2) »