Ловим вирусы, исследуем угрозы, спасаем мир
322,23
рейтинг
23 октября 2015 в 13:27

Разработка → Security Week 43: непростые простые числа, криптография в HDD, патчи Adobe и Oracle

Открывая дверь в мир криптографии, будьте осторожны! Может выйти так, что закрыть не получится. Конечно это совпадение, но едва я пришел в себя от новости прошлой недели про коллизии в SHA-1, как тут же возникла тема о взломе зашифрованного трафика, с атакой на протокол Диффи-Хеллмана. Ну, уже по названию понятно, в чем дело, да? Эксперт в области криптографии Брюс Шнайер в мае этого года опубликовал гневный пост о «любительском шифровании». В любой другой сфере деятельности высказывания типа «оставьте это профессионалам, вы все равно ничего не понимаете» обычно вызывают волну критики, но применительно к шифрованию, с таким утверждением, пожалуй, можно и согласиться. Тем более что история вокруг протокола Диффи-Хеллмана, с участием математиков, программистов и даже Эдварда Сноудена, является хорошим тому доказательством. Это история о том, как хороший, годный алгоритм плохо реализовали на практике.

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

Все эпизоды сериала можно найти тут.

Простые числа — слабое место протокола Диффи-Хеллмана
Новость. Исследовательская работа.

В этот раз я даже не буду пытаться объяснять что-то простыми словами. Бесполезно. Диффи-Хеллман — это протокол безопасного обмена ключами для установки зашифрованного соединения, изначально опубликованный в 1976 году. Витфилд Диффи и Мартин Хеллман (а также некоторые другие товарищи) одними из первых предложили решение важной проблемы — как обменяться ключами для шифрования так, чтобы подслушивающая сторона не смогла их перехватить.

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


Предсказуемый юзернейм и ненадежный пароль плавают в океане из цифр и букв.

Так вот, чтобы этот алгоритм действительно работал, и его невозможно было взломать, то самое простое число, которое передается открыто, должно быть Большое и Случайное. Если оно Случайное, но небольшое (например, используется длина ключа в 512 бит), то вероятность взлома повышается. Что и было показано в двух методах атаки, опубликованных исследователями в начале этого года — FREAK и Logjam. Надо понимать, что знать ключ (то самое простое число) недостаточно, чтобы сразу все взять и расшифровать. Но вычислительная мощность, например, для атаки, Logjam требуется небольшая — с помощью мощностей Amazon EC2, исследователям потребовалось всего 7,5 часов, чтобы провести необходимые вычисления, которые значительно упрощают дальнейшую расшифровку перехваченного зашифрованного трафика.

Но то были ключи длиной 512 бит, которые уже давно признаны ненадежными, а появились они благодаря экспортным ограничениям США на стойкую криптографию, введенным еще в 80-х. Ключи длиной 1024 бита считались надежными, но, как показало новое исследование группы из 14 криптографов, возможны варианты. Тут 7,5 часами на Амазоне не обойдешься, требуется огромная и очень дорогая вычислительная система, и примерно год времени. Если бы простые числа, используемые на практике, действительно были случайными, то и это бы не помогло. К сожалению, в реальных имплементациях протокола Диффи-Хеллмана они недостаточно случайные. То есть, какая-то очень богатая организация по имени А (или Н, или Б), может эксплуатировать эту неслучайность, построить суперкомпьютер за несколько сотен миллионов долларов, погонять его годик и получить, нет, не шифры, а исходные данные, которые дальше уже позволяют взламывать конкретный трафик сравнительно быстро.

В результате, такая могущественная организация позволяет взламывать до 66% соединений IPSec VPN, 26% подключений через SSH и 18% подключений HTTPS. Судя по данным из документов, украденных Эдвардом Сноуденом, бюджет АНБ на эксплуатацию уязвимостей в сетевых коммуникациях, действительно огромен — 1 миллиард долларов ежегодно. А значит, вероятность, что там действительно построили суперкомпьютер и дали ему проанализировать большое количество перехваченного зашифрованного трафика — ненулевая.


Клавиатуру со специальной кнопкой «сделай мне безопасно» можно найти, кажется, на всех сайтах про IT Security. Ну то есть вообще на всех.

И что делать? Да пока ничего. Желательно убедиться, что ваш браузер не использует совсем уж слабую версию протокола D-H с 512-битными ключами (можно проделать тут). А какого-то готового решения для возможного взлома коммуникаций с использованием 1024-битного ключа пока нет. Diffie-Hellman используется в огромном количестве протоколов, поэтому вот прямо сейчас взять и починить не получится. По словам Алекса Халдермана, одного из авторов исследования, на это потребуются годы. Это плохие новости. Относительно хорошие новости в том, что это по-прежнему Очень Дорогой Метод Взлома, и таковым он останется еще очень долго.

