Представлен эксплойт, способный блокировать работу любого SSL-сервера

Romka_Kharkov
На сайте с 08.04.2009
Offline
485
6346

Известная немецкая хакерская группа THC представила эксплойт, реализующий DoS-атаку против любого SSL-сервера с задействованием всего одной или нескольких атакующих машин. Уязвимость присутствует во всех известных реализациях SSL и не может быть устранена без переработки принципа работы сервера.

Идея, заложенная в эксплойт, очень проста и основана на том факте, что для установки SSL-соединения серверная сторона тратит в 15 раз больше ресурсов, чем клиентская. Фактически, все что делает эксплойт, это создает бесконечный поток подключений к серверу, что в конечном итоге приводит к исчерпанию ресурсов последнего. THC уверяет, что для введения среднестатистического сервера в состояние отказа в обслуживании понадобится всего 300 SSL-подключений в секунду, которые с легкостью обеспечит стандартный ноутбук, подключенный к сети с помощью DSL-канала. Большая ферма серверов, оснащенная балансировщиком нагрузки сможет выдержать натиск не более чем 20 таких ноутбуков, пропускной канал каждого из которых которых составляет всего 120 Кбит/с.

Надежной защиты от данного способа атаки пока не существует и вряд ли появится в ближайшем будущем. Максимум, что могут сделать системные администраторы, это отключить механизм SSL-Renegotiation или установить коммерческий SSL Accelerator, благодаря которым удастся повысить производительность SSL-сервера и защититься хотя бы от атак, производимых с одной машины. Разработчики эксплойта утверждают, что производители были поставлены в известность о наличии проблемы ещё в 2003 году, но с тех пор ни один из вендоров не предпринял попыток исправления сложившейся ситуации.

Получить код эксплойта можно с домашней страницы THC, на которой опубликована урезанная версия, которая не будет работать в отношении серверов с отключенным SSL-Renegotiation. При отключении SSL-Renegotiation для совершения атаки потребуется создавать новое TCP-соединение на каждый ресурсоёмкий SSL-handshake. Упрощённую функциональность эксплойта, работающего в ситуации отключения SSL-Renegotiation, можно повторить с помощью стандартного openssl-клиента (главное отличие эксплойта THC в том, что он инициирует серию SSL-handshake в рамках одного TCP-соединения, к чему серверы не подготовлены):

Источник: http://www.opennet.ru/opennews/art.shtml?num=32136

Кто что думает на эту тему? Шо делать ?:)

