MonaLisa
OSI
7.应用层
(Application Layer)
|
6.表示层
(Presentation Layer)
|
5.会话层
(Session Layer)
|
4.传输层
(Transport Layer)
|
3.网络层
(Network Layer)
|
2.数据链路层
(Data Link Layer)
|
1.物理层
(Physical Layer)
扫描器功能 :
1.网络扫描
2.端口扫描
3.服务与版本探测
4.操作系统探测
高级特性(nmap):
1.隐藏扫描源
2.激活时间特性(扫描工作速率变化)(针对防护设备过流量)
3.逃避防火墙
4.报告
端口服务扫描
技术类型:
1.连接扫描(容易被记录):正经完成三次握手再异常终止
2.半开扫描(主要,无法逃避IPS检测):SYN->|<-SYN-ACK|RST->
3.隐秘扫描:SYN-ACK/FIN/ACK/NULL/XMAS
3.操作系统探测
技术:探测窗口大小、初始化序列号
5.逃避
(技术类型
1.慢速扫描
2.分片:凭借众多的分片拖垮IPS的缓存
3.欺骗:伪装众多主机进行扫描
4.指定源端口
5.指定IP选项)
扫描的用途:
1.安全审计
2.兼容性测试
3.资产管理
4.域内设备清单
端口扫描
Open端口:
1.潜在的安全的弱点
2.提供应用与服务的清单
3.确认软件策略的强度
内部检测用途:
1.测试防火墙的开放端口
2.对工作站IP地址进行扫描,决定是否任何未授权的网络应用被安装
3.判断是否正确的Web服务器版本被安装到DMA区域
4.探测哪些系统开放了文件共享端口
5.探测未授权的FTP服务器、打印机和操作系统
安全审计用途:
1.统计防火墙,确认防火墙的过滤策略
2.扫描便捷设备开放的端口号
3.对服务的适当版本进行扫描
4.利用OS扫描技术,找到过时的OS和未授权的系统
5.发现未授权的应用和服务
常见端口扫描类型:
Tcp Connect()
SYN
NULL
FIN
Xmas-Tree
Dunb
ACK
1.Tcp Connect()
扫描试图与每一个tcp端口进行“三次握手”。
开放情况:
SYN->
<-SYN-ACK
ACK->
关闭情况:
syn->
<-rst
Syn扫描
syn扫描比tcp connect()扫描隐蔽一些,syn扫描仅仅发送初始syn数据包给目标主机,如果端口开放,就响应syn-ack数据包;如果端口没开,是响应rst数据包。
开放情况:
syn->
<-syn/ack
rst->
关闭情况:
syn->
<-rst
Null扫描
在null扫描,将一个没有设置标志位的数据包发送给tcp端口,在正常的tcp通信中,至少要设置标识位。然而,根据rfc793 在端口关闭的情况下,如果收到一个没有设置标志位的数据字段,那么接受主机应该丢弃这个分段,并发送一个rst。当每一个tcp端口没有设置标志位的数据包时,如果目标端口开放,那么目标主机忽略该数据包,不会响应包到达发起扫描的客户pc中
端口开放:
null->
端口关闭:
null->
<-rst
实际上 windows并不遵从rfc793 当使用windows系统的主机接收到没有标准位的数据包时,无论端口开放与否,都回应一个rst数据包。当时基于unix的主机遵从rfc793.
综上所述,
使用null扫描可以辨别主机os,如果扫描结果是主机全部端口关闭(正常情况下任何主机一定有端口开放),则目标主机一定为windows,如果有开放就为unix-os。
Fin扫描
四次FN交换:
FIN+ACK
ACK
FIN+ACK
ACK
反向扫描,与null相似,同样比syn与tcpconnect()扫描更隐蔽一些,当精确度也相对低一些。
fin位指示tcp会话结束,与所有类型反向扫描一样,响应rst数据包表示端口关闭,没有响应表示开放。
(注意Windows-os)
开放情况
fin->
关闭情况
fin->
<-rst
Xmas-Tree 扫描
圣诞树扫描
发送 URG/PSH/FIN
URG 紧急标识位(现在没有用了)
PSH 强制将数据压入缓冲区
FIN 在结束tcp会话时使用
这个扫描中使用的技巧并不是这些标志位原来的用途,但她们可以一起同时使用。正常tcp连接不应该同时设置这3个标志。
端口开放
URG/PSH/FIN->
端口关闭
URG/PSH/FIN->
<-RST
Dump扫描
哑扫描 ,idle扫描,反向扫描,在扫描目标主机的过程中,使用第三方僵尸计算机作为“哑”主机。这台主机并不存储敏感数据,这样主机访问不会引起人们的注意。
在idle扫描中 ,僵尸主机向目标主机发送syn,目标按情况回复syn/ack ,rst。僵尸主机对应syn/ack回应rst;对rst不回应。因此只要控制僵尸主机的发包数量就可以知道目标主机端口开放情况。为了获得伪装主机在扫描中发包数量,我们可以利用os存在的ipid值预测漏洞。
ACK扫描
ack扫描通常用来穿过防火墙规则集,在ack扫描中,使用响应包来发现防火墙的配置信息,如果某个端口被防火墙过滤,那么就不会返回数据包,如果没有被过滤,就返回rst。通过侦听rst数据包,可以了解端口过滤情况.
1.典型设备:集线器 中继器
2.帧:提供有序并且连续的方式发送数据
数据链路层:管理物理地址,同步数据包,流量监控,物理层错误通告
典型设备:交换机:二层交换机降低了发送数据时网络的拥塞
因为它仅仅只会把数据发送到目的计算机所连接到的接口上,单端口转发
3.网络层:三层地址为逻辑地址
重要特点:可路由:将设备规划成各种不同的网段、IP、路由
典型设备:路由器与三层交换机
任务:1.逻辑地址规划
2.路由
4.传输层:有责任在两个点之间传输数据,维护链路
提供在两个点间的数据传输,管理点对点的流量控制、错误检测、错误恢复
主要两大协议:TCP(面向链接)、UDP(非面向链接)
5.会话层:1.插入一个会话层的头部,在两端对话层间同步数据
2.协商全双工与半双工
3.在两个进程间建立连接
6.表示层:
1.转换数据/协议转换,转换网络类型,是网络服务操作所在层
2.压缩、加密解密
7.应用层:各种各样的应用程序