Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   АнтиАдмин (https://forum.antichat.xyz/forumdisplay.php?f=20)
-   -   Dos & DDos анатомия# (https://forum.antichat.xyz/showthread.php?t=49416)

#84mb.akuMa 20.09.2007 10:13

Dos & DDos анатомия#
 
Всем добрый день, хочу поделить всей собранной мной информацией по Dos & DDos атакам, авторов статей к сожалению не запомнил, если они найдутся прошу отписать я с радость укажу имя автора, ну как говорят "в добрый путь"" :)

DDoS - сокращение от английского Distributed Denial of Service, что означает "распределенная атака "отказ в обслуживании"". Слово "распределенная" говорит о том, что атака производится не одним компьютером и, соответственно, не по одному каналу, а целой группой компьютеров-зомби, которые одновременно начинают атаку. Используется как грубая сила, так сказать, танком напролом, для завала сервера (3.14zDoS серверу) или роутера (3.14zDoS целому сегменту сети).

Приблизительная схема DDoS такова:

хакер ломает кучу серваков по всему Инету, устанавливает туда DDoS-модули, а потом, когда возникает соответствующая необходимость, командует всем своим зомбированным сервакам валить жертву. Соответственно, чем больше у него таких зомби, тем страшнее атака. Только представь, ведь существуют DoS-атаки, которые позволяют забить более мощный канал, чем у атакующего, а при DDoS общая пропускная способность всех зазомбированных машин может в десятки раз превосходить пропускную способность атакуемого!

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

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

По видам можно разделить DDoS-модули на саморазмножающиеся (e-mail вирусяги) и размножающиеся вручную (ломаешь и ставишь). Для размножения вручную хорошо подходят компы в интернет-кафе, и если приготовиться к акции за пару месяцев, то можно осуществить хорошую атаку, а если есть друзья в других городах, готовые пройтись по местным интернет-кафешкам, то атака получится просто замечательная. Как правило, серверные модули после установки слушают порт и ждут команд, поэтому вероятность обнаружения у них выше, чем у молчаливых, которые имеют все данные о жертве в себе и ждут своего часа, никак не проявляя себя. Еще делят по запросам: на посылающих "мусор", это случайные данные, как правило, посылаются по UDP или ICMP; расширяющиеся, например, минимальный запрос на HTTP-сервер имеет длину пакета 7 байт, а ответ зависит от сервера, www.yahoo.com в ответ послал 21239 байт, что в 3000 раз больше; и загружающие сервер, что очень эффективно против поисковых машин и страниц, собранных с использованием Perl или PHP.

Итак, хакер нашел себе кучу компов и хочет завалить любимый сервер, как же найти слабое место? Для начала, как и перед любой битвой, надо изучить своего противника. Прежде всего узнать, какая стоит система на сервере, хотя бы примерно. Если это 95 или 98 форточки (что крайне маловероятно), то достаточно знать, что максимальное количество соединений на данной ОС - 255. Понадобится флудилка вроде PortFucker и примерно 3-4 машины. Запустив этот агрегат на порт 80, можно идти пить кофе, поскольку порты забьются достаточно быстро, и до тех пор, пока админ файрволом или роутером не отрежет запросы, сервер будет недоступен ввиду слишком большой занятости. Это больше всего похоже на анекдот про Ржевского, помнишь? Дали мне одну свечку в левую руку, вторую - в правую, дают третью, а я и не знаю, куда ее деть... Вот так и сервер - вроде как занят, вроде работает, а никто этого не видит. Пойдем дальше: если это NT4/2000/XP, то можно и старым способом, но надо значительно больше машин, при 64М RAM на сервере он нормально держит 7000 соединений, а значит надо 30 машин под 95/98, можно и 2-3 под NT, но сами зомби тоже порядком подвиснут. В данном случае можно просто загрузить сервер мусором и забить канал (UDP пакеты), что сильно затормозит сервер. Но как на NT, так и на любом сервере Linux есть такая хорошая вещь, как timeout, то есть ограничение по времени. Это очень скользкая часть, поскольку если ограничение маленькое (1-2 секунды), то клиенты на медленном канале будут с трудом получать необходимое. Но если Timeout около минуты, то это самое слабое место, причем нет разницы, где он установлен, на POP3-порту или на FTP. Можно написать прогу, которая будет коннектиться, посылать команду типа "help" и опять коннектиться, и опять "help", поскольку сервер не отличает "хорошего" клиента от зомби, он будет вынужден висеть с каждым клиентом по минуте, а это достаточно для забивания всех возможных ресурсов. Если же жертва - поисковый сервер, то можно сконнектиться, сделать запрос по букве "а", вторым сконнектиться, сделать запрос по букве "б" и т.д. Все закончится тем, что сервер будет искать и мучить себя до потери пульса, а пульс сервак "пень-3/256Mb/канал на 64к" потерял после двенадцатого запроса. Если же это определенно линух, да еще и на хорошей машине, то тут только мусор, то есть если машина хороша, то слабое место в ней - это ее канал в И-нет, а следовательно, надо набирать как можно больше зомби и устраивать одноразовую массовую бомбардировку.

Ну, допустим, что с жертвой мы разобрались, теперь давай посмотрим на хакерское "оборудование", то есть программы для зомбирования машин. Прежде надо определиться, что именно лучше всего подходит. Если есть доступ к большому количеству интернет-кафе и им подобным заведениям, то писать надо определенно под форточки. Если же есть огромное количество серваков с возможностью запуска Perl, то на нем и надо писать. А если имеется просто 2000000 показов баннеров и при этом есть возможность показывать Flash-баннеры или html-баннеры (что значительно лучше) то ими и надо пользоваться. Затем, выбрав на чем писать и выбрав тактику нападения, неплохо посчитать, сколько надо машин и что лучше делать - серверподобного зомби или же все-таки бомбу с часами. Определившись и прикинув план работы программы (например, ждем 12:00 пятницы тринадцатого, затем начинаем бомбежку), стоит приступить к написанию программы. При реальных взломах не рекомендуется пользоваться готовыми DDoS-модулями, они хороши в обучающих целях, но на практике их быстро найдут, и жертвоприношение не осуществится.

Продолжение следует

groundhog 20.09.2007 10:39

Цитата:

Всем добрый день, хочу паделить всей соброной мной информацией по Dos & DDos атакам, авторов статей к сажелению не запомнил, если они найдуться прошу отписать я с радость укажу имя автора, ну как говорят "в добрый путь"
Во-первых раздел не тот, а во-вторых - 7 ошибок для такого простого предложения... По-моему это сурово для столь маленькой аннотации... :)

