nmap使用

一、安装nmap扫描工具:yum install nmap。

二、检查版本是否安装成功:输入:nmap

三、namp命令介绍:

1、扫描单一的主机:命令;nmap ip

如:扫描地址为:https://10.20.80.161的主机

nmap 10.20.80.161

2、扫描整个子网命令如下:nmap ip/24

nmap 10.20.80.161/24

3、扫描多个主机:nmap ip1 ip2

nmap 10.20.80.161 192.168.26.211

4、扫描一个范围内的目标:nmap 192.168.1.1-100 (扫描IP地址为192.168.1.1-192.168.1.100内的所有主机)

如果你有一个ip地址列表,将这个保存为一个txt文件,和nmap 在同一个目录下,扫描这个txt内的所有主机,命令如下:

nmap -iL target.txt

如果你想看到你扫描的所有主机列表,使用:nmap -sL 10.20.80.161/24

扫描除了某一个Ip命令外的所有子网命令:

扫描特定主机的端口:nmap 80,21,22,23 10.20.80.161

四、Nmap的操作系统指纹识别技术:
设备类型(路由器,工作组等)、运行(运行的操作系统)、、操作系统的详细信息(操作系统的名称和版本)、网络距离(目标和攻击者之间的距离跳)
如果远程主机有防火墙,IDS和IPS系统,你可以使用-PN命令来确保不ping远程主机,因为有时候防火墙会组织掉ping请求.-PN命令告诉Nmap不用ping远程主机。
1、使用: nmap -O -PN 10.20.80.161/24


以上命令告诉发信主机远程主机是存活在网络上的,所以没有必要发送ping请求,使用-PN参数可以绕过PING命令,但是不影响主机的系统的发现.。
注:Nmap的操作系统检测的基础是有开放和关闭的端口,如果OS scan无法检测到至少一个开放或者关闭的端口,会返回以下错误: www.2cto.com
Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
OS Scan的结果是不可靠的,因为没有发现至少一个开放或者关闭的端口.
这种情况是非常不理想的,应该是远程主机做了针对操作系统检测的防范。如果Nmap不能检测到远程操作系统类型,那么就没有必要使用-osscan_limit检测。
想好通过Nmap准确的检测到远程操作系统是比较困难的,需要使用到Nmap的猜测功能选项, –osscan-guess 猜测认为最接近目标的匹配操作系统类型。
2、使用: nmap -O --osscan-guess 10.20.80.161

五、Nmap的扫描技术

1、Tcp SYN Scan (sS)
这是一个基本的扫描方式,它被称为半开放扫描,因为这种技术使得Nmap不需要通过完整的握手,就能获得远程主机的信息。Nmap发送SYN包到远程主机,但是它不会产生任何会话.因此不会在目标主机上产生任何日志记录,因为没有形成会话。这个就是SYN扫描的优势.
如果Nmap命令中没有指出扫描类型,默认的就是Tcp SYN.但是它需要root/administrator权限.
使用:nmap -sS 10.20.80.161

2、Tcp connect() scan(sT)
如果不选择SYN扫描,TCP connect()扫描就是默认的扫描模式.不同于Tcp SYN扫描,Tcp connect()扫描需要完成三次握手,并且要求调用系统的connect().Tcp connect()扫描技术只适用于找出TCP和UDP端口.
使用:nmap -sT 10.20.80.161

3、Udp scan(sU)
顾名思义,这种扫描技术用来寻找目标主机打开的UDP端口.它不需要发送任何的SYN包,因为这种技术是针对UDP端口的。UDP扫描发送UDP数据包到目标主机,并等待响应,如果返回ICMP不可达的错误消息,说明端口是关闭的,如果得到正确的适当的回应,说明端口是开放的.
使用:nmap -sU 10.20.80.161

4、FIN scan (sF)
有时候Tcp SYN扫描不是最佳的扫描模式,因为有防火墙的存在.目标主机有时候可能有IDS和IPS系统的存在,防火墙会阻止掉SYN数据包。发送一个设置了FIN标志的数据包并不需要完成TCP的握手.
使用: nmap -sF 10.20.80.161

FIN扫描也不会在目标主机上创建日志(FIN扫描的优势之一).个类型的扫描都是具有差异性的,FIN扫描发送的包只包含FIN标识,NULL扫描不发送数据包上的任何字节,XMAS扫描发送FIN、PSH和URG标识的数据包.

5、PING Scan (sP)
PING扫描不同于其它的扫描方式,因为它只用于找出主机是否是存在在网络中的.它不是用来发现是否开放端口的.PING扫描需要ROOT权限,如果用户没有ROOT权限,PING扫描将会使用connect()调用.
使用:nmap -sP 10.20.80.161

6、版本检测(sV)
版本检测是用来扫描目标主机和端口上运行的软件的版本.它不同于其它的扫描技术,它不是用来扫描目标主机上开放的端口,不过它需要从开放的端口获取信息来判断软件的版本.使用版本检测扫描之前需要先用TCP SYN扫描开放了哪些端口
使用:nmap -sV 10.20.80.161



7、Idle scan (sL)
Idle scan是一种先进的扫描技术,它不是用你真实的主机Ip发送数据包,而是使用另外一个目标网络的主机发送数据包.
使用:nmap -sL 10.20.80.132  10.20.80.161

Idle scan是一种理想的匿名扫描技术,通过目标网络中的10.20.80.132向主机10.20.80.161发送数据,来获取10.20.80.161开放的端口
有需要其它的扫描技术,如FTP bounce(FTP反弹), fragmentation scan(碎片扫描), IP protocol scan(IP协议扫描),以上讨论的是几种最主要的扫描方式.
Nmap的OS检测(O)
Nmap最重要的特点之一是能够远程检测操作系统和软件,Nmap的OS检测技术在渗透测试中用来了解远程主机的操作系统和软件是非常有用的,通过获取的信息你可以知道已知的漏洞。Nmap有一个名为的nmap-OS-DB数据库,该数据库包含超过2600操作系统的信息。Nmap把TCP和UDP数据包发送到目标机器上,然后检查结果和数据库对照。

六、

1、获取远程主机的系统类型及开放端口

nmap -sS -P0 -sV -O <target>

使用:nmap -sS -P0 -sV -O 10.20.80.161

这里的 < target > 可以是单一 IP, 或主机名,或域名,或子网

-sS TCP SYN 扫描 (又称半开放,或隐身扫描)
-P0 允许你关闭 ICMP pings.
-sV 打开系统版本检测
-O 尝试识别远程操作系统

其它选项:

-A 同时打开操作系统指纹和版本检测
-v 详细输出扫描情况.

nmap -sS -P0 -A -v < target>

2、列出开放了指定端口的主机列表

使用:nmap -sT -p 80 -oG - 10.20.80.*|grep open

3、在某段子网上查找已占用的 IP:

nmap -T4 -sP 10.20.80.161/24 && egrep "00:00:00:00:00:00" /proc/net/arp

4、在局域网上扫找 Conficker 蠕虫病毒

使用:nmap -PN -T4 -p139,445 -n -v --script=smb-check-vulns --script-args safe=1 10.20.80.1-254

5、使用诱饵扫描方法来扫描主机端口

使用:sudo nmap -sS 10.20.80.161 -D 10.20.80.56

 

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值