1 / 19

设计、制作 : 谭献海 xhtan@home.swjtu 2006 年 9 月

第 15 章 防火墙系统. 设计、制作 : 谭献海 xhtan@home.swjtu.edu.cn 2006 年 9 月. 防火墙是一类防范措施的总称 是一种隔离技术 防火墙作为网络安全的第一道屏障, 放置在两个网络之间强制执行访问控制策略,以保证内部网络的安全。. 概 述. 包过滤防火墙 : 一般工作在网络层, 主要根据数据包的包头信息控制数据包的流动。这类防火墙的核心是过滤算法的设计。

jase
Télécharger la présentation

设计、制作 : 谭献海 xhtan@home.swjtu 2006 年 9 月

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第15章 防火墙系统 设计、制作:谭献海 xhtan@home.swjtu.edu.cn 2006年9月

  2. 防火墙是一类防范措施的总称 • 是一种隔离技术 • 防火墙作为网络安全的第一道屏障,放置在两个网络之间强制执行访问控制策略,以保证内部网络的安全。 概 述

  3. 包过滤防火墙:一般工作在网络层,主要根据数据包的包头信息控制数据包的流动。这类防火墙的核心是过滤算法的设计。包过滤防火墙:一般工作在网络层,主要根据数据包的包头信息控制数据包的流动。这类防火墙的核心是过滤算法的设计。 • 代理防火墙:采用代理(Proxy)方式的防火墙(又称应用层网关)实际上是一组代理程序的集合,当内部网络用户访问外部资源时,需要先将请求转交给防火墙的代理程序,由后者再和外界的服务器进行联系。代理服务器在获得返回数据之后,先经过安全检查,再转交给用户。 防火墙的分类

  4. 包过滤防火墙 外部网卡 内部网卡 内部网络 因特网 图1 包过滤防火墙硬件结构图 1.一般体系结构 包过滤防火墙体系结构 内部主机 数据 往外 数据 往内 数据接收器 数据发送器 内网卡 数据 内往 数据 外往 数据发送器 数据接收器 外网卡 数据 往内 数据 往外 外网

  5. 2.包过滤防火墙软件功能模块: • 报文拦截 • 过滤规则的设置 • 报文分析及包过滤 • 报文转发 • 网络地址转换(NAT) • 流量统计。 包过滤防火墙功能模块

  6. Winsock 技术 包拦截与转发常用实现技术 • NDIS中间层驱动程序 • VPACKET.VxD • libpcap • Winpcap • Packet Driver • ……

  7. 包过滤规则的设置过程:首先,确定自己的安全需求及包过滤规则要达到的安全目标,明确什么是应该和不应该被允许的,然后制定合适的安全策略。其次,必须正式规定允许的包类型、包字段的逻辑表达式。最后,还必须用防火墙支持的语法重写表达式。包过滤规则的设置过程:首先,确定自己的安全需求及包过滤规则要达到的安全目标,明确什么是应该和不应该被允许的,然后制定合适的安全策略。其次,必须正式规定允许的包类型、包字段的逻辑表达式。最后,还必须用防火墙支持的语法重写表达式。 • 创建包过滤规则示例 1.创建几个允许流入和流出SMTP连接的例子,这样Email可以进行传送,如表1 规则集A所示: 过滤规则

  8. 2. 在TCP协议头字段中,有一个字段是ACK位,也称为确认位。这一字段只在连接后置位。在包过滤器中,通过检查这一位来决定通信的方向,可以建立只允许所需方向的连接-不论是流入还是流出。 例如,如果需要客户端建立一个从工作站到因特网上服务器的Telnet会话,但不允许相反方向的Telnet会话,那么要建立和表2 规则集B 相似的规则: 过滤规则

  9. (1) 过滤规则序号FRNO(Filter rule Numbler)。它决定过滤算法执行时过滤规则排列的顺序。正确地排列过滤规则是至关重要的,一般将重要的规则放在前面。 (2) 过滤方式(Action)包括允许(Allow)和禁止(Block); (3) 源MAC地址(Source MAC address); (4) 源IP地址SIP(Source IP address); (5) 源端口SP(Source port); (6)目的MAC地址(Destination MAC address); (7) 目的IP地址DIP(Destination IP address); (8) 目的端口DP(Destination port); (9) 类型协议标志PF(Protocol flags option); • 表示请求连接的单独的SYN • 表示连接确认的SYN/ACK • 表示连接终断的FIN (10) 最后一项是注释(Comment)。 常用的包过滤规则

  10. 前同步码 目的地址 源地址 帧类型 帧数据 CRC 8字节 6字节 6字节 2字节 可变长度 4字节 • 协议解码模块对捕获到的数据包进行分析,根据过滤规则来判断该数据包合法与否,如果合法,则转发;否则丢弃。 协议解码模块支持下列协议的处理:以太帧、 IP ARP/RARP、ICMP、IGMP、TCP、UDP等。 首先提取并分析接收到的以太帧,格式如表3 以太网物理帧数据格式 所示: 报文分析 TYPE=08 00(16进制),说明是IP数据包 08 06(16进制),说明是ARP数据包 80 35(16进制),说明是RARP数据包 ……

  11. 分析报头字段 应用下一规则 是否允许传输 转发 是 否 是否是可疑包 是 记录可疑包 否 是 是否被阻塞 是 阻塞包 否 结束 否 是否最后一条规则 包过滤规则 报文分析一般步骤

  12. 报文分析 由此提取出ARP数据包和IP数据包。下图为ARP报文分析流程图。

  13. 报文分析

  14. 版本号 首部长度 服务类型 总长度 标志符 标志 分片偏移量 寿命 协议 首部校验和 源站IP地址 目的站IP地址 IP选项+填充 表4 IP数据包格式 报文分析 其中,协议字段的值标明了IP数据包的内容类型,若为6说明为TCP包,若为17说明为UDP包,若为1说明为ICMP包,若为2说明为IGMP包,等等。

  15. IP报文分析

  16. 源端口 目的端口 发送序号 确认序号 首部长度 保留 标志比特 窗口 校验和 紧急指针 TCP选项+填充 HTTP数据是通过TCP进行传输的,通过判断IP报头 中协议字段的值可以提取TCP包。TCP报文格式为: 报文分析 因为HTTP服务的端口号是80,所以通过检查TCP报头中的端口号就可以知道是不是HTTP数据,若目的端口号为80,则说明是HTTP数据包,我们就可以进一步对HTTP报文进行必要的内容过滤。

  17. 防火墙的另外一个功能就是进行网络地址转换(NAT,Network Address Translation)将专用网络中的专用(私有)IP地址转换成在因特网上使用的全球唯一的公共(合法的)IP地址。 • 以下为TCP NAT实例: 网络地址转换(NAT)

  18. 1. 主机希望与web 服务器 128.32.32.68建立连接,它使用它的内部地址10.0.0.3发送SYN报文 2. NAT gateway 发现 SYN 标志置位,往NAT地址转换表中增加一个条目,然后利用网关的外部IP地址 24.1.70.210改写报文,更新报文的校验和. Internet 2 1 PROTO SADDR DADDR SPORT DPORT FLAGS CKSUM PROTO SADDR DADDR SPORT DPORT FLAGS CKSUM PROTO SADDR DADDR SPORT DPORT FLAGS CKSUM TCP 24.1.70.210 128.32.32.68 40960 80 SYN 0x2436 TCP 10.0.0.3 128.32.32.68 1049 80 SYN 0x1636 TCP 128.32.32.68 24.1.70.210 80 40960 SYN, ACK 0x8041 128.32.32.68 Server 3 4 PROTO SADDR DADDR SPORT DPORT FLAGS CKSUM TCP 128.32.32.68 10.0.0.3 80 1049 SYN, ACK 0x7841 4. NAT 网关查找地址转换表,找到匹配的源和目的地址和端口号,利用内部IP地址改写报文 3. 服务器响应SYN ACK报文,该报文被发送到NAT 网关的IP地址 网络地址转换(NAT) NAT Gateway 10.0.0.1 24.1.70.210 10.0.0.3 128.32.32.68 NAT Translation Table Client Server IPAddr Port IPAddr Port NATPort 10.0.0.3 1049 128.32.32.68 80 40960 . . . .. . . . .. . .

  19. 每接收到一个数据包,就根据该数据包的数据长度进行网络流量分类统计。流量统计除了根据IP地址统计之外,还可以根据MAC地址和IP报头中的协议以及TCP报头中的端口号(应用)进行流量统计。每接收到一个数据包,就根据该数据包的数据长度进行网络流量分类统计。流量统计除了根据IP地址统计之外,还可以根据MAC地址和IP报头中的协议以及TCP报头中的端口号(应用)进行流量统计。 • 流量统计以后,还要提供流量查询及流量统计报表等功能。根据用户流量统计,并根据用户流量控制用户对计费网络的访问。由流量与费率的乘积就可以进行计费。 流量统计

More Related