BlackCats 20.09.2007 11:27

Цитата:

Сообщение от groundhog
Во-первых раздел не тот, а во-вторых - 7 ошибок для такого простого предложения... По-моему это сурово для столь маленькой аннотации... :)

я говорю, ты реально чтоль - учитель русского языка?:) не первый раз за тобой замечаю подобные посты :)

по статье.. вродебы уже много подобных статеек.. так что не думаю что у статьи есть шансы на жизнь..
PS
поправил:
Всем добрый день, хочу поделить всей собранной мной информацией по Dos & DDos атакам, авторов статей к сожалению не запомнил, если они найдутся прошу отписать я с радость укажу имя автора, ну как говорят "в добрый путь"

#84mb.akuMa 20.09.2007 14:19

За рус яз сори я с ним не в ладах еще со школы, насчет статьи, это только начало.
BlackCats, спс за компиляцию, придеться, ставить Word. +)))

ShadOS 20.09.2007 14:22

Баян.

#84mb.akuMa 20.09.2007 15:03

ShadOS, ок значит приостанавливаю серию статей по этой теме? Если это некому не интересно тогда тему можно закрыть.

Scif 27.09.2007 16:26

Стоп стоп стоп как это останавливаешь, не катит, мне интересно. Требую продолжения статьи

GiZZZ 27.09.2007 16:32

Цитата:

Сообщение от Scif
Стоп стоп стоп как это останавливаешь, не катит, мне интересно. Требую продолжения статьи

+1.. также интересно...

#84mb.akuMa 27.09.2007 23:29

Четыре основных типа атак DoS
 
ЧЕТЫРЕ ОСНОВНЫХ ТИПА АТАК DoS

Насыщение полосы пропускания(bandwidth consumption)

Эти атаки основаны на том, что хацкер под завязку заполняет всяческим мусором атакуемую им сеть. Необходимым условием для этого является наличие у взломщика толстенного канала (во всяком случае, толще, чем у атакуемого хоста). Он отсылает на вражеский сервак тучи различных запросов и прочей информационной пурги, насколько позволяет толщина его канала, забивая линию атакуемой машины. Соответственно, забитая линия не может пропустить к серваку еще какие-либо другие запросы. Вот тебе и DoS :). Пользователи не могут получить доступ к серверу, а у самого сервера начинает отъезжать крыша, и он даже может упасть в даун. Инфа с сервера становится временно недоступной для юзеров (пока админ не спохватится и не примет меры). Bandwidth consumption - отличный выбор, если нужно временно вывести из строя какой-нибудь web-сервачек или базу данных. А также отлично подходит для выкидывания из сети всякого ламья, хамящего на ирце, - ведь у всякого диалапного ламья коннект часто очень хиленький :). И совсем не обязательно самому висеть на толстенном канале - достаточно иметь удаленный доступ к машине, висящей на таком мощном конце.

