Криптоаналитики: хэш-функция MD5 непригодна для защиты исполняемых файлов

image

Теги: MD5

Голландские исследователи Марк Стевенс, Бенне де Вегер и швейцарский криптоаналитик Арьен Ленстра продемонстрировали, что два совершенно разных Win32-файла могут иметь одинаковое значение дайджестов (результатов хэширования).

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

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

Голландские исследователи Марк Стевенс (Marc Stevens) и Бенне де Вегер (Benne de Weger) и швейцарский криптоаналитик Арьен Ленстра (Arjen Lenstra) продемонстрировали, что два совершенно разных Win32-файла могут иметь одинаковое значение дайджестов (результатов хэширования). Исследователи нашли коллизии на основе атаки с подбором префикса. Конечный дайджест имел вид "18FCC4334F44FED60718E7DACD82DDDF".

Ранее уже демонстрировалась неустойчивость MD5 к коллизиям, но тогда речь шла о взломе паролей и других данных, а не о коде исполняемых файлов. В 2004 г. китайские криптоаналитики Сяоюн Ван (Xiaoyun Wang), Денго Фен (Dengguo Feng), Сюйцзя Ла (Xuejia Lai) и Хонбо Ю (Hongbo Yu), используя суперкомпьютер, обнаружили метод нахождения коллизий алгоритма. Однако подробностей своей работы они не разгласили. Позже другие исследователи сообщали о возможности нахождения коллизий MD5 с помощью обычного пользовательского компьютера.


или введите имя

CAPTCHA
Страницы: 1  2  3  
1
05-12-2007 14:47:24
Ранее уже демонстрировалась неустойчивость MD5 к коллизиямзначит ЛЮБЫЕ файлы подвержены. "Голландские исследователи" пыхнули и показали что исполняемые файлы тоже являются ФАЙЛАМИ
0 |
1
05-12-2007 14:47:31
тю, а для кого секрет что два сурса могут иметь одинаковый хеш? другое дело вы так измените сурс как вам надо, что бы он еще и хеш тот-же имел
0 |
1
05-12-2007 14:51:26
Делается элементарно - подгоняется под хеш вставкой N-ого числа NOP'ов (говоря об 80x86).
0 |
1
05-12-2007 14:53:52
ок, сливаю
0 |
1
05-12-2007 15:08:13
а чтоб еще размер сурса такой же остался?
0 |
1
05-12-2007 16:45:38
перед добавлением nop'ов запаковать бинарник
0 |
1
05-12-2007 18:54:18
Идиоты. Я посмотрю, как и сколько времени вы будете nop'ами подгорять бинарник под хэш. В школу, мля!
0 |
1
06-12-2007 16:45:06
+1 )))
0 |
1
07-12-2007 05:51:40
Идиоты. Я посмотрю, как и сколько времени вы будете nop'ами подгорять бинарник под хэш. В школу, мля! В PE EXE бинаре и так до**я свободного места - засчет выравнивания секций.Может быть вполне достаточно для области которая ничего не делает но влияет на хэш.Здравый смысл говорящий о том что хэш по сути отображает одно множество значений в другое подсказывает что в принципе чтобы произвольно подогнать MD5 хеш достаточно иметь возможность вертеть как угодно 16-ю байтами файла чтобы это не портило работу EXE.А 16 байтов на подкрутить - это реально.Только одно дело если эти 16 байтов компенсации хеша надо грубым брутом подбирать (умрете со старости быстрее) а другое - если их вычисление можно как-то ускорить(а вот тут то опачки).
0 |
1
05-12-2007 15:10:40
бред. как вариант разоблачения можно легко дописывать в MD5 размер исполняемого файла в байтах. Вот и все.
0 |
05-12-2007 15:33:09
Это тоже обходится. Сейчас просто используют несколько типов хешей одновременно.
0 |
1
07-12-2007 15:32:51
А это мысль даже если коллизии для 1 алгоритма найти реально - для всех сразу подогнать чтобы совпали все хеши будет скорее всего проблематично.
0 |
1
05-12-2007 17:39:44
Пройдите по ссылкам: http://www.win.tue.nl/hashclash/SoftIntCodeSign/HelloWorld-colliding.exe http://www.win.tue.nl/hashclash/SoftIntCodeSign/GoodbyeWorld-colliding.exe У них одинаковые размеры файлов. Ранее в сети болтались аналогичные файлы в формате PostScript: http://www.cits.rub.de/imperia/md/content/magnus/order.ps http://www.cits.rub.de/imperia/md/content/magnus/letter_of_rec.ps
0 |
1
05-12-2007 15:49:40
Читайте оригинал http://www.win.tue.nl/hashclash/SoftIntCodeSign/
0 |
1
05-12-2007 16:58:46
огромное спасибо! ключевая фраза там: This implies that both colliding files have to be specially prepared by the attacker, before they are published on a download site or presented for signing by a code signing scheme. Existing files with a known hash that have not been prepared in this way are not vulnerable. По-русски: Это значит, что оба файла должны быть заранее подготовлены атакующим до того, как они будут опубликованы на сайте или представлены на подпись по одной из схем подписывания кода. Существующие файлы с известным хэшем, которые не были заранее подготовлены таким образом, НЕУЯЗВИМЫ.
0 |
1
05-12-2007 17:07:02
гении-математики, думали думали и придумали что если хеш длиной X байт а хешируемый блок Y то коллизий будет ровно N=Y/X штук, т. е. N блоков имеют одно представление хеш функцией. Другое дело - найти эти коллизии, хеш не контрольная сумма, не подберешь. И совсем не факт, что ЕХЕшник с вредоносной нагрузкой окажется коллизией, вероятность такого случая стремится к нулю, для скрытого инфицирования метод просто неприменим. В случае, предложенном Zert, можно считать создание коллизии невозможным.
0 |
1
07-12-2007 06:00:20
Криптографически стойкой считается хэш функция для которой коллизии можно выловить лишь тупым брутом.Для хэшей в 128 и более битов тупой брут требует нереально много времени.А вот если коллизию можно найти быстрее - тут то и опаньки, поскольку тогда становится возможным сценарий когда некто подменяет легитимное содержимое нелегитимным а MD5 - бац и совпадает.
0 |
Страницы: 1  2  3