Четверг, 22.06.2017, 18:34
 
Главная Регистрация Вход
Приветствую Вас, Гость · RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Модератор форума: Chris, IIIeLesT®, GeNetiK, aka 
Форум » Твой Комп » Хакинг » DDoS Уязвимости
DDoS Уязвимости
IIIeLesT®Дата: Воскресенье, 03.02.2008, 13:09 | Сообщение # 1
Рядовой
Группа: Модераторы
Сообщений: 17
Статус:
обзор дыр, приводящих к DDoS

DoS-атака считается самой грубой атакой в сети. Финальный результат атаки - падение, зависание или просто отключение какой-либо части сервера. Как правило, уязвимости данного типа происходят из-за недочетов программистов, которые написали сервер. На настоящий момент нет ни одной системы, против которой нельзя было бы осуществить DoS-атаку. Самой надежной системой остается по-прежнему забетонированная гиря без ручки (чтоб на ногу не уронить случайно). Если, например, на XP-сервер еще не нашли дырку, то это всего лишь значит, что у него еще все впереди :). Так что заDoS`ить можно все, что угодно. И ты это сам поймешь, когда прочитаешь этот небольшой обзор DoS-уязвимостей.

WIN-DoS

Начнем с любимой мастдайки. Первый на очереди у нас IIS 4, входящий в комплект NT-4.0 Server, и долгое время на серверах с NT-ей именно он и стоял. Позже начали устанавливать Apache по причине большей надежности и открытого кода (а, следовательно, полной бесплатности). Дырка была обнаружена ребятами из eEye. Основана на неправильной обработке запроса файла с расширением HTR. В оригинале данный баг (переполнение буфера) должен давать доступ на чужую тачку, но в четырех случаях из пяти происходит банальный обвал сервака с последующим зависанием. Можно завалить и руками, послав телнетом:

POST /tralala.htr HTTP/1.0

Host: www.server.com

Transfer-Encoding: chunked

AAAAAAAAAA (и так 1-3 кило :))

[enter][enter]

Брать тут:

Exploit: www.eeye.com/html/Research/Advisories/AD20020612.html

Patch: www.microsoft.com/technet/security/bulletin/MS02-028.asp

Следующая стадия развития IIS - версия 5. Ставится вместе с 2000-Server. И тут не все гладко. Первая дырка появилась при обработке внутреннего поля запроса Content-length - в этом поле лежит длина передаваемых данных. Так вот, если туда написать 5300000, то независимо от того, полетят вслед за запросом сами данные или нет, сервер выделяет память под них (сначала в RAM, потом на винте) на пять метров с копейками. Сам запрос достаточно короткий:

GET /index HTTP/1.1

Host: 192.168.0.1

Connection: Keep-Alive

Content-Length: 5300000

Authorization: Basic

AAAAAAAAAAA

Послав это на сервер, ты заставишь его отожрать 5300000 с небольшим байт в своей памяти. Как видно, посылать можно хоть telnet`ом. Скорость отжирания памяти просто дикая. От сотни таких запросов сервак (P3-750/256Mb/64k-bit) вышел из себя и в течение двух часов не вернулся обратно - пришлось ребутить :).

Брать тут:

Exploit: www.security.nnov.ru/files/IISContent.pl

Patch: www.microsoft.com/technet/security/

Очередная дырка относится и к IIS 4, и к IIS 5, но только в том случае, если запущена поддержка FrontPage (FrontPage Server Extension). Дыра отлично работает благодаря неправильному обращению к модулю авторизации (author.dll), который запускается при обращении к shtml файлам. При отправке неправильного запроса на сервер с NT4 файл inetinfo.exe просто выпадает. На 2k-виндах данный агрегат не падает, а начинает жутко тормозить. По заверениям Microsoft, файлец должен сам себя перезагрузить, но на практике этого не происходит, в результате чего достучаться до сервака можно, но на запросы он никак не отвечает. Самое интересное - отключение аутентификации в FrontPage не решит проблему :). Для ее решения мелкософтовцы советуют полностью снести FrontPage (хорошо - не посоветовали винт форматнуть) или загрузить патчик. Нашли эту дырочку все те же ребята из eEye. Дыра реально проверялась и забавно работает. Эксплоит они, если сказать честно, недоделали. Поэтому делается все так: запускается наша любимая хакерская программа telnet, начинается коннект с серваком. Далее пихается в телнет текст того самого эксплоита. Все, можно запускать браузер и наблюдать, а точнее не наблюдать, итоги работы дырки.

Брать тут:

Exploit: http://www.eEye.com/html/advisories/FPDOSNT4.txt - для NT4

Exploit: http://www.eEye.com/html/advisories/FPDOSNT4NT5.txt - для 2k

Patch: www.microsoft.com/technet/security/bulletin/ms00-100.asp

И последняя на сегодня дырочка в мастдайке. На этот раз расковырял ее Georgi Guninski, который больше специализируется по ковырянию всяких IE и NN. На этот раз мелкомягких подвела реализация xml и запроса PROPFIND. Вот что надо послать серверу:

Вместо слова "ДАННЫЕ" надо вписать примерно 130 кило чепухи (любой - хоть букву "А"). При первом запросе вылетит ошибка 500, при втором запросе сервачок перезагрузится :). На самом деле это не чистый DoS, потому как тут происходит BufferOverflow, а, следовательно, теоретически возможно запустить любой (или почти любой) код на сервере. Но в настоящее время это никем не осуществлялось. На страничке автора есть эксплоит (на перле), так что можно брать и изучать.

Брать тут:

Exploit: www.guninski.com/iispropover.html

Patch: www.microsoft.com/technet/security/bulletin/MS01-016.asp

ЛИНЬ-DoS

Теперь переходим к другому виду систем - к Linux и его семейству. Многие считают, что данный вид систем более надежный по сравнению с Windows. Однако по сравнительной статистике в Linux-совместимой системе многие баги, который удалось найти до настоящего момента, давали root-права, а, следовательно, полный контроль над системой. Связано это, прежде всего, с более простой (с точки зрения программиста) реализацией удаленного доступа к системе. То есть система изначально рассчитывалась так, чтобы не было большой разницы, сидишь ты рядом с серваком или соединен через пол земного шара по TCP/IP.

Итак, первая дыра - достаточно старая, но была часто юзаема. Именно благодаря ей ложился практически любой сервер. Эту дырочку нашли 10pht (ныне зовутся @stake). Живет она в PHP3- и PHP4-серверах. Срабатывает при ошибке, точнее - при записи этой ошибки в log-файл. Тип уязвимости - так называемый format string Vulnerability, то есть специально созданный запрос на сервер вызывает сбой у него в мозгах. Запрос очень большой, потому приведу только ссылку на exploit. В настоящий момент большинство серваков пропатчено :(.

Брать тут:

Exploit1: www.security.nnov.ru/files/apache.c - против Apache с подрубленным php

Exploit2: www.security.nnov.ru/files/7350cowboy.c - работает против PHP3

Exploit3: www.security.nnov.ru/files/phpxpl.c - этот валит и PHP3, и PHP4

Patch PHP3: www.php.net/distributions/php-3.0.17.tar.gz

Patch PHP4: www.php.net/do_download.php?download_file=php-4.0.3.tar.gz

Следующий проект - OpenSSH - был поломан неким Joost Pol. В идеале ошибка в OpenSSH должна давать зарегистрированному пользователю root-права, но при тестировании все, что удалось добиться, - это падение сервака (иногда просто отключение данного сервиса, а иногда - уход в полный даун со стопроцентной загрузкой). Патч ребята выпустили достаточно шустро, но, как это часто бывает, при установке "по умолчанию" никто за патчами не лезет. Так что если есть открытый порт, можно посмотреть и версию (за спрос денег не просят), и, если она находится в промежутке между 2.0 и 3.0.2, то должно сработать smile - первая патченная версия 3.1. Многие админы не любят оставлять telnet, однако практически все любят ставить SSH, считая его более надежным. Как показала практика, для падения сервера не всегда необходим даже зарегистренный пользователь. Причина бага - buffer overflow. Реализация - как всегда - шлется больше, чем ждут, на что сервер обижается и падает.

Брать тут:

Exploit1: www.security.nnov.ru/files/osshchan.tgz

Exploit2: www.security.nnov.ru/files/x2.tgz

Patch1: www.openbsd.org/cgi-bin/cvsweb/src/usr.bin/ssh/channels.c.diff?r1=1.170&r2=1.171

Patch2: www.pine.nl/advisories/pine-cert-20020301.patch

Если у тебя в сетке есть любители почитать чужую корреспонденцию, то знай, как правило, все (даже самые навороченные) линуховые сниферы используют Sniffit или Dsniff. Сейчас ты узнаешь, как бороться с первым из них. Этот снифер имеет встроенную функцию перехвата e-mail-заголовков, потому очень удобен для прочтения чужой почты. Так вот, именно в ней и живет наша бага. Дырку эту нашли достаточно давно, однако с тех пор более новых версий так и не вышло.

Брать тут:

Exploit1: online.securityfocus.com/data/vulnerabilities/exploits/sniffit.c

Exploit2: online.securityfocus.com/data/vulnerabilities/exploits/5niffi7.c

Exploit3: online.securityfocus.com/data/vulnerabilities/exploits/sniffit-ex.c

Если у нас установлен Debian-проект, то патчи лежат тут:

Patch: ftp.debian.org/debian/dists/stable/main/source/net/sniffit_0.3.7.beta-6.1.diff.gz

Если же у нас просто исходники, то будем патчить сами. В файле sn_analyse.c в строках 163 и 175 меняем функцию strcpy на strncpy и прописываем примерную длину адреса. Это не лучший вариант, потому что слишком длинные адреса будут урезаны, но это все же лучше неработающего снифера.

Теперь давай поглядим, как ломаются proxy, если это SQUID 2.2 или 2.4 любой версии, даже с пометкой "STABLE" :). Честно говоря, не могу себе представить, как тестируют сервер для того, чтобы ему дать пометку "стабильный". Этот сервер падает от следующего: любимым telnet`ом коннектятся к проксику (по умолчанию порт 3128) и пишут туда следующее:

PUT ftp://server.com/here/my/home/page/1/2/3/ HTTP/1.1

Content-type: application/octet-stream

Content-length: 0

Pragma: no-cache

[enter][enter]

Все! Прокся лежит! Вася Пупкин решил залить файлы на свою хом-пагу через проксю, для этого сначала решил создать директорию (последнее время зовутся папками) "3", и все! Была прокся у Васи, и нет больше прокси. По-моему это просто глюк бета-тестирования.

Брать тут:

Exploit: www.security.nnov.ru/files/sq_xpl.c

Patch: www.squid-cache.org/bugs/showattachment.cgi?attach_id=38

И еще один глюкавый шедевр для линуксоидов - всем известный wu-ftp, который был сделан на основе FreeBSD`шного сервера и долгое время считался самым надежным, если не сказать единственным надежным, FTP-сервером. А ломаться он начал на версии 2.6.1. Причем очень просто - достаточно зайти любым пользователем (даже anonymous) на сервер, набрать "ls ~{" и наслаждаться упавшим сервером.

Securityfocus даже не стали выпускать для этого дела exploit, потому как уронить сервер мог любой человек, с любой платформы. Самое простое - это набрать в браузере адрес "ftp://ftp.server.com/~{" - и сервер ftp.server.com уходит в глубокий даун с отрубанием ftp на корню. Для каждой версии сервера патчик нужен свой, потому приведу ссылку на страницу с патчами для разных версий.

Брать тут:

Patch: online.securityfocus.com/advisories/3680

ALL-DoS!!!

А сейчас давай поговорим о "неломаемом". Прежде всего, нет, никогда не было и не будет "неломаемых" систем. Есть просто системы, которые пока никто не смог сломать :). Ну да ладно, к чертям философию - перейдем к практике.

Первая глюка - это модемный баг. Какая бы навороченная ось ни стояла, будь то линукс, последний юникс или примитивная мастдайка, если жертва сидит на DialUp`е и пытается кидать пальцы, есть реальная возможность заставить его перезвонить :). Если у него ZyXEL или он читает Х, то, скорее всего, ничего не получится. Но попробовать стоит ;). Есть такая хорошая команда - ping, так вот, согласно RFC то, что в ping`е прилетело, то и должно быть послано обратно в ответе. А еще есть хорошая команда модему - "+++", которая говорит ему, что следующие данные не для пересылки, а для него самого. То есть если послать "+++ATH" во время работы в Инете, то мопед перейдет в режим приема данных "для него" и по команде "ATH" положит трубу. Так что перед использованием данного метода пропатч свой мопед, если же у тебя зюхел, то тебе неслыханно повезло, у него между "+++" и "ATH" должна быть задержка не меньше 0.3 секунды, а это вполне достаточно для устойчивости против обвала. Итак, суть в следующем: посылается пинг с содержанием "+++ATH0", и при ответе вражеский модем бросает трубу, жертва перезванивает. Под линухом команда ping сама по себе exploit, потому как имеет параметр -p для посылки данных. Достаточно набрать "ping -p2B2B2B41544830 IP_жертвы", и dial-up перейдет в состояние redial-up :). Для виндов придется скачать программульку отдельно.

Брать тут:

Exploit1: newdata.box.sk/2000/hangping.zip

Exploit2: newdata.box.sk/xcoder/rocketv1_0.zip

Patch: В строке инициализации модема надо прописать ATS2=255 (а лучше поставить выделенку :).

