Как стать автором
Обновить

Ловушка конкурсов по взлому

Время на прочтение 5 мин
Количество просмотров 65K
Автор оригинала: Bruce Schneier
В продолжение этого топика и новости о конкурсе от разработчиков Telegram предлагаю вашему вниманию перевод статьи Брюса Шнайера 1998 года. В упомянутом топике ссылались на другую его статью, но именно эта, мне кажется, хорошо раскрывает тему бессмысленности затеи с конкурсами. Кстати, именно Брюс, одним из первых, если не первым, заподозрил закладку в затронутом там же ГПСЧ от АНБ.

image

Вы слышите про них постоянно: «Компания Х выплатит $1,000,000 любому, кто сможет пробить их фаервол/взломать их алгоритм/провести мошенническую транзакцию и использованием их протокола/что угодно еще». Это конкурсы по взлому, и они предназначены, чтобы показать, как защищены и безопасны объекты этих конкурсов. Логика примерно такая: мы предложили много денег за взлом нашего продукта, но никто не взломал. Следовательно, продукт безопасен.

Отнюдь.



Конкурсы — ужасный способ продемонстрировать безопасность. Продукт/система/протокол/алгоритм, выдержавший конкурс, очевидно, ничуть не более надежен, чем тот, что никогда не участвовал в конкурсах.
Лучшие продукты/системы и т.д. на сегодня не были объектами конкурсов и, скорее всего, никогда не будут. Конкурсы вообще не производят полезной информации. И тому есть основные причины.

1. Конкурсы в большинстве случаев нечестны

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

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

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

Большинство конкурсов не раскрывают алгоритм. И поскольку большинство криптоаналитиков не достаточно подкованы в обратном инжиниринге (лично я нахожу его скучным и утомительным), они даже не пытаются анализировать систему. Вот почему COMP128, CMEA, ORYX, шифрование Firewire, шифрование DVD, и Netscape PRNG были взломаны через считанные месяцы с момента обнародования (несмотря на то, что некоторые из них широко использовались многие годы). После раскрытия алгоритма изъян часто легко виден, но могут пройти годы, прежде чем у кого-нибудь дойдут руки разгадать и опубликовать алгоритм. И конкурсы тут не помогут.

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

Нечестные конкурсы — не новинка. Еще в середине 80-х авторы алгоритма шифрования FEAL устроили соревнование. Они дали файл с шифротекстом и предложили приз за расшифровку. Алгоритм неоднократно взламывался криптографами путем дифференциального, а после и линейного криптоанализа, и путем прочих статистических атак. Все согласны, что алгоритм безнадежно плох. Но, соревнование, тем не менее, никто так и не выиграл.

2. Анализ никак не контролируется

Конкурсы суть случайные тесты. Можно ли считать, что 10 человек, каждый потративший по 100 часов на взлом, наработали 1000 часов криптоанализа вместе? Или они пробовали одни и те же вещи? Являются ли они компетентными аналитиками или же это просто случайные люди, узнавшие про конкурс и решившие попытать счастья? То, что никто не победил, не значит, что объект надежен… просто никто не победил.

3. Вознаграждения в конкурсах редко оказываются хорошими стимулами

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

Посмотрим для интереса на экономику. Возьмем осторожно $125 в час за работу компетентного аналитика, приз $10,000 — это две недели работы, зачастую не достаточно даже чтобы как следует разобраться в коде. За $100,000 можно попробовать ввязаться, но реверс-инжиниринг вещь утомительная, и опять времени вряд ли окажется достаточно для тщательной работы. $1000,000 выглядит интересно, но большинство компаний этого себе позволить не могут. А аналитик, между тем, не имеет гарантии оплаты: он может ничего не найти, его могут обойти конкуренты, или компания может и вовсе передумать и не заплатить. Должен ли криптоаналитик жертвовать своим временем (и добрым именем) во благо пиар-акции компании?

Конкурсы криптоанализа часто не более, что пиар-инструмент. Спонсирование соревнования, даже честного, не дает гарантии, что люди буду действительно анализировать объект. Успешное прохождение объектом такого конкурса не дает гарантии, что в нем нет дыр.

Настоящей мерой надежности можно считать лишь общий объем проведенного анализа, а не то, проводился или нет конкурс. А анализ — процесс долгий и трудный. Люди доверяют криптографическим алгоритмам (DES, RSA), протоколам (Kerberos), и системам (PGP, IPSec) не из-за конкурсов, но благодаря годам (даже десятилетиям) взаимного рецензирования и анализа. И анализировались эти алгоритмы не из-за неуловимого приза, а потому, что были интересны или широко использовались. Анализ 15 кандидатов на AES займет несколько лет (напомню, это 1998 год /прим. пер./). Во всем мире не найдется такого приза, из-за которого лучшие криптоаналитики бросят все свои дела и побегут исследовать продукцию Meganet Corporation или RPK Security Inc.(две компании, недавно объявившие конкурсы по взлому). Гораздо интереснее найти уязвимости в Java, Windows NT или защите сотовых сетей.



Три вышеприведенные причины — общее правило. Конечно, есть и исключения, но они малочисленны и редки.
Соревнования RSA (и задача факторизации, и их задача симметричного перебора) — хорошие и честные конкурсы. Они хороши не потому, что деньги стимулируют раскладывать числа на множители или строить машины для брут-форса, а потому, что исследователи уже заинтересованы в факторизации и брут-форсе. Конкурс лишь предоставляет отличную возможность проявить себя.
Конкурс AES, хотя он скорее состязание нежели классический крипто-конкурс, тоже честен

Наш собственный конкурс по криптоанализу Twofish предлагает $10,000 за лучшие негативные комментарии об алгоритме, не написанные авторами. Деспотичных правил, что считается победой, нет. Нет шифротекста для взлома или ключей для раскрытия. Мы просто хотим поощрить наиболее существенное исследование, каким бы оно ни было и насколько успешным (или неуспешным) оно ни было. Еще раз, конкурс честен, ибо 1) алгоритм полностью известен, 2) нет волюнтаристских правил, и 3) алгоритм в общественном достоянии ( 4) у него другая цель — НЕ доказать надежность алгоритма /прим. пер./)

Конкурсы, если правильно организованы, могут дать много полезной информации и вознаградить конкретную область исследования. Но они не могут быть мерилом безопасности. Я мог бы предложить $10,000 первому, кто вломится ко мне домой и украдет книгу с полки. Если никто этого не сделает до конца конкурса, вряд ли я могу быть спокоен за безопасность моего жилища. Может оказаться, что приличные грабители просто не слышали про мой конкурс. А может, они заняты другими делами. Или они не смогли вломиться в дом, но придумали, как подделать право собственности и оформить его на себя. Или таки залезли в дом, но оглядевшись, решили подождать и вернуться, когда на кону окажется что-нибудь получше $10,000. Конкурс не доказал ничего.
Теги:
Хабы:
+118
Комментарии 44
Комментарии Комментарии 44

Публикации

Истории

Работа

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн