nmap 笔记

本文由阿德马翻译自国外网站,请尊重劳动成果,转载请注明出处,谢谢

1.初级用法:

教程
 
Nmap使用不同的技术来执行扫描,包括:TCP的connect()扫描,TCP反向的ident扫描,FTP反弹扫描等。所有这些扫描的类型有自己的优点和缺点,我们接下来将讨论这些问题。
 
Nmap的使用取决于目标主机,因为有一个简单的(基本)扫描和预先扫描之间的差异。我们需要使用一些先进的技术来绕过防火墙和入侵检测/防御系统,以获得正确的结果。下面是一些基本的命令和它们的用法的例子:
 
扫描单一的一个主机,命令如下:
 
#nmap nxadmin.com
 
#nmap 192.168.1.2
 
扫描整个子网,命令如下:
 
#nmap 192.168.1.1/24
 
扫描多个目标,命令如下:
 
#nmap 192.168.1.2 192.168.1.5
 
扫描一个范围内的目标,如下:
 
#nmap 192.168.1.1-100 (扫描IP地址为192.168.1.1-192.168.1.100内的所有主机)
 
如果你有一个ip地址列表,将这个保存为一个txt文件,和namp在同一目录下,扫描这个txt内的所有主机,命令如下:
 
#nmap -iL target.txt
 
如果你想看到你扫描的所有主机的列表,用以下命令:
 
#nmap -sL 192.168.1.1/24
 
扫描除过某一个ip外的所有子网主机,命令:
 
#nmap 192.168.1.1/24 -exclude 192.168.1.1
 
扫描除过某一个文件中的ip外的子网主机命令
 
#nmap 192.168.1.1/24 -exclude file xxx.txt  (xxx.txt中的文件将会从扫描的主机中排除)
 
扫描特定主机上的80,21,23端口,命令如下
 
#nmap -p80,21,23 192.168.1.1

2.进阶

从上面我们已经了解了Nmap的扫描技术.
 
Tcp SYN Scan (sS)
 
这是一个基本的扫描方式,它被称为半开放扫描,因为这种技术使得Nmap发送SYN包到远程主机,但是它不会产生任何会话.因此不会在目标主机上产生任何日志记录,因为没有形成会话。这个就是SYN扫描的优势.
 
如果Nmap命令中没有指出扫描类型,默认的就是Tcp SYN.但是它需要root/administrator权限.
 
#nmap -sS 192.168.1.1
 
Tcp connect() scan(sT)
 
如果不选择SYN扫描,TCP connect()扫描就是默认的扫描模式.不同于Tcp SYN扫描,Tcp connect()扫描需要完成三次握手,并且要求调用系统的connect().Tcp connect()扫描技术只适用于找出TCP和UDP端口.
 
#nmap -sT 192.168.1.1
 
Udp scan(sU)
 
顾名思义,这种扫描技术用来寻找目标主机打开的UDP端口.它不需要发送任何的SYN包,因为这种技术是针对UDP端口的。UDP扫描发送UDP数据包到
目标主机,并等待响应,如果返回ICMP不可达的错误消息,说明端口是关闭的,如果得到正确的适当的回应,说明端口是开放的.
 
#nmap -sU 192.168.1.1
 
FIN scan (sF)
 
有时候Tcp SYN扫描不是最佳的扫描模式,因为有防火墙的存在.目标主机有时候可能有IDS和IPS系统的存在,防火墙会阻止掉SYN数据包。发送一个设置了FIN标志的数据包并不需要完成TCP的握手.
 
[email protected]:~# nmap -sF 192.168.1.8
 
Starting Nmap 5.51  at 2012-07-08 19:21 PKT
 
Nmap scan report for 192.168.1.8
 
Host is up (0.000026s latency).
 
Not shown: 999 closed ports
 
PORT STATE SERVICE
 
111/tcp open|filtered rpcbind
 
FIN扫描也不会在目标主机上创建日志(FIN扫描的优势之一).个类型的扫描都是具有差异性的,FIN扫描发送的包只包含FIN标识,NULL扫描不发送数据包上的任何字节,XMAS扫描发送FIN、PSH和URG标识的数据包.
 
PING Scan (sP)
 
PING扫描不同于其它的扫描方式,因为它只用于找出主机是否是存在在网络中的.它不是用来发现是否开放端口的.PING扫描需要ROOT权限,如果用户没有ROOT权限,PING扫描将会使用connect()调用.
 
#nmap -sP 192.168.1.1
 
版本检测(sV)
 
版本检测是用来扫描目标主机和端口上运行的软件的版本.它不同于其它的扫描技术,它不是用来扫描目标主机上开放的端口,不过它需要从开放的端口获取信息来判断软件的版本.使用版本检测扫描之前需要先用TCP SYN扫描开放了哪些端口.
 
#nmap -sV 192.168.1.1
 
Idle scan (sL)
 
Idle scan是一种先进的扫描技术,它不是用你真实的主机Ip发送数据包,而是使用另外一个目标网络的主机发送数据包.
 
#nmap -sL 192.168.1.6 192.168.1.1
 
Idle scan是一种理想的匿名扫描技术,通过目标网络中的192.168.1.6向主机192.168.1.1发送数据,来获取192.168.1.1开放的端口
 
有需要其它的扫描技术,如FTP bounce(FTP反弹), fragmentation scan(碎片扫描), IP protocol scan(IP协议扫描),以上讨论的是几种最主要的扫描方式.
 
Nmap的OS检测(O)
 
Nmap的OS检测技术在渗透测试中用来了解远程主机的操作系统和软件是非常有用的,通过获取的信息你可以知道已知的漏洞。nmap-OS-DB数据库,该数据库包含超过2600操作系统的信息。Nmap把TCP和UDP数据包发送到目标机器上,然后检查结果和数据库对照。
 