Самый типичный (и самый тупой) пример bandwidth consumption - это банальный ping. Почему тупой? Да потому что пакеты ping-запросов и ping-ответов незначительно отличаются по размеру, и канал у атакующего и атакуемого забивается в равной степени - 3.14zDoS может произойти обоим :). Фишка катит, если у атакующего канал шире, чем у атакуемого, но это туфта, так как атакуемыми чаще всего оказываются сервера (с широченными каналами), а не левые диалапные юзеры. Поэтому "не тупыми" bandwidth consumption-атаками считаются такие, при которых атакуемый комп вынужден отсылать значительно больше информации, чем атакующий. Простой пример - самый обычный HTTP-запрос на страничку. Клиент (хацкер) шлет серваку малюсенький запрос, типа "GET /index.html", а сервер ему шлет эту самую index.html, размер которой может оказаться в сотни раз больше, чем размер запроса. Дальше вступает в силу элементарная математика: хацкер висит, допустим, на мегабайтном канале, а сервак - на десятимегабайтном; разница - пропускная способность канала сервера больше в десять раз; следовательно, если ответ будет по размеру превосходить запрос, скажем, в пятнадцать раз, у хакера будет хороший шанс за3.14zDoS`ить вражеский сервак. Все очень просто :). Но тут есть еще одна заковырка: а как же index.html, которая отправляется хацкеру от сервера с каждым новым запросом? Она же тоже забивает атакующему канал... Да уж, еще как забивает - от такого трафика хакерюга со своим хиленьким каналом уйдет в даун, когда сервер еще и почесаться не успеет :). Решение, как всегда, по-хацкерски простое: подменять source IP (айпишник отправителя) в пакетах запросов на какой-нибудь другой, чтоб проклятые index.html уходили на этот самый другой адрес, не забивая канал хакера. При этом желательно, чтоб source IP в каждом запросе был разный, а то нехилая нагрузка пойдет на машину с этим адресом, и может спохватиться админ сети, которой она принадлежит, - лишний шум, лишняя возня - ничего хорошего. А так на разные IP`шки приходит какая-то хтмлка - ну, подумаешь, ошибка маршрутизации...

