Недавнее сканирование на уязвимости показало, что сервер под управлением Windows 2012 R2 IIS 8.5 имеет открытый прокси-сервер.
Я не могу найти ничего в файле web.config или какой-либо информации в IIS 8.5, которая бы навела меня на мысль о наличии прокси-сервера.
Ответ от Nexpose приведен ниже.
HTTP HEAD request to http://www.google.com/
HTTP response code was an expected 200
1: ...=2018-02-24-03; expires=Mon, 26-Mar-2018 03:38:51 GMT; path=/; doma...
HTTP header 'Set-Cookie' was present and matched expectation
Я попытался подключиться к своему серверу через telnet на 3128, но соединение было отклонено. Это ложное срабатывание в Nexpose?
Если я подключаюсь к серверу по telnet на порту 80, то получаю это сообщение.
HTTP/1.1 400 Bad Request
Content-Type: text/html; charset=us-ascii
Server: Microsoft-HTTPAPI/2.0
Connection: close
Content-Length: 326
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/strict.dtd">
<HTML><HEAD><TITLE>Bad Request</TITLE>
<META HTTP-EQUIV="Content-Type" Content="text/html; charset=us-ascii"></HEAD>
<BODY><h2>Bad Request - Invalid Verb</h2>
<hr><p>HTTP Error 400. The request verb is invalid.</p>
</BODY></HTML>
решение1
Это может произойти, если вы тестируете свой сервер через интернет-сервис, а ваш сервер находится за маршрутизатором с включенным NAT и переадресацией портов.
Тогда у вас есть несколько возможностей:
- На вашем маршрутизаторе есть несколько служб, прослушивающих этот порт (некоторые из них имеют секретные/неизвестные службы, которые создают лазейки)
- Есть некий маршрут NAT, который перенаправляет порт 3128 на порт 80 на вашем сервере.
Если вы используете telnet для подключения к серверу через порт 3128, обязательно проверьте каждый IP-адрес сервера (так как служба может прослушивать только один IP-адрес, а не все). Этот тест должен включать 127.0.0.1, а в случае, если у вас национальный/публичный IP-адрес, вам следует также попробовать этот IP-адрес (если возможно, из другой сети/интернет-подключения).
Если вы можете открыть соединение с портом 3128 на интернет-IP-адресе вашего сервера, но не можете открыть соединение ни с одним из IP-адресов сервера, то почти наверняка ваш маршрутизатор выполняет либо вариант 1, либо вариант 2, как описано выше.