- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
防火墙的数据包拦截方式小结
防火墙的数据包拦截方式小结
网络防火墙都是基于数据包的拦截技术之上的。在 Windows 下,数据包的拦截方式有很多种,其原理和实现方式也千差万别。总的来说,可分为“用户级”和“内核级”数据包拦截两大类。
用户级下的数据包拦截方式有:
* Winsock Layered Service Provider (LSP)。* Win2K 包过滤接口 (Win2K Packet Filtering Interface)。* 替换 Winsock 动态链接库 (Winsock Replacement DLL)。
内核级下的数据包拦截方式有:
* TDI过滤驱动程序 (TDI-Filter Driver)。* NDIS中间层驱动程序 (NDIS Intermediate Driver)。* Win2K Filter-Hook Driver。* Win2K Firewall-Hook Driver。* NDIS-Hook Driver。
在这么多种方式面前,我们该如何决定采用哪一种作为自己项目的实现技术?这需要对每一种方式都有一个大致的了解,并清楚它们各自的优缺点。技术方案的盲目选用往往会带来一些技术风险。以自己为例,我需要在截包的同时得到当前进程文件名,也就是说,需向用户报告当前是哪个应用程序要访问网络。在选用 Win2K Filter-Hook Driver 这一方案之后(很多小型开源项目都采用这一方案),便开始编码。但之后发现 Win2K Filter-Hook Driver 的截包上下文处于内核进程中,即 IRQL = DISPATCH_LEVEL,根本无法知道当前应用程序的名字。相比之下,TDI-Filter Driver 和 NDIS-Hook Driver 则可以得知这些信息。其中 TDI-Filter Driver比 NDIS-Hook Driver 更能准确地获知当前应用程序文件名,后者的接收数据包和少数发送数据包的场景仍然处于内核进程中。
下面列出了各种截包方式的特点:
* Winsock Layered Service Provider (LSP)? 该方式也称为 SPI (Service Provider Interface) 截包技术。SPI是由 Winsock2 提供的一个? 接口,它需要用户机上安装有 Winsock 2.0。Winsock2 SPI 工作在 API 之下的 Driver 之上,? 可以截获所有基于 Socket 的网络数据包。? 优点:? * 以DLL形式存在,编程方便,调试简单。? * 数据封包比较完整,未做切片,便于做内容过滤。? 缺点:? * 拦截不够严密,对于不用 Socket 的网络通讯则无法拦截 (如 ICMP),木马病毒很容易绕过。
* Win2K Packet Filtering Interface? 这是 Win2K 中一组 API 提供的功能 (PfCreateInterface, PfAddFiltersToInterface, ...)。? 优点:? * 接口简单,实现起来没什么难度。? 缺点:? * 功能过于简单,只能提供IP和端口的过滤,可能无法满足防火墙的复杂需求。? * 处于 API 层,木马病毒容易绕过。? * 只能在 Win2K 以上(含)系统中使用。
* Winsock Replacement DLL? 这种方法通过替换系统 Winsock 库的部分导出函数,实现数据报的监听和拦截。? 缺点:? * 由于工作在 Winsock 层,所以木马病毒容易绕过。
* TDI-Filter Driver? TDI 的全称是 Transport Driver Interface。传输层过滤驱动程序通过创建一个或多个设备对象? 直接挂接到一个现有的驱动程序之上。当有应用程序或其它驱动程序调用这个设备对象时,会首? 先映射到过滤驱动程序上,然后由过滤驱动程序再传递给原来的设备对象。? 优点:? * 能获取到当前进程的详细信息,这对开发防火墙尤其有用。? 缺点:? * 该驱动位于 tcpip.sys 之上,所以没有机会得到那些由 tcpip.sys 直接处理的包,比如ICMP。? * TDI驱动需要重启系统方能生效。
* NDIS Intermediate Driver? 也称之为 IM Driver。它位于协议层驱动和小端口驱动之间,它主要是在网络层和链路层之间对? 所有的数据包进行检查,因而具有强大的过滤功能。它能截获所有的数据包。? 可参考DDK中附带的例子 Passthru。? 优点:? * 功能非常强大,应用面广泛,不仅仅是防火墙,还可以用来实现VP
您可能关注的文档
- 药剂科西药房三基考试试题.doc
- 药剂科面试考题.doc
- 药学专业《有机化学》课程标准.doc
- 药学基础试题及答案.doc
- 药学概论教案.doc
- 药学文献检索论文.doc
- 药学服务资料.docx
- 药物中的经济学论文.doc
- 药物分析实验教材.doc
- 药物分析重点思考题.doc
- 华师附中番禺小学2026年编外合同制教师招聘备考题库及一套参考答案详解.docx
- 华师附中番禺小学2026年编外合同制教师招聘备考题库及1套完整答案详解.docx
- 华师附中番禺小学2026年编外合同制教师招聘备考题库参考答案详解.docx
- 华师附中番禺小学2026年编外合同制教师招聘备考题库及一套完整答案详解.docx
- 华宁县卫生健康局2026年公开招聘事业单位紧缺急需人才备考题库附答案详解.docx
- 华宁县卫生健康局2026年公开招聘事业单位紧缺急需人才备考题库有答案详解.docx
- 华师附中番禺小学2026年编外合同制教师招聘备考题库及1套参考答案详解.docx
- 华宁县卫生健康局2026年公开招聘事业单位紧缺急需人才备考题库含答案详解.docx
- 华宁县卫生健康局2026年公开招聘事业单位紧缺急需人才备考题库完整答案详解.docx
- 华宁县卫生健康局2026年公开招聘事业单位紧缺急需人才备考题库及答案详解一套.docx
原创力文档


文档评论(0)