(控制理论与控制工程专业论文)物理隔离网闸linux内核安全模块的设计.pdf_第1页
(控制理论与控制工程专业论文)物理隔离网闸linux内核安全模块的设计.pdf_第2页
(控制理论与控制工程专业论文)物理隔离网闸linux内核安全模块的设计.pdf_第3页
(控制理论与控制工程专业论文)物理隔离网闸linux内核安全模块的设计.pdf_第4页
(控制理论与控制工程专业论文)物理隔离网闸linux内核安全模块的设计.pdf_第5页
已阅读5页,还剩65页未读 继续免费阅读

(控制理论与控制工程专业论文)物理隔离网闸linux内核安全模块的设计.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

iv 摘 要 internet 是开放性国际性和自由性网络正是因为因特网的这些特性决定了它 的安全性受到人们的高度重视近些年来黑客活动频繁猖獗给因特网的安全带来 不少的麻烦传统的以防火墙为核心的安全防御体系已经不足以给安全性要求很高 的网络提供完善的保护于是物理隔离技术产生了物理隔离网闸是物理隔离技 术的典型代表是一种软硬结合的网络安全产品它能提供比防火墙更高的安全级 别本文以物理隔离网闸为背景论述了如何加强网闸外处理机上 linux 操作系统 的内核安全使之能稳定安全的运行 本文首先介绍了物理隔离网闸的基本原理和应用说明了它为什么能提供比防 火墙更高的安全性能并描述了本人所在课题小组研制开发的物理隔离网闸的内部 结构包括网闸内部的组成结构各部分所使用的硬件和软件解释了为什么要 使用 linux 作为网闸内外处理机上的操作系统以及本论文所研究的主要问题即 如何利用linux提供的防火墙软件包构建物理隔离网闸外处理机的第一道安全 防线如何利用 linux 的内核变量进一步加强 linux 操作系统的网络安全给物 理隔离网闸加上第二道安全防线如何利用入侵检测系统 lids 弥补 linux 存在的 漏洞加强内核的防御功能 在以后的章节里 详细论述了本系统中所使用的三种网络安全技术 l i n u x 内置 防火墙软件包l i n u x 内核变量l i n u x 入侵检测系统 l i d s 的功能和原理并讲述 了如何在本系统中使用这三种技术来依次为物理隔离网闸外处理机加上三道内核防 线 最后本人总结了论文的贡献并指出了若干有待将来进一步解决的问题 关键字物理隔离网闸 linux 防火墙 内核变量 lids 入侵检测系统 v abstract internet is open, international and unrestricted, which is the reason why people attach great importance to its security. in recent years, hachers frequent attacks bring a great deal of trouble to internets security. traditional security system that is based on firewall is now not strong enough to provide perfect protection for networks which require high rank of security. consequently, air gap technology appears. air gap consists of software and hardware, and it is the better network security solution compared with firewall. this article presents how to enhance the secutiry of the linuxs kernel on the outer processor of the air gap, so as to help air gap performance stably. at first, the basic principle and application of air gap and why it can provide higher rank of security compared with firewall are presented. then the inside structure of the air gap in our studying group is described, and why we use linux as the operating system on the processors in the air gap is explained, and what this article focuses on is told and that is: how to use netfilter+iptables to set up firewall for linux, how to use linux kernel variables to strengthen firewall and how to use lids to enhance linuxs kernel. in the following chapters, the three kinds of network security technologies we used here are discussed. they are netfilter framework+iptables, linux kernel variables and linux intrusion detection system(lids). and then how to use them to add three lines of defence for linuxs kernel on the outer processor of the air gap is presented. at last, there is a conclusion of this articles contribution and the problems that wait to be solved. key words: air gap, linux firewall, kernel variables, lids iii 独创性声明 本人声明所呈交的学位论文是我个人在导师的指导下进行的研究工 作及取得的研究成果近我所知除文中已标明引用的内容外本论文 不包含任何其他人或集体已经发表或撰写过的研究成果对本文的研究 做出贡献的个人和集体均已在文中以明确方式标明本人完全意识到 本声明的法律结果由本人承担 学位论文作者签名涂维嘉 日期2005 年 4 月 26 日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留使用学位论文的规定即 学校有权保留并向国家有关部门或机构送交论文的复印件和电子版允 许论文被查阅和借阅本人授权华中科技大学可以将本学位论文的全部 或部分内容编入有关数据库进行检索可以采用影印缩印或扫描等复 制手段保存和汇编本学位论文 保密在_年解密后适用本授权数 本论文属于 不保密 请在以上方框内打 学位论文作者签名涂维嘉 指导教师签名田忠和 日期2005 年 4 月 26 日 日期2005 年 4 月 26 日 1 1 绪 论 1.1 网络安全简介 1.1.1 计算机网络安全问题的特征 以 internet 为代表的全球性信息化浪潮日益深刻 信息网络技术的应用正日益普 及和广泛应用层次正在深入,应用领域从传统的小型业务系统逐渐向大型关键 业务系统扩展典型的如党政部门信息系统金融业务系统企业商务系统等伴 随网络的普及 安全日益成为影响网络效能的重要问题 而 internet 所具有的开放性 国际性和自由性在增加应用自由度的同时,对安全提出了更高的要求 这主要表现在 开放性的网络导致网络的技术是全开放的任何一个人团体都可能获得 因而网络所面临的破坏和攻击可能是多方面的例如可能来自物理传输线路的攻 击也可以对网络通信协议和实现实施攻击可以是对软件实施攻击也可以对硬 件实施攻击 国际性的一个网络还意味着网络的攻击不仅仅来自本地网络的用户它可以来 自 internet 上的任何一个机器也就是说,网络安全所面临的是一个国际化的挑战 自由意味着网络最初对用户的使用并没有提供任何的技术约束用户可以自由 地访问网络自由地使用和发布各种类型的信息用户只对自己的行为负责而没 有任何的法律限制尽管开放的自由的国际化的 internet 的发展给政府机构 企事业单位带来了革命性的改革和开放 使得他们能够利用 internet 提高办事效率和 市场反应能力以便更具竞争力通过 internet他们可以从异地取回重要数据同 时又要面对网络开放带来的数据安全的新挑战和新危险如何保护企业的机密信息 不受黑客和工业间谍的入侵,已成为政府机构企事业单位信息化健康发展所要考虑 的重要事情之一 1) 网络安全 4321 天生脆弱 计算机网络安全系统的脆弱性是伴随计算机网络一同产生的换句话说安全 2 系统脆弱是计算机网络与生俱来的致命弱点在网络建设中网络特性决定了不可 能无条件无限制的提高其安全性能要使网络更方便快捷又要保证网络安全 这是一个非常棘手的两难选择 而网络安全只能在两难选择所允许的范围中寻找 支撑点因此可以说世界上任何一个计算机网络都不是绝对安全的 2) 黑客攻击后果严重 近几年黑客猖狂肆虐四面出击使交通通讯网络中断军事指挥系统失灵 电力供水系统瘫痪银行金融系统混乱危及国家的政治军事经济的安全与 稳定在世界各国造成了难以估量的损失 3) 网络杀手集团化 目前网络杀手除了一般的黑客外还有一批具有高精尖技术的专业杀手更 令人担忧的是出现了具有集团性质的网络恐怖分子甚至政府出面组织的网络 战黑客战其规模化专业性和破坏程度都使其他黑客望尘莫及可以说由 政府组织的网络战黑客战是当前网络安全的最大隐患目前美国正开展 用无线电方式卫星辐射式注入方式网络方式把病毒植入敌方计算机主机或各类 传感器网桥中的研究以伺机破坏敌方的武器系统指挥控制系统通信系统等高 敏感的网络系统另外为达到预定目的对出售给潜在敌手的计算机芯片进行暗 中修改在 cpu 中设置芯片陷阱可使美国通过因特网发布指令让敌方电脑停 止工作以起到定时炸弹的作用 4) 破坏手段多元化 目前网络恐怖分子除了制造传播病毒软件设置邮箱炸弹更多的 是采取借助工具软件对网络发动袭击令其瘫痪或者盗用一些大型研究机构的服务 器使用拒绝服务程序如 tfn 和与之相近的程序等,指挥它们向目标网站传输远 远超出其带宽容量的垃圾数据从而使其运行中断多名黑客甚至可以借助同样的 软件在不同的地点集中火力对一个或者多个网络发起攻击而且黑客们还可 以把这些软件神不知鬼不觉地通过互联网安装到别人的电脑上然后在电脑主人 根本不知道的情况下借刀杀人 由此可见计算机网络安全问题直接关系到一个国家的政治军事经济等 3 领域的安全和稳定目前黑客猖獗平均每 20 秒钟世界上就有一种黑客事件发生 因此提高网络安全性是保证信息产业持续稳定发展的重要保证和前提条件 1.1.2 网络安全体系架构的演变 通常意义上的计算机网络信息系统安全措施 5 包含以下几个方面 操作系统的安全 网络通讯服务的安全 应用系统及数据库系统的安全存取安全 计算机病毒防治技术 安全风险评估和风险分析 系统实时监控和响应技术 从目前网络安全市场的构成看防火墙防病毒vpn 和入侵检测ids是 市场的主流产品安全体系以防火墙为核心因此要了解网络安全的架构体系的演 变必须防火墙进行深入的了解 目前网络安全市场上最流行的安全架构是以防火墙为核心的安全体系架构 通过防火墙来实现网络的安全保障体系然而以防火墙为核心的安全防御体系未 能有效地防止目前频频发生网络攻击 在防火墙的发展过程中人们最终意识到防火墙在安全方面的局限性高性能 高安全性易用性方面的矛盾并没有很好的解决防火墙体系架构在高安全性方面 的缺陷驱使人们追求更高安全性的解决方案人们期望更安全的技术手段物理 隔离技术应运而生 1.2 物理隔离技术简介 物理隔离技术是安全市场上的一匹黑马在经过漫长的市场概念澄清和马拉松 式技术演变进步之后市场最终接受物理隔离具有最高安全性人们把高安全性的 所有要求都集中在物理隔离上它中断直接连接不光检查所有的协议还把协议 给剥离掉直接还原成最原始的数据对数据可以检查和扫描防止恶意代码和病 4 毒甚至对数据的属性进行要求不支持 tcp/ip不依赖操作系统总之对 osi 的七层进行全面检查在异构介质上重组所有的数据 学术界一般认为最早提出物理隔离技术的应该是以色列和美国的军方但 是到目前为止并没有完整的关于物理隔离技术的定义和标准从不同时期的用词 也可以看出物理隔离技术一直在演变和发展 物理隔离技术不是要替代防火墙它的指导思想与防火墙有很大的不同防 火墙的思路是在保障互联互通的前提下尽可能安全而物理隔离的思路是在保证 必须安全的前提下 尽可能互联互通 它是用户深度防御的安全策略的另外一块基 石它能解决目前防火墙存在的根本问题 1.3 linux 操作系统简介 linux 76 是完全内存保护 多进程的 源码开放的操作系统 几乎所有的 unix 系统的应用软件都已移植到了 linux 上linux 还提供了强大的网络功能有多 种可选择窗口管理器x windows强大的语言编译器 gccg+等基于 linux 的诸多优点 在物理隔离网闸的内外处理机上采用经过裁剪的 linux 作为嵌入式操 作系统 1.4 课题的背景和内容 本课题起源于物理隔离网闸 8 的研究和开发本人所在课题小组研制的物 理隔离网闸内部由三个部分组成 外处理单元 内处理单元 固态介质及切换控制电路 其中内外处理单元采用 linux 作为嵌入式操作系统固态介质及切换控 制电路采用 flash 闪存卡和单片机及电子开关 由于外处理单元面临来自 internet 的潜在攻击 所以加强外处理单元的网络 安全性能对整个网闸的安全稳定运行是至关重要的 5 本课题针对这个问题研究如何以 linux 为基础加强外处理单元的网络安 全主要致力于以下三个问题 1) 如何利用 linux 提供的防火墙软件包构建物理隔离网闸外处理机的第一道 内核防线 2) 如何利用 linux 的内核变量进一步加强 linux 操作系统的网络安全给 物理隔离网闸加上第二道内核防线 3) 如何利用入侵检测系统 lids 弥补 linux 存在的漏洞加强内核的防御功 能 6 2 物理隔离网闸原理的介绍和分析 我国 2000 年 1 月 1 日起实施的计算机信息系统国际联网保密管理规定第二 章第六条规定“涉及国家秘密的计算机信息系统不得直接或间接地与国际互联网 或其它公共信息网络相连接必须实行物理隔离” 物理隔离网闸 9 最早出现在美国以色列等国家的军方用以解决涉密网络与 公共网络连接时的安全我国也有庞大的政府涉密网络和军事涉密网络但是我国 的涉密网络与公共网络特别是与互联网是无任何关联的独立网络不存在与互联 网的信息交换也用不着使用物理隔离网闸解决信息安全问题所以在电子政务 电子商务之前物理隔离网闸在我国因无市场需求产品和技术发展较慢 近年来随着我国信息化建设步伐的加快“电子政务”应运而生并以前所未 有的速度发展电子政务体现在社会生活的各个方面工商注册申报网上报税 网上报关基金项目申报等等电子政务与国家和个人的利益密切相关在我国电 子政务系统建设中外部网络连接着广大民众内部网络连接着政府公务员桌面办 公系统专网连接着各级政府的信息系统在外网内网专网之间交换信息是基 本要求如何在保证内网和专网资源安全的前提下实现从民众到政府的网络畅通 资源共享方便快捷是电子政务系统建设中必须解决的技术问题一般采取的方法 是在内网与外网之间实行防火墙的逻辑隔离在内网与专网之间实行物理隔离物 理隔离网闸成为电子政务信息系统必须配置的设备由此开始物理隔离网闸产品 与技术在我国快速兴起成为我国信息安全产业发展的一个新的增长点 2.1 物理隔离网闸的定义 物理隔离网闸是使用带有多种控制功能的固态开关读写介质连接两个独立主机 系统的信息安全设备由于物理隔离网闸所连接的两个独立主机系统之间不存在 通信的物理连接逻辑连接信息传输命令信息传输协议不存在依据协议的信 息包转发只有数据文件的无协议“摆渡”且对固态存储介质只有“读”和“写”两个命 7 令 所以 物理隔离网闸从物理上隔离 阻断了具有潜在攻击可能的一切连接 使“黑 客”无法入侵无法攻击无法破坏实现了真正的安全 2.2 物理隔离网闸的信息交换方式 我们知道计算机网络依据物理连接和逻辑连接来实现不同网络之间不同主机 之间主机与终端之间的信息交换与信息共享物理隔离网闸既然隔离阻断了网 络的所有连接实际上就是隔离阻断了网络的连通网络被隔离阻断后两个 独立主机系统之间如何进行信息交换网络只是信息交换的一种方式而不是信息 交换方式的全部在互联网时代以前信息照样进行交换如数据文件复制拷贝 数据摆渡数据镜像数据反射等等物理隔离网闸就是使用数据“摆渡”的方式实 现两个网络之间的信息交换 网络的外部主机系统通过物理隔离网闸与网络的内部主机系统“连接”起来 物理 隔离网闸将外部主机的 tcp/ip 协议全部剥离将原始数据通过存储介质以“摆渡” 的方式导入到内部主机系统实现信息的交换物理隔离网闸在任意时刻只能与一 个网络的主机系统建立非 tcp/ip 协议的数据连接即当它与外部网络的主机系统相 连接时它与内部网络的主机系统必须是断开的反之依然即保证内外网络不 能同时连接在物理隔离网闸上物理隔离网闸的原始数据“摆渡”机制是原始数据通 过存储介质的存储写入和转发读出 物理隔离网闸在网络的第七层将数据还原为原始数据文件然后以“摆渡文件” 的形式来传递原始数据任何形式的数据包信息传输命令和 tcp/ip 协议都不可能 穿透物理隔离网闸这同透明桥混杂模式ip over usb代理主机以及通过开 关方式来转发信息包有本质的区别下面以内网与专网之间的物理隔离网闸为例 说明通过物理隔离网闸的信息交换过程 当内网与专网之间无信息交换时物理隔离网闸与内网物理隔离网闸与专网 内网与专网之间是完全断开的即三者之间不存在物理连接和逻辑连接如图 2.1 所 示 8 图 2.1 内网专网物理隔离网闸在无信息交换时的相互关系 当内网数据需要传输到专网时物理隔离网闸主动向内网服务器数据交换代理 发起非 tcp/ip 协议的数据连接请求并发出“写”命令将写入开关合上并把所有 的协议剥离将原始数据写入存储介质在写入之前根据不同的应用还要对数 据进行必要的完整性安全性检查如病毒和恶意代码检查等 在此过程中专网服务器与物理隔离网闸始终处于断开状态见图 2.2 所示 图 2.2 内网数据写入物理隔离网闸时的信息交换关系 一旦数据完全写入物理隔离网闸的存储介质开关立即打开中断与内网的连 接转而发起对专网的非 tcp/ip 协议的数据连接请求当专网服务器收到请求后 发出“读”命令将物理隔离网闸存储介质内的数据导向专网服务器专网服务器收 到数据后按 tcp/ip 协议重新封装接收到的数据交给应用系统完成了内网到专 网的信息交换详见图 2.3 所示 9 图 2.3 从物理隔离网闸读数据时的信息交换关系 至于从专网到内网的信息交换与上述类似只是方向相反 由上不难看出每一次数据交换物理隔离网闸都经历了数据的写入数据读 出两个过程内网与外网或内网与专网永不连接内网和外网或内网与专网 在同一时刻最多只有一个同物理隔离网闸建立非 tcp/ip 协议的数据连接 2.3 物理隔离网闸的组成 1) 物理隔离网闸的三个组成单元 外部处理单元 内部处理单元 隔离硬件 2) 物理隔离网闸的主要安全模块 安全隔离模块隔离硬件在两个网络上进行切换通过对硬件上的存储芯片的 读写完成数据的交换 保证两个网络在物理层和链路层断开不与两个网络同时 连接两个网络交换的数据必须是剥离 tcp/ip 协议后在应用层之上进行? 内核 防护模块在内外部处理单元中嵌入安全加固的操作系统设置基于内核的 ids(intrusion detection system入侵检测系统简称 ids)等 安全检查模块数据完整性检查病毒查杀恶意攻击代码检查等 身份认证模块支持身份认证数字签名 访问控制模块实行强制访问控制 10 安全审计模块建立完善日志系统 2.4 物理隔离网闸主要功能 阻断网络的直接物理连接物理隔离网闸在任何时刻都只能与非可信网络和可 信网络上之一相连接而不能同时与两个网络连接 阻断网络的逻辑连接物理隔离网闸不依赖操作系统不支持 tcp/ip 协议两 个网络之间的信息交换必须将 tcp/ip 协议剥离将原始数据通过 p2p 的非 tcp/ip 连接方式通过存储介质的“写入”与“读出”完成数据转发 数据传输机制的不可编程性物理隔离网闸的数据传输机制具有不可编程的特 性 安全审查 物理隔离网闸具有安全审查功能 即网络在将原始数据“写入”物理隔 离网闸前根据需要对原始数据的安全性进行检查把可能的病毒代码恶意攻击 代码消灭干净等 原始数据无危害性物理隔离网闸转发的原始数据不具有攻击或对网络安全 有害的特性就像 txt 文本不会有病毒一样也不会执行命令等 管理和控制功能建立完善的日志系统 根据需要建立数据特征库在应用初始化阶段结合应用要求提取应用数据 的特征形成用户特有的数据特征库作为运行过程中数据校验的基础当用户请 求时提取用户的应用数据抽取数据特征和原始数据特征库比较符合原始特征 库的数据请求进入请求队列不符合的返回用户实现对数据的过滤 根据需要提供定制安全策略和传输策略的功能用户可以自行设定数据的传输 策略如传输单位基于数据还是基于任务传输间隔传输方向传输时间 启动时间等 支持定时/实时文件交换支持支持单向/双向文件交换支持数字签名内容过 滤病毒检查等功能 邮件同步支持标准的 smtp 服务安全高可用性的邮件过滤策略可为每 个用户配置不同的邮件交换策略内外网邮件镜像等 11 支持 web 方式 数据库同步双向/单向数据同步同步内容可定制多种同步方式数据可定 时更新 支持多种数据库oraclesybaseinfomixdb2sql server 等多种主流数据 库 2.5 物理隔离网闸主要指标 ?数据交换速率支持百兆网络和千兆网络的数据交换速率 ?切换时间使用高速安全隔离电子开关支持毫秒级的高速切换 2.6 物理隔离网闸应用定位 1) 涉密网与非涉密网之间如图 2.4 所示 图 2.4 物理隔离网闸在涉密网络与非涉密网络中的应用示意图 2) 局域网与互联网之间内网与外网之间如图 2.5 所示 有些局域网络特别是政府办公网络涉及政府敏感信息有时需要与互联网 在物理上断开用物理隔离网闸是一个常用的办法 3) 办公网与业务网之间如图 2.6 所示 由于办公网络与业务网络的信息敏感程度不同例如银行的办公网络和银行 业务网络就是很典型的信息敏感程度不同的两类网络为了提高工作效率办公网 络有时需要与业务网络交换信息为解决业务网络的安全比较好的办法就是在办 12 公网与业务网之间使用物理隔离网闸实现两类网络的物理隔离 图 2.5 物理隔离网闸在局域网与互联网之间的应用示意图 图 2.6 物理隔离网闸在办公网与业务网之间的应用示意图 4) 电子政务的内网与专网之间如图 2.7 所示 在电子政务系统建设中要求政府内网与外网之间用逻辑隔离在政府专网与内 网之间用物理隔离现常用的方法是用物理隔离网闸来实现 5业务网与互联网之间如图 2.8 所示 电子商务网络一边连接着业务网络服务器一边通过互联网连接着广大民众 为了保障业务网络服务器的安全在业务网络与互联网之间应实现物理隔离 13 图 2.7 物理隔离网闸在电子政务系统中的应用示意图 图 2.8 网络银行信息系统中的物理隔离网闸应用示意图 14 2.7 我国物理隔离网闸的市场空间 据有关方面报导我国在经过了年多的政府上网工程之后电子政务的网络 建设方向今后将有重大变化外网的建设尤其是门户网站的建设已基本完成建设 热潮已经过去投资将大大减少电子政务网络建设的重点将逐步转向网络应用工 程的建设上来政府专网将成为今后电子政务网络建设的焦点也是政府电子政务 投资的主要领域 政府网络应用工程包括网上注册审批系统基金项目的网上申报系统网上 纳税系统政府采购网上投标系统网上社会保障服务系统网上报关系统出入 境管理系统等等这些工程相对于门户网站的建设投资更大效益也更明显 我国政府内网局域网仅仅实现了联接到互联网大量信息资源库建设尚处 于起步阶段内网很多功能尚未实现中央政府网站和地方政府网站地方政府各 部门网站之间几乎是互不联接信息不公开不共享形成信息“孤岛”严重制约 了全国电子政务业务的发展目前我国的政府专网只在少数几个城市北京广 东南海山东青岛等建设国内学术界对是否有必要建设一个政府专网体系还有 争论但从电子政务发展需要来看政府专网已经是电子政务建设不可或缺的部分 今后政府专网的数量将有望大增 近一年来国务院组织了上百位专家对国家电子政务开展多方面的研究形成了 一套电子政务发展框架据国务院信息办政策组杨学山司长透露目前政府正在采 取三项措施建设电子政务一是建设两个统一的电子政务网络平台政府内网 主要承担各级政府的办公业务和其他业务政府外网主要处理企业公众服务 业和政府部门之间的业务二是要建设推进以“金”字工程为主的十二项重点工程 三是加快重要战略性数据库建设如人口数据库法人单位数据库空间地理和自 然资源信息库宏观经济数据库农业信息库等 中央和地方都为电子政务建设投入了雄厚的资金预计我国各级政府将投入上 万亿元用于电子政务建设仅中央政府层面的电子政务建设投资至少将在 10 亿元以 上 15 电子政务网一头连接着民众一头连接着政府电子政务的内网和专网上存储 着许多重要或敏感的数据运行着重要的应用电子政务网的特殊运行环境要求 它既要保证高强度的安全又要通过互联网与民众方便地交换信息仅靠防火墙 无法防止内部信息泄漏 病毒感染 黑客入侵 业内人士认为 物理隔离网闸 gap 技术在电子政务建设中的广泛应用是必然的电子政务网的建设为物理隔离网闸提 供了巨大的市场空间物理隔离网闸在电子政务的信息安全投入中占 30%40% 今后几年中电子政务建设中的信息安全市场将占信息安全总市场的 30%40% 从 2003 年起我国信息安全市场总额均在 100 亿元以上其中 30%40%是电子政 务的贡献由此可推算出在电子政务建设中物理隔离网闸将有 916 亿元的市 场空间 2.8 我国物理隔离网闸的产品现状 我国物理隔离网闸的产品研制是近 2 年的事参与研制的单位不多产品种类 也较少产品的性能指标质量指标技术水平处于第一代截止到 2003 年 5 月 31 日通过了公安部计算机信息系统安全产品质量检验中心检测公安部颁发销售许 可证的物理隔离网闸产品情况见表 1其中北京天行网安信息技术有限责任公司研 发的天行安全隔离网闸(topwalk-gap)于 2002 年 9 月通过了国家保密局的技术鉴定 由于物理隔离网闸处于涉密网与非涉密网的网关的特殊位置而且又是网络安全 的最后一道防线用户对产品研发人员的背景和研发单位的背景也是选择产品的重 要条件有些有外资背景公司的产品销售不能不受影响所以在市场上能站住脚 的产品是极为有限的几种见表 2 - 1 表 2 - 1 公安部发放销售许可证的物理隔离网闸产品情况表 单位 证书号码 有效期 产品名称 北京京泰网络科技有限公司 xkc30146 20030704 京泰网络物理隔离系统 bhlnet 1.0 北京盖特佳信息安全技术有限公司 xkc30242 20040611 网闸动态实时网络隔离系统v1.0 16 单位 证书号码 有效期 产品名称 北京大唐永创科技发展有限公司 xkc30253 20040715 网络隔离系统 safedoor 1000 北京天行网安信息技术有限责任公司 xkc30268 20040826 安全隔离网闸 m-1000 型 北京天行网安信息技术有限责任公司 xkc30269 20040826 安全隔离网闸 wd-1000 型 联想控股有限公司 xkc30361 20050307 联想网御安全隔离网闸 网御 sis-3000 中网信息技术有限公司 xkc30363 20050312 中网隔离网闸 x-gap v1.0 珠海经济特区伟思有限公司 伟思网络安全隔离网闸 vigap 北京国保金泰信息安全技术有限公司 xkc20311 国保金泰安全隔离与信息交换系 统 v1.0 2.9 小结 以上对物理隔离网闸的原理作了详细的介绍和分析如上所述物理隔离网闸 内部结构包括了内外两个处理机它们互相协作实现网闸的运作 在本人所在的课题小组里我们采用 linux 作为内外处理机上的操作系统 之所以采用 linux 是基于以下原因 1) 它是开放源代码的免费操作系统可通过 internet 免费获取而且能够非常 容易地建立一个 linux 10 开发平台 2) 具有很强的适应性能适应各种不同的硬件平台 3) linux 下有众多性自创尤异的网络应用几乎覆盖了所有的网络需求 1211 4) 小巧灵活可以根据自己的需要配置内核即可以删除不必要的功能模块 也可以添加自定义的功能模块 由于网闸外处理机会面临来自 internet 的攻击 所以如何加强外处理机上 linux 的网络安全对网闸的安全稳定运行来说非常重要在接下来的三四五章里将 介绍如何在 linux 的基础上构建网闸外处理机上的内核防护 17 3 linux 包过滤防火墙的设计 在 linux 中有许多不同的防火墙软件可供选择安全性可低可高最复杂的 软件可提供几乎无法渗透的保护能力本课题小组开发的物理隔离网闸的外处理机 所采用硬件为单板工控机其可使用的磁盘空间小而 linux 内核所带有的防火墙 软件包十分小巧同时又能提供很高的安全性能所以我们采用 linux 内核提供的 防火墙软件包来构建外处理机上的第一道内核防护 以下将详细介绍linux内置防火墙 16151413 的原理它是配置防火墙规则的基 础 3.1 netfilter 系统 linux下的防火墙技术经历了多次的变革一步步逐渐发展而来从1.1版内核 开始 linux就提供简单的静态包过滤功能 最开始的ipfwadm(是比较老的linux 内核版本提供的防火墙软件包)是由程序员alan cox在linux内核发展的初期从 freebsd(是一种运行在intel平台上可以自由使用的unix系统)的内核代码中移植 过来的在2.2版内核中linux 提供了ipchains(是linux2.2 内核提供的防火墙 软件包)模块这个模块用于实现基本的静态包过滤防火墙可以满足一般包过滤防 火墙的需要但是ipchains没有提供传递数据包到用户空间的框架任何需要对数 据包进行处理的代码都必须运行在内核空间内核编程却非常复杂而且只能用c语 言实现并且容易出现错误并降低了内核的稳定性在ipchains中实现透明代理非 常复杂nat和数据包过滤都在同一个模块内实现使得防火墙代码非常复杂而 且ipchains代码不是模块化扩充性很差不易于扩展 从2.3版内核开始linux内核的网络部分设计者提供了全新机制的内核包过滤 框架netfilter 17 完全克服了ipfwadm和ipchains的缺陷并提供了用户空 间管理工具iptables 能够实现状态检测和完整的包过滤防火墙功能 在经历了2.4 和2.5版内核的升级后netfilter/iptables的稳定性得到了实践中的检验目前 18 ipchains用户都逐渐转到netfilter框架下 3.1.1 netfilter 系统结构 netfilter框架是由目前linux内核ip防火墙部分的维护者俄罗斯内核程序员 rusty russell设计和完成的rusty russell也是ipchains的主要设计和完成者marc boucher.james morris, harald welte等都参与了netftlter项目他们目前都是 linux内核的核心开发成员 netfilter比以前任何一版linux内核的防火墙子系统都要完善强大 netfilter提供了一个抽象通用化的框架它和内核紧密结合在一起该框架定 义的一个子功能的实现就是数据包过滤子系统 这些只是netfilter功能的一部分 它具有非常好的扩充性任何用户都可以编写自己的模块通过netfilter实现对 数据包的任意控制在netfilter框架下可以实现各种基于数据包转发的应用 如:流量控制负载均衡和流量统计等 netfilter框架包含以下几部分 22212019 1) netfilter框架为ipv4和ipv6网络协议都定义一套钩子函数其中ipv4定义 了5个钩子函数在这五个参考点上各引入了一行对nf_hook ()宏函数(定义 在linux2.4.19的/include/linux/netfilter.h里面)的一个相应的调用 图 3.1 钩子函数位置示意 ipv4中netfilter框架中钩子函数位置如图3.1 一个数据包按照图3.1所示经过 各个钩子函数ipv4的5个钩子函数在图示的5个位置分别是: 位置1的nf_ip_pre_routing 位置2的nf_ip_local_in 19 位置3的nf_ip_forward 位置4的nf_ip_post_routing 位置5的nf_ip_local_out 数据包进入协议栈后先经过钩子函数1处理然后进入协议栈的路由部分 决定是转发数据包还是传递给本机处理如果传递给本机由钩子函数2处理后递 交给上层协议如果是转发数据包则由钩子函数3和4处理后送出协议栈本地 产生的数据包经钩子函数5和4处理后送出协议栈 可以把ipv4协议栈上的这五个参考点形象的看成是五个钩子ip数据包在ipv4 协议栈中穿越的时候途经这五个钩子就会被相应的netfilter模块钩住模块 决定如何处理数据包是被原封不动的返回协议找还是经过一些修改再放回协 议栈还是干脆丢弃掉这五个参考点被分别命名为pre_routing, local_in, forward, local_out和post_routing 这些钩子函数在数据包流过协议栈的 几个关键点被调用在这几个点中协议栈将数据包及钩子函数标号作为参数调用 netfilter框架 2) 内核的任何模块都可以对每种协议的一个或多个钩子进行注册和挂接当一 个数据包被传递给netfilter框架时内核能够检测到是否有某个模块对该协议和 钩子函数进行了注册若注册了则调用该模块注册时使用的回调函数这样这些 模块就有机会检查或者修改该数据包丢弃该数据包及指示netfilter将该数据包 转入用户空间的队列 3) 这些排队的数据包被传递给用户空间异步地进行处理一个用户进程能检查 数据包修改数据包也可以重新将该数据包通过离开内核的同一个钩子函数中注 入到内核中对钩子函数进行挂接的内核模块处理完数据包后向netfilter返回 如下数值: nf_accept: 继续传输数据包 nf_drop: 丢弃数据包 nf_stolen: 模块接受数据包不继续传输数据包 nf_queue: 转给用户空间处理 20 nf_repeat: 再次调用钩子函数 任何应用都可以注册这5个钩子函数编写自己的模块实现对数据包的任意控 制数据包可以排队转发到用户空间供用户进程处理根据netfilter的规定 可以编写程序对流经协议栈的任何数据进行处理实现防火墙所需要的各种功能 netfilter核心提供了一个分析处置数据包的架构但是核心代码并不具体 地分析和处理数据包具体的动作由其它的模块来完成核心部分代码可以根据表 中记录的规则信息把数据包转交给能够处理相应规则的模块代码模块在启动的 时候向netfilter核心代码注册这个注册过程主要就是通知核心代码该模 块有一个target()函数和match()函数可以判定一个数据包是否符合规则的匹配要求 netfilter对于ipv4协议栈的修改非常小只是在若干个地方调用了 nf_hook() netfilter的核心部分代码只是维护表 解释表的任务由其它的内核模块完成 netfilter会把由钩子函数钩走的数据包以及表里面相关的策略内容转给相关的模 块由这些模块处理数据包. netfilter虽然可以完成对数据包的分析和处理但是具体的规则必须由系统 管理员编写netfilter只是提供了一个机制而己规则/策略必须送到内核空间中 netfilter维护的规则表中 3.1.2 iptables 系统分析 一个基于netfilter框架称作iptables的数据包过滤系统在linux2.4内核 中实现它实现了和ipchains同样的功能是ipchains的替代工具有更强的功能 iptables在内核中注册了几个规则表(table)数据包流经指定的规则表规 则表里面放置过滤规则数据包在穿越这些表的时候被修改转发或者抛弃目前 这些规则表可以实现数据包过滤(filter表)网络地址转换(nat表)及数据包处理 (mangle表) linux2. 4内核提供的这三种数据包处理功能都基于netfilter提供的钩子函 数这些模块之间是彼此独立的都集成到由netfilter提供的框架中数据包穿 越n e t f i l t e r 系统的示意图如3 . 2 21 图 3.2 一个数据包穿越 netfilter 系统的示意图 下面分析iptables的工作原理 1) 数据包过滤 数据包过滤在filter表中实现filter表不会对数据包进行修改而只对数据 包进行过滤iptables是通过钩子函数nf_ip_local_in, nf_ip_forward及 nf_ip_ local_out接入netfilter框架的因此对于任何一个数据包只在一个 钩子函数点对其进行过滤所以只经过一个规则表的一个规则链但是在ipchains 中一个数据包要遍历三条规则链数据包过滤过程如图3 . 3 所示 图 3.3 数据包过滤过程示意图 22 2) 网络地址转换 网络地址转换由nat表实现nat表监听三个netfilter钩子函数: nf_ip_pre_routing, nf_ip_post_routing和nf_ip_local_out nf_ip_pre_ routing实现对需要转发的数据包的源地址进行地址转换而 nf_ip_post_routing则对需要转发的数据包的目的地址进行地址转换 对于本地 进程产生的数据包的目的地址的转换则由nf_ip_ local_out来实现nat表不同 于filter表因为只有新连接的第一个数据包将遍历表格而随后的数据包将根据 第一个数据包的结果进行同样的转换处理nat表用于实现源地址转换snat目的 地址转换dnat, ip伪装和透明代理 3) 数据包处理 mangle表在nf_ip_pre_routing和nf_ip_local_out钩子中进行注册 使用mangle表可以实现对数据包的控制字段的修改或给数据包附上一些额外的 数据当前的iptables版本支持修改ip数据包的tos字段 4) ip连接跟踪 实现nat功能必须跟踪和保持每个会话的状态连接跟踪是nat的基础在 iptables中作为一个单独的模块实现该模块用于对包过滤功能的扩展使用连接 跟踪来实现基于状态检测的防火墙ip数据包被nf_hook()从netfilter框架取出 后进入netfilter.c中的nf_hook_slow()函数进行处理该函数根据nf_hooks数组处理 数据包nf_hooks数组里面存贮着这些钩子函数这些钩子函数是由各个表放置 进去的一个表就是一组类似的防火墙规则/策略的集合 5) iptables中的规则表 iptables里面默认定义了三个表:filter, mangle和natfilter表是在 /ipv4/netfilter/iptable_filter.c中实现的一个内核模块它调用nf_register_ hook()向 netfilter注册一组钩子函数一个表就是一组防火墙规则/策略的集合但是并不 是所有的规则都要和数据包匹配一次只和属于那个钩子函数的策略匹配因为每 个表里面由若干规则链组成每个链中存储了多个规则每个链是和一个钩子函数 对应的 23 在2.4.19版内核中netfilter_ipv4/ip_tables.h中定义了table中规则的存放格式 由三部分数据组成 3.1.3 iptables 的包过滤机制 网络流量由ip数据包以流的形式从源系统传输到目的地系统每个数据包的头 部附带一些数据位它们包含有关数据包的源目的地和协议类型的信息防火墙 根据规则检查这些头信息以确定接受哪个数据包以及拒绝哪个数据包这个过程 称为包过滤 下面详细分析iptables如何过滤数据包 通过使用iptables用户可以构建定制自己的规则这些规则存储在内核空间 的策略表中 这些规则具有处理动作 它们告诉iptables对何种数据包做何种处理 如果一个数据包与规则匹配可以用接受accept抛弃drop或拒绝reject这3种 动作处理 iptables内置了三个规则表每个规则表又由若干规则链组成数据包就依次 穿越这三个规则表并经过其中的一个或者几个链三个表分别是:filternat 和mangle表 filter表里面包含input, output和forward三条默认的规则链 nat表里 面包含prerouting, postrouting和output三条默认规则链mangle表里 面包含output和prerouting两条规则链以上这些规则链是系统默认的用户 可以在规则表中自己定义规则链 当规则置入适当的链和表后数据包就依次穿越规则链接受过滤匹配 操作系统接收到数据包后经过纠错等处理后进入netfilter框架 首先经过mangle表的prerouting链然后经过nat表的preroufing链 这两步都是在路由选择前进行的然后进入路由选择根据路由表决定是转给本机 进入input链还是转入forward链 本地进程产生的数据先经过mangle表的output链然后是nat表的 output链然后经过filter表的output链再进入路由选择进入forward 链的数据经过过滤后 也再次进入路由选择 数据最后进入nat表的postrouping 24 链这个链主要用于做源网络地址转换 在经历链的过程中数据包中携带的信息与它所传递到的链中的每条规则进行 匹配看它是否与某条规则完全匹配如果与某条规则匹配那么内核就对数据包 执行由该规则的目

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论