Разработанный в 1995 году Агентством национальной безопасности США популярный алгоритм криптографического хеширования SHA-1 окончательно признан небезопасным. Команда исследователей Google и Центра математики и информатики в Амстердаме сообщили об осуществлении первой в мире успешной атаки поиска коллизий хеш-функций SHA-1 .
Техническое описание атаки очень сложное, однако ее можно сравнить с попыткой преступника хирургическим образом изменить свои отпечатки пальцев с целью выдать себя за другое реально существующее лицо.
Исследователи предупреждали о небезопасности SHA-1 еще более десяти лет назад, однако алгоритм по-прежнему пользуется большой популярностью. В октябре 2015 года исследователи Центра математики и информатики опубликовали доклад о практическом поиске коллизий хеш-функций SHA-1. Тогда эксперты оценили стоимость осуществления атаки с использованием вычислительной мощности облака Amazon’s EC2 в сумму от $75 тыс. до $120 тыс. Сам процесс занял бы несколько месяцев.
Команда Google совместно с экспертами Центра математики и информатики осуществили эту атаку и опубликовали новый отчет, подробно описывающий весь процесс. Атака, получившая название «SHAttered», обошлась исследователям в $110 тыс.
В качестве примера эксперты продемонстрировали два файла в формате PDF с одинаковым хешем SHA-1, но с совершенно разным содержимым [PDF1, PDF2]. По словам исследователей, «SHAttered» дает результат в 100 тыс. раз быстрее, чем брутфорс. Как пояснили ученые, атака требует 9 223 372 036 854 775 808 вычислений SHA-1. С использованием одного процессора на это уйдет 6,5 тыс. лет, а с использованием видеокарты — 110 лет.
В течение 90 дней Google планирует опубликовать PoC-код для «SHAttered».
-
Кирилл Мещеряков
Директор продуктового направления Рутокен, Актив
Обнаруженная атака может стать серьезной проблемой для тех, кто использует RSA подпись в документообороте. Сейчас данные о том, как на практике создается коллизия, не раскрыты. Но уже сейчас понятно, что скорее всего огромному множеству созданных и подписанных за долгое время документов пока ничего не угрожает.
Как только данные о практической реализации будут раскрыты, потенциально можно будет атаковать целевой компьютер и заставить его создавать подписанные документы так, чтобы в будущем была возможность изменить уже подписанный документ и при этом подпись на нем останется валидной, а то очень и очень плохо. Теоретически с помощью коллизий можно атаковать и SSL-подключения, построенные на связке RSA и SHA-1. Например, такая схема используется в ЕГАИС.
Решение я вижу в использовании надежных (еще не взломанных) алгоритмов электронной подписи и хеширования. В нашей стране это ГОСТ Р 34.10-94 и ГОСТ Р 34.10-2001, а с 2019 года ГОСТ Р 34.11-2012 и ГОСТ Р 34.10-2012. Тем, кто не может быстро отказаться от RSA подписи рекомендуется как можно быстрее перейти на алгоритм хеширования SHA-256 и встроить в программное обеспечение детекторы коллизий SHA-1.