Initiating SYN Stealth Scan at 10:21
Scanning localhost (127.0.0.1) [1000 ports]
Discovered open port 111/tcp on 127.0.0.1
Completed SYN Stealth Scan at 10:21, 0.08s elapsed (1000 total ports)
Initiating OS detection (try #1) against localhost (127.0.0.1)
Retrying OS detection (try #2) against localhost (127.0.0.1)
 
上面的例子清楚地表明,

Nmap的操作系统指纹识别技术:
 
设备类型(路由器,工作组等)
运行(运行的操作系统)
操作系统的详细信息(操作系统的名称和版本)
网络距离(目标和攻击者之间的距离跳)
 
如果远程主机有防火墙,IDS和IPS系统,你可以使用-PN命令来确保不ping远程主机,因为有时候防火墙会组织掉ping请求.-PN命令告诉Nmap不用ping远程主机。
 
# nmap -O -PN 192.168.1.1/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的猜测功能选项, –osscan-guess 猜测认为最接近目标的匹配操作系统类型。
 
# nmap -O --osscan-guess 192.168.1.1
 
总结
 
Nmap入侵扫描工具的使用.希望对大家有所帮助.

时间: 2024-11-04 19:41:07

nmap 笔记的相关文章

namp强大

自学nmap笔记,有兴趣学习的可以看下 -T4 野蛮扫描:网络较好情况. -A 综合扫描 -sS 隐蔽扫描 -sU UDP扫描 -v 详细输出 -p 指定端口,如21,443,也可以1-65535 Ping就是主机发现,现在部分禁止了所以ping功能,所以扫描会出现,未ping 所以就停止端口扫描,但是no ping 扫描就是直接端口扫吧. no ping -Pn 单独的主机发现就是 -sn(注意在nmap 原版里,-sP 而不是-sn ) 输出结果是 up down failed failed

【安全牛学习笔记】​NMAP

NMAP ╋━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╋ ┃NMAP                                                                                              ┃ ┃nmap扫描脚本                                                                                   

nmap 使用笔记

1.快速发现网络中存活主机 nmap -sP 192.168.1.*  或者 nmap -sP 192.168.1.-254 2.扫描UDP端口 DP扫描方式用于判断UDP端口的情况.向目标主机的UDP端口发送探测包,如果收到回复"ICMP port unreachable"就说明该端口是关闭的:如果没      有收到回复,那说明UDP端口可能是开放的或屏蔽的.因此,通过反向排除法的方式来断定哪些UDP端口是可能出于开放状态. nmap -p 165 -sU 10.20.60.24

nmap与zmap的使用

zmap专注于主机扫描,端口扫描 namp功能比较多了,在官方站点,我们可以找到它的所有参数 http://nmap.org nmap的使用 nmap+扫描类型+类型选项+目标地址 -sL 列表扫描,不发送任何的请求,然后出来的结果并没有什么作用,只是列出来了而已 -sP发送ping求情,看时候主机存活,但是有些主机的防火墙让ping无法进行,或者返回一些错误的数据 -P0无ping,即使不存在主机也进行探测,结果不是一般的慢,是很慢. -PS后面可以传入一个端口某人为80 -n不用域名解析,-

LVS学习笔记--DR模式部署

一.部署环境: 服务器版本:CentOS6.5(Finnal) 网络拓扑: 二.需求分析:调度服务器与网页服务器均在同一网段局域网环境,用户提交的请求会经过调度器的分配指定到网页服务器,同时保证服务高可用性(任意一台网站服务器宕机后调度器会剔除它直至服务器恢复至正常:主调度器宕机后从调度器会接管它直至其恢复正常.). 三.相关配置: 部署调度器LVS服务脚本: #!/bin/sh mkdir tools cd tools/ # yum install lrzsz # rz # ls wget h

【安全牛学习笔记】SMB扫描

SMB扫描 ╋━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╋┃SMB扫描                                                                     ┃┃nmap -v -p 139,134 192.168.60.1-20                                          ┃┃nmap 192.168.1.132 -p139,445 --script=smb-os-disc

nmap的使用2

nmap一款网络探测工具和安全/端口扫描工具 1,namp的参数使用文档,可能会有很多英文,这个时候呢,我们就可以用google文档翻译一下,这样我们看起来就通俗易懂了,下面是我总结到的一些参数 -sP :ping扫描,nmap在扫描端口时,都是会用ping扫描存活主机 -sU: udp扫描,不可靠 -sT : tcp扫描,会记录大批的连接请求数据 -sA: ACK扫描这项高级的扫描方法通常用来穿透防火墙的规则集 -sV:探测端口服务操作系统的版本 -sF :秘密FIN数据包扫描,只设置TCP

MSF笔记(一)

这几天又学习了下神器,做了下笔记. Kali linux 下 启动 msfconsole 启动数据库 Service postgresql start 查看 Service postgresql status msf > service postgressql start [*] exec: service postgressql start Help帮助 创建一个工作台 Workspace -a 名 在msf中查看是否连接 msf > db_status [*] postgresql con

​【安全牛学习笔记】操作系统识别

该笔记为安全牛课堂学员笔记,想看此课程或者信息安全类干货可以移步到安全牛课堂 Security+认证为什么是互联网+时代最火爆的认证? 牛妹先给大家介绍一下Security+ Security+ 认证是一种中立第三方认证,其发证机构为美国计算机行业协会CompTIA :是和CISSP.ITIL 等共同包含在内的国际 IT 业 10 大热门认证之一,和CISSP偏重信息安全管理相比,Security+ 认证更偏重信息安全技术和操作. 通过该认证证明了您具备网络安全,合规性和操作安全,威胁和漏洞,应