Nmap简单修炼手册
1.无ping扫描
在默认情况下Nmap在进行其他扫描之前,Nmap都会对目标进行一个Ping扫描。如果目标禁止了Ping,那么Nmap发出的Ping扫描就不会有反应。在接不到如何结果返回的情况下,Nmap就会直接结束整个扫描过程,如果是这样,扫描结果是不准确的。如果遇到这种情况,我们可以使用-PN参数,启用无Ping扫描,跳过Ping扫描这个过程。
nmap -PN 1.1.1.1
2.仅使用Ping协议进行主机发现
与上面的无Ping扫描正好相反,有的时候我们需要快速扫描大量主机。这个时候我们就可以加参数-sP,加了这个参数Nmap就会仅使用Ping协议进行扫描。虽然这样会有部分主机扫描结果不准确,但相比于整个数量,这部分主机我们可以忽略,加了这个参数后速度会非常快。使用什么样的参数,要根据需求,要有取舍,要速度必然会牺牲准确性。
nmap -sP 1.1.1.1
3.使用ARP协议进行主机发现
ARP协议扫描只适用于局域网内,使用ARP,不仅速度快,而且结果也会更加准确。
nmap -PR IP地址
4.半开扫描和全开扫描
半开扫描和全开扫描与TCP连接的三次握手有关系,所谓三次握手就是建立TCP连接时,需要客户端和服务端总共发送3个包以确认连接的建立。这3个包的发送过程,类似于我们打电话,首先自我介绍,然后对方介绍,最后问好。
3个过程全部完成叫全开扫描,最后一步不做,叫半开扫描。在实际过程中,半开扫描应用的最多,半开扫描不容易被目标电脑日志记录。半开扫描需要加参数-sS,全开扫描需要加参数-sT。
半开扫描:nmap -sS IP地址
全开扫描:nmap -sT IP地址
5.识别操作系统
Nmap不仅能扫描IP还能扫描端口,同时Nmap还可以识别操作系统的类型。为什么要识别操作系统是什么类型呢?因为系统不一样,渗透的方法就不同,linux系统和Windows系统有区别,安卓系统和苹果系统有区别,所以识别出是什么系统还是非常重要的。
nmap -O IP地址
6.扫描全部端口:
nmap -p "*" 192.168.152.154
或者 1-65535
7.扫描指定的端口:
如果我们只是想检测目标主机是否开启某一项服务,比如http服务,此时我们可以指定具体的端口号以加快扫描速度。
nmap -p 80 IP地址
8.探测打开的端口以确定服务/版本信息:
nmap -sV IP地址
pn无ping扫描 A 使用所有高级扫描选项 -sC:等效于--脚本=默认值
nmap -Pn -A -sC IP地址
用于扫描目标主机服务版本号与开放的端口
nmap -sU -sT -p0-65535 IP地址
如果需要扫描多个ip或ip段,可以将他们保存到一个txt文件中
nmap -iL ip.txt
来扫描列表中所有的ip
Nmap为端口探测最常用的方法,操作方便,输出结果非常直观。
-P0:值进行扫描,不ping主机;
-PT:是同TCP的ping;
-sV:探测服务版本信息;
-sP:ping扫描,仅发现目标主机是否存活;
-sS:TCP SYN扫描(半开放式扫描,扫描速度高且隐蔽性好)-sT: TCP 连接扫描(最基础,最稳定的扫描)-ps:发送同步(SYN)报文;
-PU:发送udp ping;
-PE:强制执行直接的ICMPping;
-PB:默认模式,可以使用ICMPping和TCPping;
-6:使用IPv6地址;
-v:得到更多选项信息;
-d:增加调试信息地输出;
-oN:以人们可阅读的格式输出;
-oX:以xml格式向指定文件输出信息;
-oM:以机器可阅读的格式输出;
-A:使用所有高级扫描选项;
--resume:继续上次执行完的扫描;
-P:指定要扫描的端口,可以是一个单独的端口,用逗号隔开多个端口,使用“-”表示端口范围;
-e:在多网络接口Linux系统中,指定扫描使用的网络接口;
-g:将指定的端口作为源端口进行扫描;
--ttl:指定发送的扫描报文的生存期;
--packet-trace:显示扫描过程中收发报文统计;
--scanflags:设置在扫描报文中的TCP标志。
原文始发于微信公众号(猫因的安全):小学生都看得懂的【Nmap】基础修炼手册
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论