Nmap入门

Nmap使用

1.Windows下两种扫描方式

(1)使用ZenmGUI
刚开始点不动界面,你可以新建一个配置或命令再删除即可。
(2)使用命令行
找到Nmap的安装路径使用nmap.exe加上命令即可(这里nmap.exe代替的时GUI中的nmap )

命令行扫描比界面扫描快,因为不用渲染。我试了几次两者的扫描结果有时可能不同,命令行比较全。

2.nmap扫描原理

https://blog.csdn.net/AspirationFlow/article/details/7694274

3.扫描语句

1.nmap --dns-servers 8.8.8.8 scanme.nmap.org
指定DNS服务器进行解析(有的网站需要外网进行解析)

2.nmap -Pn scanme.nmap.org
对于已经知道主机存活或者防火墙开启的机器,可以使用-Pn 参数来停止探测之前的ICMP请求。已达到不触发防火墙安全机制。

ICMP协议的简介
IP协议是一种面向无连接的数据报协议,它是一种不可靠的协议,它不提供任何差错检验。因此网际报文控制协议(Internet Control Message Protocol)ICMP出现了,ICMP协议用于IP主机、路由器之间传递控制消息,这里的控制消息可以包括很多种:数据报错误信息、网络状况信息、主机状况信息等,虽然这些控制消息虽然并不传输用户数据,但对于用户数据报的有效递交起着重要作用,从TCP/IP的分层结构看ICMP属于网络层,它配合着IP数据报的提交,提高IP数据报递交的可靠性。ICMP是封装在IP数据报中进行发送的,从这点看来,ICMP协议又有点像一个传输层协议,其实不然,因为ICMP报文的目的不是目的主机上的某个应用程序,它不为应用程序提供传输服务,ICMP报文的目的是目的主机上的网络层处理软件。简单的来说,ICMP协议就像奔波于网络中的一名医生,它能及时检测并汇报网络中可能存在的问题,为解决网络错误或拥塞提供了最有效的手段

color 0a #切换命令行颜色

3.nmap -p 1-1000 scanme.nmap.org
对于默认的端口范围,并不能满足日常工作需要。可以使用-p m-n来指定探测范围为m-n之间的端口

-Open 表示端口处于开放状态
-Close 表示端口处于关闭状态
-Filterd 表示端口处于过滤无法受到返回的probe状态
-UnFilterd 表示端口收到返回的Probe,但是无法确认
-Opend/UnFilterd 表示端口处于开放或者未过滤状态
-Closed/UnFilterd 表示端口处于关闭或者未过滤状态

在命令行中,输入namp -h 来查看nmap自带的帮助信息。

4.识别服务器指纹

namp.exe -sV IP地址(识别大小写)
识别目标机器的服务信息。

Nmap侵略性的探测
nmap -A -v -T4 IP地址

来探测目标机器的操作系统,服务等信息。
-v 输出每一步的过程

使用nmap -sC -sV -O IP地址
来探测目标机器的操作系统,服务等信息。

Sc 参数表示使用Nmap脚本进行探测,
sV 表示探测目标机器上的服务信息,
O 表示探测目标机器的操作系统信息。
-sC: equivalent to --script=default

5.Nmap主机发现

nmap -sP 172.163.1/10
使用Nmap命令:nmap -sP CIDR 对该网络中所有主机进行ping扫描,以探测主机存活性。扫描过程中使用了TCP SYN扫描,ICMP echo Request 来进行探测主机存活。

nmap -sn CISR
不进行端口扫描,只扫描存活性。

Nmap主机发现,结果输出
使用命令: nmap -sn CIDR -oX test.xml

对该网络中所有主机进行ping扫描,以探测主机存活性。
同时将结果输出到test.xml文件中,以便后续使用。

6.实际场景

对某个某些范围内的服务进行探测。
对某个端口进行探测
nmap -p80 scanme.nmap.org
nmap -p80, 135 scanme.nmap.org(80和135)
nmap -p80-135 scanme.nmap.org(80到135)
nmap -p- scanme.nmap.org(所有端口)

指定协议探测端口
nmap -p T:25,U:53 scanme.nmap.org
nmap -p SMTP scanme.nmap.org
nmap -p s* scanme.nmap.org(s开头的所有协议)

7.NSE介绍

NSE(Nmap Script Engine)Nmap脚本引擎,内置很多可以用来扫描的,针对特定任务的脚本。通过NSE可以不断扩展Nmap的扫描策略,加强Nmap的功能。
Nmap中使用 --script 参数来指定调用的脚本,并且脚本存储在Nmap安装路径下的script文件夹下,对于kali Linux存储在 /usr/share/nmap/script/下(589个脚本)
1.NSE使用
使用Nmap 探测Web服务的title信息。-nmap --script 脚本名称 目标
nmap --script http-title scanme.nmap.org
使用Nmap探测http服务的http头。
nmap --script http-headers 目标

2.NSE分类使用
对于目标使用多个分类脚本进行探测,可以更快的找到目标的信息与弱点。
使用Nmap中漏洞分类脚本对目标进行探测
nmap -sV --script vuln 目标

使用Nmap中发现和版本信息分类进行探测
nmap -sV --script=“version,discovery” 目标

使用Nmap除了exploit分类之外的其他分类进行探测
nmap -sV --script=“not exploit” 目标

使用Nmap中http的脚本,但是除了(http-brute和http-slowlors)【暴力破解和DOS攻击】
nmap -sV --script "(http
) and not (http-slowlors and http-brute)" 目标

3.NSE调试功能使用
使用Nmap 中exploit,但是在使用的同时开启调试模式。
nmap -sV --script exploit -d 3 --script-trae 目标
注意: -d(debug 范围0~9)

使用nmap的http-title脚本,并且指定使用对应的User-Agent
nmap -sV --script http-title --script-args http.useragent=“Mozilla 999”
目标

4.NSE更新
nmap --script-updatedb

5.NSE分类
可通过查看目录前缀查看。

8.补充

指定网卡进行探测
nmap -e interface 目标
nmap -e eth0 192.168.0.1

ndiff工具(比较两个状态的不同
nmap -A -v -T4 192.168.1.142 -oX kali1.xml
nmap -A -v -T4 192.168.1.142 -oX kali2.xml
ndiff kali1.xml kali2.xml

nmap --iflist
输出所有网卡信息

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值