nmap 基本使用
用nmap对局域网扫描一遍,然后查看arp缓存表就可以知道局域内ip对应的mac了。nmap比较强大也可以直接扫描mac地址和端口。执行扫描之后就可以 cat /proc/net/arp查看arp缓存表了。
不进行ping扫描,不对IP进行域名反向解析,只设置TCP FIN标志位。
$ nmap -Pn -n -sF 192.168.1.1/24
只进行ping扫描,打印出对扫描做出响应的主机,不进行进一步检测:
$ nmap -sP 192.168.1.0/24
仅列出指定网络上的每台主机,不发送任何报文到目标主机:
$ nmap -sL 192.168.1.0/24
探测目标主机开放的端口,使用TCP SYN扫描,不使用ICMP:
$ nmap -PS -p 22,80 192.168.1.234
使用UDP ping探测主机:
$ nmap -PU 192.168.1.0/24
使用频率最高的扫描选项(SYN扫描,又称为半开放扫描),它不打开一个完全的TCP连接,执行得很快:
$ nmap -sS 192.168.1.0/24
0x 01 扫描类型及参数
用法: nmap [扫描类型] [参数] 目标IP
1. 扫描类型
-sT TCP 连接扫描,会在目标主机中记录大量的链接请求和错误信息
-sS SYN扫描,只完成三次握手前两次,很少有系统记入日志,默认使用,需要root(admin)权限
-sP Ping扫描,默认使用,只有能Ping得通才会继续扫描
-P0 扫描之前不需要Ping,用于绕过防火墙禁Ping功能
-sA 高级的扫描方式,用来穿过防火墙的规则集
-sV 探测端口号版本
-sU UDP扫描,扫描主机开启的UDP的服务,速度慢,结果不可靠
-Pn 不通过Ping检测,直接认为该主机在线,进行进一步检测
-sF 只设置TCP FIN标志位。FIN扫描不会在目标主机上创建日志,容易漏扫
-sX FIN、PSH和URG的标识位
-sN 扫描不设置任何控制位
2. 扫描参数
-v 显示扫描过程,推荐使用
-h 帮助文档
-p 指定端口号,如[1-65535],[22,135,1433,3306,]等格式
-F 快速扫描,可在nmap-services 自定义扫描的端口
-O 启动远程操作系统监测,存在误报
-A 全面系统监测,使用脚本检测,扫描等
-T4 针对TCP端口禁止动态扫描延迟超过10ms
-iL 批量扫描,读取主机列表,如[-iL C:\ip.txt]
-n/-R 不对IP进行域名反向解析/为所有的IP都进行域名的反响解析
0x 02 扫描案例
1. 扫描C段(局域网)存活主机
nmap -sP www.XXX.com/24
nmap -sP 192.168.1.* (注释:“*”为通配符)
2. 扫描指定IP开放端口号
nmap -sS -p- -v 192.168.1.100
-p-为全端口扫描,和[1-65535]一样,建议使用
不使用默认Nmap认为危险的100个端口号
3. 扫描指定IP所开端口及服务版本
nmap -sV -v 192.168.1.100
4. 探测主机操作系统
nmap -O www.XXX.com
扫描准确度以百分比显示,未必准确
5. 穿透防火墙扫描
nmap -P0 www.XXX.com
6. 全面探测,-A包含OS 探测,版本探测,脚本扫描,traceroute
nmap -A www.XXX.com
7. 使用脚本扫描,
nmap --script="脚本名称" www.XXX.com
如在局域网上扫找 Conficker 蠕虫病毒
nmap -PN -T4 -p139,445 -n -v --script=smb-check-vulns --script-args safe=1 192.168.0.1-254
脚本放在Nmap安装目录script下,官网可查各个脚本功能
管理员已关闭本篇文章评论!