Информационная безопасность

индекс
289,89

Crossite DoS

Преамбула


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

В свете последних событий и в процессе поиска информации по DoS- и DDoS-атакам наткнулся на интересную возможность, а именно — межсайтовые атаки. Суть такой атаки проста — в сети есть бесчисленное количество сервисов, позволяющих обращаться к сторонним web-узлам. Это online-переводчики, image-хостинги и прочая и прочая. И если это проверенный сервис, которому доверяют многие, имеющий обширную инфраструктуру и изначально создававшийся для большого потока траффика — этим могут воспользоваться не только добропорядочные серферы, но и «нехорошие дяди» для получения своей выгоды.

Эсперимент


Эксперимент такой атаки может быть поставлен практически над любым сервисом, у которого можно получить прямой адрес обращения к атакуемому сайту.

В моем случае сервисом-донором стал translate.ru.

Сервисом проверки стал kotyachka.ru, который сейчас находится под множественными «пользовательскими» атаками и флуд-штормом. Собственно, и был он взят только потому, что у этого сайта в данный момент времени попасть под автомат бана IP-адреса очень легко и информацию о IP, попавших в бан можно просмотреть прямо на главной странице.

Задача эксперимента была следующей — сделать так, чтобы провоцируемый сайт kotyachka.ru принял IP сервиса translate.ru как IP атакующего компьютера.

Немного поискав в HTML страницы-результата перевода на translate.ru была найдена вот эта строка:

http ://www.translate.ru//url/translation.aspx?direction=er&template=General&autotranslate=on&transliterate=&showvariants=&sourceURL=http://some-url.com

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

Что и было сделано:

user ~ # ab -c 100 -n 1000 "http://www.translate.ru//url/translation.aspx?direction=er&template=General&autotranslate=on&transliterate=&showvariants=&sourceURL=http://kotyachka.ru"

Я не стал дожидаться окончания «теста» и остановил его примерно на середине.
Осталось проверить содержимое главной страницы kotyachka.ru:

image
И сравнить его с IP translate.ru:

user ~ # nslookup translate.ru
Non-authoritative answer:
Name: translate.ru
Address: 195.131.10.152

Bingo!!!

Выводы


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

И если для тех же image-хостингов все зависит от угла кривизны рук тех, кто их делает (как то — проверка URL-а до его отправки стороннему серверу, а не проверка полученного файла после по результатам работы грабера), то для online-переводчиков и других сервисов, работающих непосредственно с контентом сайта все намного печальнее.

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

Будьте бдительны!
+26
14 февраля 2009, 08:09
21

комментарии (22)

–3
odessky #
Знаешь в чем разница между DoS ид DDoS?
В случае DoS — идет тупой флуд с конкретного IP, который банится на раз-два
В случае DDoS — идет атака с обычного зараженного компьютера, и тысячи их. Десятки тысяч. И каждый долбит по чуть-чуть.
0
postdig #
не все сразу.
DOS когдато тоже начинался с тривиального флуд пинга.

а тут какой никакой, но новый вид атаки.
–2
odessky #
Тривиально на файре ставим лимит 1 коннект с 1 IP и флуд идет лесом вместе с новым видом атаки
+3
kibizoidus #
Вы думаете, все так просто решить?
Набрав несколько тысяч таких сервисов, собрав базу URL-ов обращения и написав небольшую софтинку обращения я получу рукотворный ботнет, который будет долбить чей-то сайт с частотой несколько тысяч запросов в секунду.

Да, очень много статистики и простого отбора урлов, но вы думаете, оно того не стоит?
0
kibizoidus #
Прекрасно знаю, ибо изучаю этот вопрос уже не первую неделю. Спасибо за информацию.
+2
zepps #
Гм, господа, DoS, вообще говоря, к флуду никакого отношения не имеет.
DoS — это атака на известную взломщику уязвимость, которая приводит к отказу службы или ресурса. Не больше, не меньше.
0
driver_by #
При таком виде атаки для сервисов аналогичных translate.ru достаточно ввести ограничение на кол-во запросов с одного IP в единицу времени. После этого появится Crossite DDoS, противостоять которому уже гораздо сложней, но для реализации уже нужен тот же ботнет.
–1
almaz #
такие сервисы и так зачастую еле работают чтобы ещё их добивать при попытке посредничества, 4DoS (Distributed Destination Distributed DoS) намного веселее же ;)
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
–2
deerua #
Ты топиком не ошибся?
НЛО прилетело и опубликовало эту надпись здесь
+1
kibizoidus #
Жаль, что вместо обсужения заметки получается такое.
З.Ы. Все-таки я бы посоветовал обновить браузер ^_^
0
Sys3X #
В nginx для этого есть ngx_http_limit_req_module, достаточно его включить и атака подобная той что описана выше не сработает.
0
borisko #
Прокси тоже не зря придумывали.
0
TiGR #
Насколько я помню, translate.google.com кэширует результаты, так что с ним этот трюк не пройдёт.
+1
Denisio #
Вот, я тоже хотел дописать — кэшировать надо. Хотя бы на секунды-десятки секунд. Хотя с другой стороны — если страниц на сайте-жертве много — все не закэшируешь.
0
kurokikaze #
Ничего не мешает изменять какие-либо параметры при вызове.

http ://www.translate.ru//url/translation.aspx?direction=er&template=General&autotranslate=on&transliterate=&showvariants=&sourceURL=http://some-url.com/?rand1231241241
0
kibizoidus #
Единственное, что я могу добавить — очень жаль, что в общем-то все халатно относятся к такому вопросу и лелеят надежды обойтись простыми средствами.

Это в один прекрасный момент может обернуться упавшим сайтом и прочими прелестями.
0
EiZeRR #
Вы немного ошиблись в терминологии — правильнее назвать это Reflection DDoS (RDDoS), а попячить этот сайт можно было гораздо проще, — просто слать пакеты на запрос соединения от имени котячки на сайт translate.ru
0
kibizoidus #
Но тема стоит внимания. В самое ближайшее время займусь исследованиями.
0
developer #
статейка зачет 5 балов.Не знаю как но года 2 назад видел как одна сео контора натравила на другую Гуугл — реально пришли боты на 60 000 запросов! в секунду это по данным днс балансировки — благо он был тогда. вот таки дела товарищи. о том чтоб гугул так натравливали уж давно не слышал, но мало ли сервисов еще?

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