web安全攻防系列(二)
多方面且强大的扫描,可以帮助你进一步收集目标信息,获取目标脆弱点,扩大你的攻击面…
X00网络扫描类型及目的:
①主机扫描:找出网段内活跃主机
②端口扫描:找出主机所开放的网络服务
③操作系统探测:识别主机安装的操作系统类型与开放网络服务类型,以选择不同渗透攻击代码及配置
④漏洞扫描:找出主机/网络服务上所存在的安全漏洞,作为破解通道
X01主机扫描
一、PING:探测目标网络拓扑的基本步骤,确定网络中存在哪些活跃设备与系统。
二、ICMP:
进行主机存活性探测。当某些网段的防火墙或路由设置数据包过滤策略,则探测不可行。
三、TCP:
①TCP ACK Ping扫描原理
在三次握手中,ACK表示确认握手过程,如果根本没有进行SYN的请求,而去确认连接,目标主机就会认为一个错误发生,而发送RST位中断会话。发送一个只有ACK标志的TCP数据报给目标主机,如果目标主机反馈TCP RST数据报来,那么表明这台目标主机存活。
②TCP SYN Ping扫描原理
如果目标主机活跃但指定端口不开放,则会反馈RST,如果目标端口开放,则返回SYN/ACK标志的数包。
X011扫描工具nmap
Nmap实现主机扫描的功能
Nmap命令行选项 | 功能说明 | 发送数据 | 开放主机 | 关闭主机 |
---|---|---|---|---|
nmap -sP | 集合 ICMP/SYN/ACK/UDP ping功能 (nmap默认) | |||
nmap -PE | ICMP Echo 主机扫描 | ICMP Echo Request数据包 | ICMP Echo Reply数据包 | 无回应 |
nmap -PS[portlist] | TCP SYN 主机扫描 | 带SYN标志数据包 | 带SYN/ACK标志数据包或带RST标志数据包 | 无回应 |
nmap -PA[portlist] | TCP ACK 主机扫描 | 带ACK标志数据包 | 带RST标志数据包 | 无回应 |
nmap -PU[portlist] | UDP 主机扫描 | UDP数据包 | ICMP Port Unreachable 数据包 | 无回应 |
主机扫描防范措施
①使用Snort之类的网络入侵检测系统,在网关等位置对网络中的主机扫描活动进行探测。
②尽量关闭没有必要的端口
X02端口扫描
端口扫描基本类型的技术原理
端口扫描类型 | 原理 | 开放端口 | 关闭端口 |
---|---|---|---|
TCP connect扫描 | 扫描主机调用socket connect()函数,与目标主机建立TCP连接 | 与目标主机完成完整三次握手 | 目标主机返回RST标志报文重置连接 |
TCP SYN扫描 | 扫描主机发送SYN标志的原始数据包 | 目标主机返回带有SYN和ACK标志数据包 | 目标主机返回RST标志报文重置连接 |
UDP端口扫描 | 扫描主机发送特制的UDP数据包 | 目标主机返回带数据的UDP数据包 | 返回ICMP端口不可达报文 |
①TCP connect:
实现简单,并不需要主机上的特权用户权限。但它的缺点在于目标主机上将记录大量的连接与错误信息,容易被管理员检测出来。
②TCP SYN:
“半开连接扫描”。不会被记录,但是需要特权用户权限。可以应用于主机扫描、DDOS攻击。前者用于躲避防火墙对主机进行活跃性探测,后者用大量"半开连接"耗尽主机连接队列,以达拒绝服务效果。
X03主机系统类型扫描
了解目标主机上运行哪种类型什么版本的操作系统,以及在各个开放端口上监听的是哪些网络服务。
操作系统探查
主要技术类型 | 技术目标与特性 | 经典工具 |
---|---|---|
操作系统主动探测技术 | 主动与目标系统通信探测目标系统操作系统 | nmap -O,queso |
操作系统被动辨识技术 | 被动监测网络通信以识别目标系统操作系统 | p0f,siphon |
网络服务主动辨识技术 | 主动与目标系统通信探测目标网络中开放端口上绑定的网络应用服务类型及版本 | namp -sV |
网络服务被动辨识技术 | 被动监测网络通信以识别目标网络中开放端口上绑定的网络应用服务类型及版本 | PADS |
①主动探测技术:
可以对主动探测激发的反馈数据包中所存在的指纹特征与操作系统协议栈指纹特征库进行对比,从而精确识别目标主机操作系统类型。例nmap工具里的nmap-os-fringerprints.(要求目标系统至少有一个监听端口,否则精准度下降)
②被动辨识技术:
具有极高的隐蔽性。需要检测目标的网络通信,其成功与否取决于攻击者需位于目标主机的局域网内部或通信枢纽位置,并需用嗅探技术获取通信数据包。工具siphon , p0f
网路服务类型探查
确定目标主机开放端口上绑定的网络应用服务类型及版本。主要依据网络服务在实现应用层协议时所包含的特殊指纹信息。
①主动探测:扫描主机向目标主机主动发送特制的数据包,根据反馈包中所包含的指纹特征,快速准确识别开放端口所绑定的网络服务。工具nmap -sV.
②被动识别:工具PADS.
X04漏洞扫描
Nessus漏洞扫描器原理
首先对目标网络或主机进行主机和端口扫描,以确定哪些主机开放的端口。
采用一系列更新的漏洞扫描评估插件对端口所绑定网络服务中存在的潜在漏洞进行探测。
工具使用顺序:
1、 新建扫描策略
2、 新建扫描
3、 查看扫描结果
4、 查看漏洞清单
5、 查看漏洞报告
·
·
相关漏扫工具还有AWVS…(较强大),扫描器的使用手册里都有相关使用方法
·
·
******************************************************