目录
一、使用Nmap进行端口扫描
1、关于端口的介绍
① 个数
② 作用
③ 分类
2、Nmap中的各种端口扫描技术
① SYN扫描
② Connect扫描
③ UDP扫描
④ 端口扫描范围的确定
二、使用Nmap扫描目标系统
1、识别原理
2、参数与意义
3、远程判断目标系统的方法
三、使用Nmap扫描目标服务
1、与端口扫描的区别
2、参数及用法
3、Nmap的完善
四、将Nmap的扫描结果保存为XML文件
五、对Web服务进行扫描
1、目标分类
2、Web服务器的软件组成
① Web应用程序
② 语言解释器
③ 服务器应用程序
④ 操作系统
3、以DVWA为目标的web服务扫描
① dirb内容扫描
② dirsearch内容扫描
③ whatweb网络指纹识别
65536个
供数据进出网络设备
公认端口(也叫常用端口)0~1024:明确表明了某种服务协议,不可重新定义作用对象
注册端口 1025~49151:没有明确定义服务对象,根据实际需要自己定义
动态/私有端口 49152~65535:常常不被注意,容易隐蔽
or
TCP端口:“连接方式”,直接与接收方进行连接,发送信息后可确认是否到达
UDP端口:“无连接方式”,不与接收方进行连接,只管把信息发出去,不管是否到达
语法:nmap -sS 目标设备IP地址
nmap所采用的默认扫描方式,nmap向目标设备发送SYN数据包,得到SYN+ACK的回应包时,不扫描器不是发送ACK数据包,而是发送RST数据包请求断开连接,并没有完成3次握手,无法建立正常的TCP连接,因此这次扫描就不会被记录到系统日志,也不会在目标设备留下扫描痕迹。
目标设备的回应 : 目标设备端口状态:
SYN+ACK open
RST closed
没有回应/ICMP端口无法抵达 filtered
语法:nmap -sT 目标设备IP地址
connect扫描和SYN扫描很像,只是完成了TCP的3次握手
语法:nmap -sU 目标设备IP地址
目标设备的回应 : 目标设备端口状态:
从目标设备得到UDP回应 open
没有回应 open/filtered
UDP扫描速度相对较慢
nmap默认只扫描65536中最常用的1000个端口,即如果我们不加任何参数,nmap扫描的是1000个端口,而不是65536个。
1、对65536个端口扫描:追加参数 -p "*"
即:nmap -p "*" 目标设备IP地址
额额额我这里扫的时候出了点问题...不过我们一般不会这样用
2、扫描使用频率最高的n个端口
语法:nmap --top-ports n 目标设备IP地址
比如我们对最常用的10个端口扫描
3、扫描指定端口
语法:nmap -p 端口号 目标设备IP地址
比如我们指定扫描80端口
通常,越旧的操作系统意味着越容易被渗透,但几乎所有的工具都是通过向目标设备发送探针(大都以TCP和UDP数据包的形式),根据目标设备回应来猜测操作系统。
--osscan-limit 只对满足“具有打开和关闭的端口”的设备进行操作系统扫描
--osscan-guess 猜测认为最接近目标设备的操作系统
在使用这两参数时需要追加参数 -O
即:nmap -O ---osscan-limit / --osscan-guess 目标设备IP地址
此外,我们还可以追加参数 -v 来展示扫描过程
① 被动式:不向目标发送如任何数据包,通过各种抓包工具来搜集流经网络的数据报文,再从这些报文中得到目标设备的操作系统信息。
② 主动式:向目标设备发送信息,通过回应来分析推测目标的操作系统
nmap中有一个名为Nmap-os-db的操作系统数据库,进行扫描时,会将目标系统的扫描结果与整个数据库中文件进行对比,然后得出目标设备操作系统类型。
我们在进行端口扫描时,nmap并没有进行服务的识别,而是将端口号在自己的端口服务表数据库中进行查找,然后返回该端口对应的服务,也就是说返回的服务只是数据库中的服务,并非事实中端口所运行的服务。
追加参数 -sV 来进行服务和版本识别
即nmap -sV 目标设备IP地址
当nmap从某个服务收到响应,但不能在数据库中找到匹配时,就会输出一个特殊的fingerprint和一个URL,如果用户知道是什么服务运行在此端口,就可以提交这份报告让nmap更完善。
nmap支持多种保存格式,最常用的是XML格式
语法:nmap -oX 文件名(要加文件后缀) 目标设备IP地址
目前XML 是一种较为流行的报告格式,大部分的安全工具都兼容,因此方便共享扫描结果。
对渗透目标最简单的分类:用户计算机、网站服务器
前者就是日常生活和工作时使用的设备,而后者是运行着网站的特殊设备
web服务器在硬件方面并没有什么根本区别,只是性能上存在差异,软件方面则多一些内容。
③和④绝大多数情况下只能是采用厂商提供的产品,成为外部环境因素;
①和②则成为内部代码因素。
它可以按照字典逐个测试某个目录或文件是否存在
用法:dirb 目标IP地址(注意要以http的形式)
用法:dirsearch 目标IP地址(最好加个参数 -u)
效果应该比dirb更优秀
用法:whatweb 目标IP地址
这样看着很乱,我们通常会追加参数 -v 来将结果详细显示
OK,Nmap主动扫描到此告一段落
后期会继续更新kali linux以及CTF的其他内容
期待大家的关注,喜欢的可以点个赞支持一下哦,也是对我最大的动力和鼓励,谢谢!