Теперь давай посмотрим на нашего провайдера. Заходим на страничку, где они хвастаются своим "оборудованием", и читаем router Cisco 7500. Хорошая железка, дорогая, но ломается. Ломается она от неправильного (это они так думают :)) пакета SNMP. После чего маршрутизатор, а, следовательно, и та часть сети, которая висит за ним, просто перестает работать. Если роутер один, значит вся сеть будет просто отрезана от внешнего мира. Ни войти, ни выйти. Вот был провайдер - и нету.

Брать тут:

Exploit: online.securityfocus.com/data/vulnerabilities/exploits/ciscokill.c

Patch: online.securityfocus.com/bid/4132/solution/

Следующая "неломаемая" вещь - это Oracle. Это тот самый сервер баз данных, на котором сидит FBI и прочие, тот самый, который прошел всю возможную сертификацию по безопасности и признан "наиболее надежным". Именно Oracle используют в тех местах, где от компьютерных данных может зависеть жизнь человека. И именно его можно ломать. Дырка проявляется в самом начале авторизации, а, следовательно, для ее юзанья не требуется регистрация пользователя. Найдена она была PGP Security. Если сервер запущен на Linux-платформе, то его можно просто уронить, но если сервак стоит на win, то можно получить еще и полный контроль над системой с правами пользователя от имени которого был запущен сервак :). Ломабельные версии 8.1.5, 8.1.6 и 8.1.7.

Брать тут:

Exploit: www.security.nnov.ru/files/8iwasbreakable.c

Patch: metalink.oracle.com (патч номер 1489683, выдадут только после регистрации)

Если же стоит версия 8.0 этой неломаемой базы, то все становится еще проще. Достаточно телнетом сконнектиться на порт 1521 и написать любую туфту, какая только придет в голову, и сервак послушно ложится, потому как горестно задумывается над смыслом жизни, разбирая этот пакет непонятных данных. При этом патч под версию 8.0 не выпускался, а в качестве заплатки предлагают обновить версию сервера до 8.1 или выше.

Брать тут:

Exploit: www.security.nnov.ru/files/kick_orcl.pl

Patch: Только Upgrade до версии 8.1 и выше.

А что такое линукс, ты знаешь? Правильно - это как вигвам: без окон, без дверей, с апачем внутри. Сейчас будем смотреть, как выгонять этого назойливого индейца из жилища. Нет, вигвам поджигать не обязательно, просто достаточно накидать ему MIME-запросов, и если он их не разгребет - а он их точно не разгребет, то сам вылетит. Да еще и с треском, потому как попортит себе лог-файлы на выходе. Как уже говорилось, нет надежных систем, и мнение о том, что Apache неломаем, тоже ложно. Ломаются версии 1.3.1 и 1.2.5. При этом лечению не подлежат ввиду отказа производителя от сопровождения данных версий. То есть лечится только переходом на другую версию.

Брать тут:

Exploit: online.securityfocus.com/data/vulnerabilities/exploits/mimeflood.pl

Patch: Upgrade до версии 1.3.2 или выше.

Ломается все! XFree, хоть меня и побьют пингвиноиды, но это есть жалкое подобие форточек под линухом, которое падает от кривого пакета в 6000 порт. Этот порт по умолчанию открывается с запуском иксов. При падении вслед за сервером XFree улетают проц (100% загрузки), мышь и клава (молчат мертво!). При сканировании близлежащих провайдЫров везде, где был запущен Linux, был запущен и X-сервер. Падучие версии: 3.3.5 и 3.3.6.

Как видишь, DoS-уязвимости есть везде и во всем :). Что и требовалось доказать. Так что дерзай. Удачи тебе в изучении network security! Еще увидимся ;).

Взято с CrowBaR.at.ua


 
DrEliotДата: Понедельник, 11.02.2008, 22:55 | Сообщение # 2
L1nk1n ¶a|2k f4n
Группа: Администраторы
Сообщений: 130
Статус:
По моему DDoS - множественный запрос на сайт, сервер открывает канал для передачи, но ее начала уже не дожидается.В итоге доступ к серверу прекращается.
Поправьте еси ошибаюсь <_<


 
IIIeLesT®Дата: Суббота, 23.02.2008, 01:18 | Сообщение # 3
Рядовой
Группа: Модераторы
Сообщений: 17
Статус:
DrEliot, DDoS это кода слишком много запросов, система не успевает с ними справится, идет перенагруска канала и сервак в тупую
засыхает, тода его может токо спасти одно волшебная кнопка "reset". в какойто мере ты прав, я токо немного подправил...


 
DrEliotДата: Суббота, 23.02.2008, 18:32 | Сообщение # 4
L1nk1n ¶a|2k f4n
Группа: Администраторы
Сообщений: 130
Статус:
Именно так я и хотел сказать :)

 
Форум » Твой Комп » Хакинг » DDoS Уязвимости
Страница 1 из 11
Поиск: