HTB渗透学习-NMAP

NMAP

(简单)防火墙和带有IDS/IPS的防护:获知目标操作系统

  • 这种情况下可以直接用一个script,通过SMB来探测
1
nmap --script smb-os-discovery 10.129.2.80
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Nmap scan report for 10.129.2.80
Host is up (0.71s latency).
Not shown: 992 closed tcp ports (conn-refused)
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
110/tcp open pop3
139/tcp open netbios-ssn
143/tcp open imap
445/tcp open microsoft-ds
787/tcp filtered qsc
10001/tcp open scp-config

Host script results:
| smb-os-discovery:
| OS: Windows 6.1 (Samba 4.7.6-Ubuntu)
| Computer name: nix-nmap-easy
| NetBIOS computer name: NIX-NMAP-EASY\x00
| Domain name: \x00
| FQDN: nix-nmap-easy
|_ System time: 2024-08-13T18:20:39+02:00

Nmap done: 1 IP address (1 host up) scanned in 186.80 seconds

Ubuntu系统

(中等)防火墙和带有IDS/IPS的防护:获知目标DNS服务器版本

防火墙的限制更为严格了。

WP1

1
nmap -sSU -p 53 --script dns-nsid 10.129.2.48
  • U表示UDP scan
  • -sS表示SYN scan
  • -p代表扫描53端口
  • dns-nsid脚本执行DNS命名服务器(NSID)的查询

    NSID(Name Server Identifier)是DNS协议扩展的一部分,由RFC 5001定义。它允许DNS客户端在查询时向DNS服务器请求该服务器的标识符。这在调试和运维中非常有用,因为它可以帮助识别负责处理某个DNS查询的具体DNS服务器,特别是在负载均衡环境或多服务器部署中。

WP2

1
nmap -T4 -A -v 10.129.67.225 -D RND:5 --stats-every=5s
  • -A 启用了高级扫描选项
  • -D RND:5 使用“分身”扫描,这是一种通过伪装扫描源地址的方法,用于规避防火墙和入侵检测系统。RND:5 表示使用5个随机生成的IP地址作为伪装扫描的来源地址,以混淆目标服务器的日志和防御系统。

WP3

1
sudo nmap -sU 10.129.185.38 -p 53 --disable-arp-ping -Pn -sV

复现失败的原因

多半是因为VPN连接。直接使用HTB提供的VM就成功了。

(困难)防火墙和带有IDS/IPS的防护:获知目标的服务版本

首先扫描所有端口发现50000端口被filter了,说明可能是这个服务端口。

1
nc -nv -p 53 10.129.253.40 50000 

直接使用nc连接,-nv中的n指不使用DNS解析,将输入的IP直接用于连接;v指输出连接过程中的详细信息,-p 53指在本地主机上使用53端口作为源端口进行连接。

53端口用于避开防火墙。