简介
nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端。确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统(这是亦称 fingerprinting)。它是网络管理员必用的软件之一,以及用以评估网络系统安全。
Nmap在kali的应用
在kali中nmap以命令行的方式出现,接下来笔者会列举一些命令并说明其原理。
为了有效使用nmap,必须启动root权限,这是典型的操作数据包的应用,也是kali默认以root级别启动的原因
主机探测
nmap -sP 192.168.1.0/24
以上命令意思为:使用nmap 对192.168.1.0/24的IP段进行ping扫描,有关ping扫描的详细在我的另一篇文章中( 文章链接)
于此同时,我们也可以对nmap进行一些扩展
1.nmap -sS IP #进行秘密的TCP SYN扫描无需完整TCP握手
2.nmap -O IP #对目标系统进行猜测
3.nmap -sV #启用版本检测
4.nmap -p T:1-1024 #指定扫描的端口
5.nmap -T paranoid #时间设定到最慢
以上是关于nmap的五个命令,但这不是全部,笔者会在后续的博文中慢慢列举出来。
而以上的五个命令可以随意进行组合来达到测试人员想要的结果。
同时要注意的是,系统猜测命令,此命令是根据目标系统的返回数据包分析进行判断的,所以,如果目标系统伪造了返回的数据包那么猜测将失效。
另外,nmap官方文档中的例子:
nmap -v scanme
这个选项扫描主机scanme中 所有的保留TCP端口。选项-v启用细节模式。
nmap -sS -O scanme./24
进行秘密SYN扫描,对象为主机Scanme所在的"C类"网段 的255台主机。同时尝试确定每台工作主机的操作系统类型。因为进行SYN扫描 和操作系统检测,这个扫描需要有root权限。
nmap -sV -p 22,53,110,143,4564 188.116.0-255.1-127
进行主机列举和TCP扫描,对象为B类188.116网段中255个8位子网。这 个测试用于确定系统是否运行了sshd、DNS、imapd或4564端口。如果这些端口 打开,将使用版本检测来确定哪种应用在运行。
nmap -v -iR 100000 -P0 -p 80
随机选择100000台主机扫描是否运行Web服务器(80端口)。由起始阶段 发送探测报文来确定主机是否工作非常浪费时间,而且只需探测主机的一个端口,因 此使用-P0禁止对主机列表。
nmap -P0 -p80 -oX logs/pb-port80scan.xml -oG logs/pb-port80scan.gnmap 216.163.128.20/20
扫描4096个IP地址,查找Web服务器(不使用ping命令),将结果以Grep和XML格式保存。
host -l | cut -d -f 4 | nmap -v -iL -
进行DNS区域传输,以发现中的主机,然后将IP地址提供给 Nmap。上述命令用于GNU/Linux -- 其它系统进行区域传输时有不同的命令。
其他选项:
-F (快速 (有限的端口) 扫描)
如果想要持续获得nmap相关使用可以关注笔者,后续将叙述更多工具极其使用方法!
感谢您的阅读
:)