Есть около 15.000 ipv4 !!! (http://onyx.net.ua/price.php#ipv4) Качественный хостинг с 2005 года - лучшее клиентам! (http://onyx.net.ua/)
vitaleg
На сайте с 27.07.2009
Offline
35
#1
Romka_Kharkov:
DoS-атаку против любого SSL-сервера

Очень сильно сомневаюсь, что эта хрень так просто уложит nginx. Думаю нужно пускать SSL трафик через nginx и не парится.

H
На сайте с 12.05.2007
Offline
133
#2
vitaleg:
Очень сильно сомневаюсь, что так просто уложит nginx. Думаю нужно пускать SSL трафик через nginx и не парится.

Не верно.

Если nginx является просто прокси - не получите никакой разницы.

Если nginx будет устанавливать SSL соединение - получите накладные расходы, мало отичающиеся от апачевских.

Очень зря привыкли что nginx это лекарство от всех болезней.

hvosting.ua (http://hvosting.ua/)
vitaleg
На сайте с 27.07.2009
Offline
35
#3
hvosting:
Не верно.
Если nginx является просто прокси - не получите никакой разницы.
Если nginx будет устанавливать SSL соединение - получите накладные расходы, мало отичающиеся от апачевских.

Очень зря привыкли что nginx это лекарство от всех болезней.

Галактика вне опасности.


Changes with nginx 0.7.64 16 Nov 2009

*) Security: now SSL/TLS renegotiation is disabled.
Thanks to Maxim Dounin.
H
На сайте с 12.05.2007
Offline
133
#4

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

Romka_Kharkov
На сайте с 08.04.2009
Offline
485
#5

Я вот решил протестировать у себя на мощностях и увы не достиг результата :(

С одной стороны это как бы хорошо :D, но с другой стороны я не понимаю тогда, THC вроде же не дебилы :D о чем они пишут?

Изучил я значится сей линк: http://www.thc.org/thc-ssl-dos/

попробовал вот так из баша:


thc-ssl-dosit() { while :; do (while :; do echo R; done) | openssl s_client -connect 127.0.0.1:443 2>/dev/null; done }
for x in `seq 1 100`; do thc-ssl-dosit & done

Ессесно 127.0.0.1 поменял на внешний ИП подопытного сервера, на котором установлено:


Linux <hostname> 2.6.18-274.3.1.el5 #1 SMP Tue Sep 6 20:13:52 EDT 2011 x86_64 x86_64 x86_64 GNU/Linux

Server version: Apache/2.2.21 (Unix)

OpenSSH_4.3p2, OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008

openssl-0.9.8e-20.el5
openssl-devel-0.9.8e-20.el5

Скажу честно, хуже стало той тачке с которой я это запустил :D Она погрязла в openssl процессах , LA стал около 60-80 ..... в общем еле вывел её из ступора :D Эффекта на подопытный сервер это не произвело. (сперва меня конечно побанил собственный файрвол, но потом я проковырял в нем специально дырку с атакующего IP) - результата нет, подопытный сервер как работал так и работает, апач как отвечал так и отвечает....

Дальше я полез собирать бинарик о котором идет речь все в той же ссылке, скомпилилось на ура, запускаю:

через несколько секунд получаю вот что:


[root@vrp13 src]# ./thc-ssl-dos <IP> 443 --accept
.............
.............

Greetingz: the french underground

Waiting for script kiddies to piss off................
The force is with those who read the source...
Handshakes 0 [0.00 h/s], 1 Conn, 0 Err
ERROR: Target has disabled renegotiations.
Use your own skills to modify the source to test/attack
the target [hint: TCP reconnect for every handshake].
[root@vrp13 src]#

Кто-то прояснить может? Я что-то не верно прочел, не верно понял? или каким-то чудо образом моя система не уязвима по этому вопросу?

Romka_Kharkov добавил 27.10.2011 в 03:23

vitaleg:
Галактика вне опасности.

На опеннете без пруфа правда пишут что патч о котором вы говорите якобы решает проблему, но где вылезут баги в связи с этим - не понятно.

edogs software
На сайте с 15.12.2005
Offline
775
#6

Во-первых, это какой-то сюрр

для установки SSL-соединения серверная сторона тратит в 15 раз больше ресурсов, чем клиентская
Большая ферма серверов, оснащенная балансировщиком нагрузки сможет выдержать натиск не более чем 20 таких ноутбуков, пропускной канал каждого из которых которых составляет всего 120 Кбит/с.

В 15 раз больше ресурсов? На каком-нибудь битриксе сайт в 150 раз больше ресурсов будет тратить, чем бот на посылку запроса. А достаточность 20 ноутбуков для валения большой фермы в таком случае просто напросто означает, что 300 ноутбуков достаточно что бы завалить ту же ферму простым http. И в результате получается какой-то бред.

Во-вторых,

через несколько секунд получаю вот что:

Через 15 секунд? После вывода 15 точек?:)

Waiting for script kiddies to piss off................
The force is with those who read the source...

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

Что касается того, почему у Вас не сработал скрипт, так вроде причина написана "ERROR: Target has disabled renegotiations.", и в Вашей же цитате из статьи есть объяснение причины: "опубликована урезанная версия, которая не будет работать в отношении серверов с отключенным SSL-Renegotiation". При чем на сайте указано направление, как модифицировать исходник, что бы она и там работала. Достаточно распространённая практика не выкладывать полностью боеспособное оружие для скрипткиддисов.

Romka_Kharkov:
А полная есть? Мне как бы проверить, понять....

не подскажем, не наша область... в мануале сказано "The tool can be modified to work without SSL-RENEGOTIATION by just establishing a new TCP connection for every", однако... а почему бы Вам не включить ssl-renegotiation на сервере? Раз уж урезанный эксплоит работает только в плане серверов с включенным?

Разработка крупных и средних проектов. Можно с криптой. Разумные цены. Хорошее качество. Адекватный подход. Продаем lenovo legion в спб, дешевле магазинов, новые, запечатанные. Есть разные. skype: edogssoft
Romka_Kharkov
На сайте с 08.04.2009
Offline
485
#7
edogs:

Что касается того, почему у Вас не сработал скрипт, так вроде причина написана "ERROR: Target has disabled renegotiations.", и в Вашей же цитате из статьи есть объяснение причины: "опубликована урезанная версия, которая не будет работать в отношении серверов с отключенным SSL-Renegotiation". При чем на сайте указано направление, как модифицировать исходник, что бы она и там работала. Достаточно распространённая практика не выкладывать полностью боеспособное оружие для скрипткиддисов.

А полная есть? Мне как бы проверить, понять....

Andreyka
На сайте с 19.02.2005
Offline
822
#8

У меня была биржа с ssl авторизацикй и 8k ssl одновременно - nginx нагрузку не давал

Вероятно они нашли дыру в реализации OpenSSL библиотеки, сам сервер нагрузку не создает

Не стоит плодить сущности без необходимости
Romka_Kharkov
На сайте с 08.04.2009
Offline
485
#9

Andreyka, ты как обычно взрываешь моск, только в этот раз по доброму, ты окончательно меня запутал. :)

Еще раз: То что я описал выше в мирных целях выложено в "не полной версии", можно ли качнуть где-то "полную" (ту которая покажет результат наглядно так сказать)? Или мне надо renegotiation включить в апаче что бы получить эффект?

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

Raistlin
На сайте с 01.02.2010
Offline
247
#10

Как написал edogs, описанный сплойт - сюрреализм. У нормального админа он не заработает впринципе.

HostAce - Асы в своем деле (http://hostace.ru)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий