Назад | Перейти на главную страницу

Журналы Apache: указывает ли множество сообщений 404 на CONNECT к порту 443 на уязвимость?

В моих журналах постоянно появляется много:

"CONNECT XXX.XXX.XXX.XXX:443 HTTP/1.0" 404 218 "-" "-"
"CONNECT XXX.XXX.XXX.XXX:443 HTTP/1.0" 404 218 "-" "-"
...
"CONNECT XXX.XXX.XXX.XXX:443 HTTP/1.0" 404 218 "-" "-"

Это какая-то конкретная уязвимость?

Скорее всего, это попытка использовать ваш сервер в качестве прокси, возможно, из-за вируса бот-сети или script-kiddie. В частности, это (возможно) кто-то подключается к вашему ящику через telnet, например:

$ telnet localhost 80
Trying ::1...
Connected to localhost.
Escape character is '^]'.
CONNECT google.ca 80

HTTP/1.1 400 Bad Request
Connection: close
Content-Type: text/html; charset=iso-8859-1
[more header data ... ]
<html ... />

Вы используете почтовый сервер на этом ящике? Есть ли у вас случайно журналы брандмауэра с указанием повторяющихся подключений или попыток подключения к порту 25?

В этих двух статьях подробно описаны два случая устранения одной и той же проблемы:

В совокупности они предлагают несколько исправлений (которые я обобщу для потомков, но вы должны прочитать всю цепочку для контекста):

  1. Ограничьте CONNECT в httpd.conf с помощью <Limit CONNECT>Deny from all</Limit>
  2. Отключить mod_proxy если вы его не используете.

Ищите линии, которые не возвращение 404 / 400 (в частности, 200), потому что это может означать, что они успешно получили доступ к некоторому ресурсу, который само по себе не обязательно беспокоит.

HTTP CONNECT используется для туннелирования. Apache поддерживает это за счет использования mod_proxy_connect.

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

Я не уверен, как Apache реагирует на запрос CONNECT, если они не включены, но 404 кажется маловероятным; Я бы предпочел 405 или 501. Таким образом, вам, вероятно, следует проверить свою конфигурацию.