Если ты хорошенько пошевелишь мозгами, то сам догадаешься, как можно кого-нибудь задосить еще одним способом: находится огромная сеть (с кучей машин) на широченном канале, и ей шлются запросы, source IP в которых заменен на IP жертвы. Вся эта байда начинает слать на несчастный IP`шник ответы, думая, что запросы пришли именно от него, забивая по самые уши канал атакуемому и устраивая бедняге мега3.14zDoS :). Такая фишка называется усилением (или умножением) DoS-атаки.

Недостаток ресурсов (resource starvation)

Атаки, направленные на захват критических системных ресурсов: процессорное время, место на харде, память и т.д. Resource starvation часто очень похож на bandwidth consumption: взломщик опять-таки отсылает кучу запросов на сервер, после чего тому наступает полный 3.14zDoS :). Но на этот раз пакеты не забивают канал хоста-жертвы, а занимают, скажем, все его процессорное время. Ведь на обработку каждого пакета сервак затрачивает некоторое процессорное усилие. Остается только выбрать такие пакеты, на которые процессорного времени тратится достаточно много, и вперед - бомбить ими тачку! Канал-то может оказаться достаточно широким - с ним все будет ок, а вот проц просто захлебнется, обрабатывая всю эту бомбежку. Результат - все остальные процессы висят, пользователи не могут получить доступа к сервисам. Еще один популярный пример - это когда хард забивается логами. Еcли админ - ламо, он может криво отконфигурировать систему логирования на своем серваке, не поставив ей лимит. Тогда достаточно выбрать такие пакеты, которые жрут в логах больше места, и начать отсылать их на сервер пачками. Через какое-то время файлы логов разрастутся до немереных размеров, сожрут все место на харде, и машина опять окажется в "затруднительном положении". Правда, это покатит только на самых ламерских серваках - грамотные люди держат логи на отдельном от системного харде. Также resource starvation актуален, если у хакерюги уже есть какой-то (ограниченный) доступ к ресурсам машины (например, у него есть непривилегированный аккаунт) - тут поле для действий значительно шире в том смысле, что взломщик не ограничен одними только пакетами, которые он может отсылать на удаленный сервер. Тут немаловажную роль играет, насколько грамотно построена система квотирования. Например, если на хостинге есть доступ к cgi, можно написать скрипт, который нехило жрет памяти или, опять же, ресурсов проца (ну, скажем, циклически создает какие-нибудь огромные массивы/хэшы в памяти или вычисляет какие-нибудь громоздкие математические формулы), и обратиться к нему несколько сот/тысяч/десятков тысяч раз. Если система квотирования настроена глючно, то такой скрипт очень скоро отожрет всю память (или забьет проц), а если все пучком, то процесс скрипта, достигнув поставленного ему лимита в жоре памяти, не получит доступа к мозгам до тех пор, пока не выгрузит оттуда старые данные.

Ошибки программирования (programming flaw)

Эти атаки направлены на слабые места, баги и недокументированные функции операционных систем, программного обеспечения, процессоров и программируемых микросхем. Зная дырки в чем-то из вышеперечисленного, можно создать и отправить по назначению определенный пакет, который вызовет какую-либо ошибку, переполнение буфера или стека. В результате этого возможны тяжкие последствия для всей системы. Она будет виснуть, глючить и биться в конвульсиях. Причем, если хорошо знать архитектуру процессора, на котором запущенна система, то не составит труда вызвать какую-нибудь некорректную инструкцию или операцию в их кремниевых мозгах. Все мы знаем, что не существует осей, софта и железа без багов. Недаром bug-traq на хакерских серваках и в нашем журнале пополняются с завидной регулярностью, так что почаще в них заглядывай и сам экспериментируй (может, сам чего никому пока еще не известного откопаешь), и делай соответствующие выводы.

Самый тривиальным пример: программер пишет клиент-серверное приложение, работающее по такому-то протоколу, в спецификации которого сказано, что такое-то поле такого-то пакета может содержать максимум 65500 бит данных. Программер сам писал клиентскую часть, и, как оказалось, на практике больше 255 бит в это поле пихать не приходится, поэтому он написал свою клиентскую часть так, что она шлет в этом поле максимум 255 бит, а больше - не умеет. В серверной части проги кодер написал, что такая-то переменная (в которую будет передаваться содержимое того самого поля из того самого пакета) имеет длину 255 бит (все равно больше приехать не может, так как клиентская часть не умеет отсылать больше 255). Поставили сервак, раздали юзерам клиентские проги - все пучком, все работает, все довольны. Но тут пришел хакер, разобрался во всем этом деле и устроил в этом маленьком раю большой 3.14zDoS. Он модифицировал клиентскую часть (или написал свою) так, чтоб та слала 65500 бит данных в том самом поле именно того пакета. Все хорошо, протокол позволяет передавать данные такой длины, а вот сервер, написанный программером, к такого рода отношениям не готов... Данные приходят, и все 65500 бит записываются в переменную, размер которой 255 бит, - нарушается организация памяти, прога глючит, сервак висит, клиенты не могут получить к нему доступ. 3.14zDoS, короче :).

Маршрутизация и DNS


Ну, тут и так все ясно - если иметь доступ к маршрутизатору, то можно изменить таблицы маршрутизации таким образом, чтоб желающие попасть на сервак с IP`шником таким-то попадали совсем на другой IP либо на IP, которого вообще не существует. То же самое DNS, но уже в отношении сайтов. Если получить доступ к кэшу DNS`ки, можно привязать искомое доменное имя совсем к другому IP`шнику, и тогда юзвери будут попадать на этот самый совсем другой сервер, а не туда, куда они хотели. Если же вставить вообще несуществующий IP, то это будет больше похоже на DoS.

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

DoS-АТАКА - ВИРТУАЛЬНЫЙ АНАЛОГ ЯДЕРНОЙ ВОЙНЫ?

Как видишь, DoS-атак существует несколько, а средства для их проведения вполне доступны, и все необходимые инструменты для них можно найти в Инете. Так что устроить такую атаку при большом желании может даже ушастый ламер, если найдет готовые тулзы (обезьяна с гранатой). Последствия, к которым приводят такие забавы, могут оказаться очень даже не детскими и пострашнее, чем последствия от вирусов. Именно поэтому DoS становится все более популярным и широко используемым в среде кибертеррористов и киберманьяков, а правительства некоторых развитых стран даже рассматривают вопросы ведения виртуальных войн. Так что будущее, которое лет 10-20 назад нам рисовали в своих рассказах писатели-киберпанки, уже не за горами.

Продолжение следует

Fugitif 27.09.2007 23:42

Some Info also here:

http://attrition.org/security/denial/


is in english but can be useful.


Цитата:

This is the Denial of Service Database, version 2.00. The
information contained here has been gathered from a wide variety of
sources. Headers of mail or URLs of web pages have been left intact
to cite the original source as much as possible


Время: 02:24