Многочисленные уязвимости в встроенных системах шифрования жестких дисков
Новость. Исследование.

ОК, атаку на протокол Диффи-Хеллмана тривиальной назвать нельзя, а вот эта новость показывает, как можно значительно ослабить криптографию из-за куда более простых ошибок. Авторы нового исследования купили сразу много внешних жестких дисков с функцией шифрования данных. Детальное изучение методов шифрования показало, что способов взломать защиту там, мягко говоря, немало. Начнем с самого простого: по умолчанию в некоторых моделях WD даже не спрашивают пароль для доступа к данным. То есть информация, с одной стороны, шифруется, с другой — доступна кому угодно.


Мужик нажимает пальцем на воображаемый замок. Номер два в списке самых заезженных картинок, после клавиатуры с кнопкой.

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

В общем, вот что получается. Вы покупаете жесткий диск, видите на коробке надписи вроде AES256, и уверены, что ваши данные под защитой. На самом деле возможны нюансы, и вы даже не узнаете — какие именно — потому что даже в одной серии жестких дисков контроллеры (и вообще железо) могут отличаться. Степень доверия к таким «готовым» решениям по шифрованию зависит от уровня паранойи. В исследовании не было ни одного примера быстрого и простого взлома, во всех требовался то ли паяльник, то ли брутфорс. Вряд ли этим будет заниматься тот, кто нашел винчестер, случайно забытый вами в такси. Вероятно этим могут заняться правоохранительные органы, если они вами вдруг заинтересуются. При этом есть масса способов усложнить им жизнь, и уж если вы рассматриваете такие сценарии, то об этих способах следует знать.

Закончим тему криптографии тем, с чего начали. В методах шифрования данных есть огромное количество тонкостей, из-за которых «любительские» их реализации действительно могут быть менее стойкими, чем необходимо. Многие вещи в криптографии надо доказывать «на бумаге», потому что практический эксперимент не всегда можно провести, а когда становится можно — уже как правило поздно что-то менять. Потребителями криптографии сейчас являются вообще все люди, пользующиеся интернетом, и эта сложная тема касается каждого. Но вывод, для пользователей и компаний, желающих оценить надежность используемых ими методов, довольно простой. «У меня все зашифровано» — это не повод успокоиться и не использовать другие методы защиты данных.

Очередной набор патчей для Adobe Flash (3 уязвимости, 1 критическая) и Oracle Java (154 уязвимости (!), 84 серьезных)
Новость про Adobe. Новость про Oracle. Пост в блоге Oracle.

Что случилось у Oracle? Вышло большое обновление, закрывающее 154 уязвимости в 54 различных продуктах. Из них, 84 уязвимости могут эксплуатироваться удаленно. 24 уязвимости в Java SE разных версий, из них 7 опасных. По словам Эрика Мориса, ответственно в Oracle за Security Assurance, эксплуатации уязвимостей in-the-wild они не наблюдают. Такое количество найденных и закрытых багов связано, отчасти, с поквартальной моделью выпуска обновлений. То есть следующий апдейт стоит ожидать только в январе 2016 года.


Кредитная карта с замком, очень мило. На безопасность не влияет никак.

Что случилось у Adobe? Закрыты три уязвимости в Flash Player, из них одна критическая (CVE-2015-7645), позволяющая запустить код на компьютере с установленным Flash. Патч Adobe вышел раньше запланированного (собирались на следующей неделе), спешка связана с тем, что уязвимость уже эксплуатируется.

Возможно было бы интересно поговорить о разном подходе двух компаний к выпуску обновлений: Adobe придерживается еженедельного графика (как и Microsoft), Oracle — поквартального. Но интереснее посмотреть на этот скриншот с сайта Adobe:



И в Oracle Java, и в Adobe Flash много, очень много уязвимостей. Новости этой недели вновь подняли старую тему — о том, что давайте уже все перестанем использовать и то, и другое. Вот и в Google Chrome с 1 сентября уже сделали запуск Flash-объектов только по требованию, а еще раньше там была фактически заблокирована Java «по умолчанию». Да, в общем-то можно рассматривать и то, и другое, как тяжкое наследство из интернета начала 2000-х, но подход «давайте уже запретим», понятно, работать не будет. Подход «запускайте Java в изолированном браузере, а лучше в виртуальной машине» если и будет работать, то для очень ограниченного круга людей. Так что раньше, чем Java и Flash окончательно запретят, возможно их удастся сделать более безопасными — и новости этой недели в общем-то позволяют надеяться на лучшее. А вообще, есть ли смысл пытаться донести весть про уязвимый Flash до самого широкого круга пользователей? Ведь это, по сути, технические детали, а говорить лучше о более понятных вещах, например про защиту платежей с использованием банковских карт в интернете.

Что еще произошло:
Для iOS 9 таки сделали джейлбрейк, но уже закрыли в апдейте до 9.1. А все потому, что джейлбрек был публичный, и миллион долларов за приватный эксплойт пока никто не получил.

GMail к следующему году перейдет на строгую идентификацию почтовых сообщений, с использованием протокола DMARC. Тоже самое планируют сделать и другие популярные сервисы. Протокол DMARC начали разрабатывать три года назад. Он работает совместно с существующими системами идентификации сообщений, такими как DKIM, и направлен, в основном, на борьбу с фишингом.

Древности:
«Hard-662»

Очень опасный резидентный вирус, стандартно записывается в запускаемые .COM-файлы. По понедельникам в 18.00 выводит на экран текст «It's hard days night!» и стирает по 50 первых секторов на всех доступных дисках. Перехватывает int 21h.

Цитата по книге «Компьютерные вирусы в MS-DOS» Евгения Касперского. 1992 год. Страницa 69.

Disclaimer: Данная колонка отражает лишь частное мнение ее автора. Оно может совпадать с позицией компании «Лаборатория Касперского», а может и не совпадать. Тут уж как повезет.
Автор: @f15
Ловим вирусы, исследуем угрозы, спасаем мир

Комментарии (13)

  • 0
    зашифрованных с использованием протокола Диффи-Хеллмана
    WUT?! DH — распределение ключей, а не шифрование.
    • 0
      Ооо, какой провал.
      Поправляю, спасибо
  • 0
    RU страничку с MSI GUID опять не заполнили.
    19.0.0.226
    Version number
    19.0.0.226

    ActiveX (Internet Explorer)
    EE56217C-B3F9-402B-B4EC-63F090F51D3D

    Plug-in (other browsers)
    2F881898-5300-4D68-AE46-F5FE074D59AA
    • 0
      Что за страничка?
      • +1
        MSI GUIDs от Adobe для обновления посредством WSUS. Редирикт на ru-версию происходит через пару секунд, причем данные страниц разные, проверьте сами.
        Я использую Wsus Package Publisher. В последней сборке оснастка сама извлекает нужный MsiProductInstalled, в связи с чем искать MSI GUID не надо, но проверять стоит. Может мой комментарий кому-то пригодится.
  • +6
    Подписи к картинкам порадовали.
  • 0
    .
  • 0
    А какие альтернативы протоколу Диффи-Хеллмана? Помню читал что-то про SIDH, но абсолютно без понятия насколько он популярный/практичный.
    • 0
      Насколько я понимаю, альтернативой может быть допиленный DH. Цитирую отсюда: либо DH с длиной ключа 2048, либо Elliptic-Curve Diffie-Hellman.
      • 0
        А почему тогда проблема починить? Поменял 1024 на 2048 и радуйся.
        • 0
          Если речь идет о вашем (или моем) персональном VPN, то да. А сделать так, чтобы починили вообще все сервисы, где потенциально уязвимый DH используется, сложно, ну точнее, как говорят авторы исследования, это займет несколько лет. То есть я не могу быть до конца уверен, что мое взаимодействие с этими сервисами достаточно защищено. Это плохие новости. Хорошие новости: я в принципе никогда не могу быть уверен в этом :) Поэтому с точки зрения пользователя — это такая теоретическая угроза для параноиков. С точки зрения админа — зависит от задачи и сложности инфраструктуры.
          • 0
            Но есть ведь куча сервисов, которые не заботятся о безопасности, используют устаревшие алгоритмы и тд. Речь не о них, а о тех, кого волнует безопасность. У них не будет сложностей с фиксом. Не надо менять алгоритм/либу/версию языка.
            • 0
              Согласен! Но тут поступили новые вводные, как раз про Elliptic Curve Cryptography: threatpost.com/nsas-divorce-from-ecc-causing-crypto-hand-wringing/115150

              Как обычно, информация достаточно теоретического плана, но интересная — с участием АНБ, квантовых вычислений и прочего. Будет в дайджесте завтра.

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.

Самое читаемое Разработка