
Я использовал nmap на своем целевом сервере, который возвращает следующие службы
PORT STATE SERVICE VERSION
53/tcp open domain?
80/tcp open http Microsoft IIS httpd 10.0
88/tcp open kerberos-sec Microsoft Windows Kerberos (server time: 2021-03-17 07:07:34Z)
135/tcp open msrpc Microsoft Windows RPC
139/tcp open netbios-ssn Microsoft Windows netbios-ssn
389/tcp open ldap
443/tcp open https?
445/tcp open microsoft-ds?
464/tcp open kpasswd5?
593/tcp open ncacn_http Microsoft Windows RPC over HTTP 1.0
636/tcp open tcpwrapped
3268/tcp open ldap
3269/tcp open tcpwrapped
3389/tcp open ms-wbt-server Microsoft Terminal Services
Вопрос в том, как определить истинную службу, работающую на порту, который Nmap мог ошибочно определить. Например, на порту 53, как я могу убедиться через терминал, что на нем работает служба DNS?
Какой метод я могу использовать? У меня нет доступа к целевому серверу, поэтому я не могу видеть процессы, запущенные на сервере.
решение1
Как отмечает Штеффен, чтобы узнать, работает ли сервер X на порту Y на хосте Z, нужно запустить клиент, который использует тот же протокол, что и X, и указать ему порт Y на хосте Z. Например, чтобы проверить, работает ли данный сервер на DNS, можно использовать любой из множества DNS-клиентов, например nslookup
.
Конечно, это ничего не говорит вам о том, что на самом деле там работает, кроме того, что он совместим с протоколом, который вы использовали. Сервер может быть практически чем угодно. Например, прослушиватель на порту 80 (из вашего примера) может быть просто крошечным скриптом, который просто отвечает на любые TCP-рукопожатия `HTTP 201 No content\r\nServer: Microsoft IIS httpd 10.0\r\n\r\n", что является приблизительно допустимым ответом HTTP (хотя он может отправить его, даже если клиент не отправлял HTTP-запрос), но это не означает, что прослушиватель является в каком-либо полезном смысле веб-сервером, не говоря уже о том, что это именно IIS 10.0.
Встроенные скрипты распознавания Nmap, вероятно, лучше распознают большинство серверов, чем вы, хотя они также очень негибкие и могут быть легко обмануты, если кто-то попытается. Человек, знакомый с инструментами и протоколами, о которых идет речь, вполне может извлечь больше информации, чем скрипты, в необычных случаях (например, когда один сервер выдает себя за другой или когда администратор намеренно скрыл обычные «подсказки», которые идентифицируют сервер согласно Nmap). Однако передача даже основ такого рода знакомства в целом выходит за рамки этого ответа или, по сути, этого сайта.