LINUX.ORG.RU

DDos на Apache


0

0

Последние несколько дней следующая петрушка в error логах...
 Дыр не находят но трафик едят изрядно...
 [Wed Feb 06 12:03:17 2008] [error] [client 74.130.235.217] File does not exist: /var/www/html/config
 [Wed Feb 06 12:03:19 2008] [error] [client 193.225.34.1] File does not exist: /var/www/html/en
 [Wed Feb 06 12:03:23 2008] [error] [client 89.128.26.162] File does not exist: /var/www/html/config
 [Wed Feb 06 12:03:24 2008] [error] [client 74.130.235.217] File does not exist: /var/www/html/config
 [Wed Feb 06 12:03:31 2008] [error] [client 74.130.235.217] File does not exist: /var/www/html/config
 
 Кроме того, в access_log следующие строки:
 86.158.211.74 - - [06/Feb/2008:12:03:04 +0500] "GET http://www.microsoft.com/en/us/default.aspx HTTP/1.0" 404 300 "-" "-"
 74.130.235.217 - - [06/Feb/2008:12:03:10 +0500] "GET http://217.146.187.125/config/pwtoken_get?login=clownPw&src=ygodgw&passwd=c243f
a89eef81adb62d47616e2a9ad5b&challenge=cjFiKskGxyouzfxLibAPilpuP5GM&md5=1 HTTP/1.0" 404 298 "-" "MobileRunner-J2ME"

 Модули аля прокси отключены...
 ИПов с подобными запросами много, закрывать фаирволом нереально...
 
 Вопрос, как запретить apache лезть GETами за пределы localhost и что делать с DDoS?
 Перерыл весь интернет, подобные проблемы встречались, но решений никто не предложил..

Тут товарисчи рекомендуют обычно использовать mod_security. Может в части отрезания лишних запросов оно и поможет. Правда, не знаю, что там с накладными раходами. Да и надо ли оно вам? При нормальной настройке они же ве равно никуда не могут вылезти за пределы "localhost".

Что касается dos. Несколько моментов. Может я буду говорить банальные вещи, но лучше их обозначить.

1) Такие запросы, как вы привели, будут всегда. Это нужно принять как данность. 2) Не путайте некоторое кол-во автоматических запросов, которые согласно пункту 1 всегда имеют место быть из-за автоматического сканирования сетей с атаками типа dos/ddos. DDoS -это когда у Вас все лежит. Если не из-за истощения ресурсов машины, то из-за забитого до упора канала. 3) В борьбе с dos поможет настройка syncookies, настройка через iptables ограничений на кол-во одновременных запросов и запросов в минуту, DROP против основных хостов-поставщиков dos трафика и выставление перед апачем какого-то более легкого кэширующего движка типа nginx/squid. 4) В борьбе с ddos вам не поможет ничего кроме комплексных мер вышестоящего провадера/провайдеров, если у него есть соответствующее обродование, типа умных цисок. Или отключения с бстрым обновлением зоны того доменного имени, на которое идет ddos, если машинка поддерживает их несколько.

Valmont ★★★
()
Ответ на: комментарий от Valmont

Спасибо за внимание...
Теперь по существу...
Я смотрел в сторону mod_security, но конкретно, как при помощи него отсечь запросы за пределы localhostа я не нашел, а собрать его и разбираться на месте, не получилось из-за староватой системы (сервер перешел от другого админа... буду полностью переустанавливать, но пока на это нет времени)...
Дело в том, что сообщения в логах вида: 74.130.235.217 - - [06/Feb/2008:12:03:31 +0500] "GET http://209.191.92.93/config/pwtoken_get?login=crowd_LeviTaToR&src=ygodgw&passwd =712d995a9407c3e8eff370c97954480a&challenge=miZQisgexyqAhkbN5Imf7BjEtidZ&md5=1 HTTP/1.0" 404 296 "-" "MobileRunner-J2ME", как я понимаю говорят о том, что мой httpd каким-то образом используют в качестве прокси, но при этом все модули относящиеся к прокси - отключены... Кроме того, до этого была депеша, в которой говорилось, что с нашего ИПа спамят форум одного из забугорных сайтов, причем пользуются обычными GET запросами, аля www.site.com?forum=1&message=2. Мне кажется, что данные из логов коррелируют с депешой, но как это происходит с тз httpd я не пойму...

По поводу DDoS, все верно... Разбор полетов начался после частых падений сервера... В первую очередь я обратил внимание на съедание всей доступной памяти http демонами... Вначале была попытка увеличить память, потом ограничить количество httpd процессов, потом - копание в логах и как результат выяснилось, что каждую секунду на сервер приходит порядка 30 запросов с разных подсетей, основная цель которых - перебор структуры сервера на предмет дырявых скриптов, что повело за собой жуткий аномальный http трафик. На данный момент http потушен до решения проблемы...

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

redhawk
() автор топика
Ответ на: комментарий от redhawk

> Что об этом говорит закон о предоставлении услуг связи?

Чья машина с апачем, тот и папа.

anonymous
()
Ответ на: комментарий от anonymous

Машина с апачем - наша... провайдер исключительно предоставляет выделенный канал и статичный ИП

redhawk
() автор топика
Ответ на: комментарий от redhawk

> как я понимаю говорят о том, что мой httpd каким-то образом используют в качестве прокси

С чего ты решил, что используют? Пытаются пользовать - да. О чём явно указывает код ошибки(404) в строчке лога.

Deleted
()
Ответ на: комментарий от Deleted

Действительно, на этот фат я не обратил внимание... хотя в логах встречаются и строчки вида:
213.140.225.145 - - [06/Feb/2008:15:18:38 +0500] "CONNECT login.icq.com:443 HTTP/1.0" 200 67458 "-" "-"
89.149.242.226 - - [06/Feb/2008:15:19:13 +0500] "POST http://www.glookle.com/usr/proxy/checker5/check.php HTTP/1.1" 404 308 "http://24f0d2c904/" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
88.250.92.35 - - [06/Feb/2008:15:18:44 +0500] "GET http://search.yahoo.com/ HTTP/1.0" 200 67458 "-" "-"

Я не пойму, с чего httpd вообще лезет на эти адреса... к тому же CONNECT явно дает знать о наличии прокси...

redhawk
() автор топика
Ответ на: комментарий от redhawk

Вы не внимательны и плохо владеете предметом обсуждения :-( В лог падает не то, куда обращается апач, а то, что у него попросили. О результатах можно судить по коду. Просили GET -пишет в логе GET. POST, CONNECT, HEAD etc. Все так и напишет.

Valmont ★★★
()
Ответ на: комментарий от Valmont

Если коды подозрительны - типа 200 и т.д.- проверьте, получится ли у Вас выполнить такой же запрос к апачу. Скорее всего Вас через что-то взломали и апач модифицировали или что-то еще.

Valmont ★★★
()
Ответ на: комментарий от redhawk

> 88.250.92.35 - - [06/Feb/2008:15:18:44 +0500] "GET http://search.yahoo.com/ HTTP/1.0" 200 67458 "-" "-" 

$ telnet localhost 80
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
GET http://search.yahoo.com/ HTTP/1.0

HTTP/1.1 200 OK
Date: Wed, 06 Feb 2008 15:51:32 GMT
Server: Apache/2.2.6 (Unix) DAV/2 PHP/5.2.5
Last-Modified: Sat, 20 Nov 2004 20:16:24 GMT
ETag: "3fc328-2c-4c23b600"
Accept-Ranges: bytes
Content-Length: 44
Connection: close
Content-Type: text/html

<html><body><h1>It works!</h1></body></html>Connection closed by foreign host.

Deleted
()
Ответ на: комментарий от Valmont

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

То что взломали апач - маловероятно... пересобирал v2.2.8 - не помогло...
Получение root доступа на сервер - так же маловероятно - никаких следов левого присутствия или брутфорса не обнаружено...

redhawk
() автор топика
Ответ на: комментарий от redhawk

Вы сами себе противоречите :( Ничего не сломано, но все плохо и левые запросы к апапчу и от вас к гуглу и вобще черти-что творится.

Вариантов не так уж много

1) Ничего не сломано и все в порядке. К гуглу нет большого кол-ва запросов и т.д. Апач в умолчательной конфигурации НЕ позволяет никому его использовать как какой-то прокси. Если с ним и с системой все в порядке, то вы просто что-то путаете.

2) Проблема имеется и жалобы на ваш хост тоже имеют место быть. В этом случае

a) криво все сконфигурировано. б) вас таки поломали.

Последний вариант наиболее вероятен. Не буду делать предположений - как. Это крайне неблагодарное занятие. Отключайте диск, смотрите его под другой машиной. chrootkit,rkhunter,rpm -Va, tiger и глаза вам в руки. В действующем режиме tcpdump,ethereal со шлюза и nmap. В конце концов, просто переставьте систему, если она была явно скомпрометирована.

// Читайте маны, используйте поиск. И не ходите на машину по ssh с дырявых виндовых машин. :)

Valmont ★★★
()
Ответ на: комментарий от Valmont

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

Сервер я однозначно буду переделывать - сейчас просто нет возможности...

Посмотрю еще на присутствие руткитов, но что-то мне подсказывает, что в этой сфере все чисто...

redhawk
() автор топика
Ответ на: комментарий от redhawk

Quote: " 3) В борьбе с dos поможет настройка syncookies, настройка через iptables ограничений на кол-во одновременных запросов и запросов в минуту, DROP против основных хостов-поставщиков dos трафика и выставление перед апачем какого-то более легкого кэширующего движка типа nginx/squid."

Valmont ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.