基于中间层驱动程序的数据包拦截技术研究与实现
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
随着计算机应用的普及,网络安全问题越来越引起人们的重视。在作战指挥控制系统中,安全问题显得尤为重要。提高网络安全性的方法有很多,本文结合课题,对基于中间层驱动程序的数据包拦截技术进行了研究。
     本文首先分析了Windows的网络体系结构,比较了在不同层次上进行数据包拦截的各种方法,确定出采用中间层驱动程序的方法进行数据包拦截。随后对中间层驱动程序进行了介绍,说明了进行驱动程序编程的要点。
     本文进行了中间层驱动程序的初始化与动态绑定操作。在DriverEntry函数中注册了ProtocolXxx接口和MiniportXxx接口,在ProtocolBindAdapter函数中将协议驱动程序绑定在一张虚拟网卡(Virtual Adapter)上,从而在协议驱动程序和微端口驱动程序之间加入了我们的中间层驱动程序。
     本文随后介绍了重要的数据结构数据包描述符和缓冲区描述符,并编写程序分配自己的包描述符和数据包描述符。然后,编写了拷贝数据包内容的函数,并改写了一系列完成函数,以支持异步操作;分析以太网帧和IP数据报的格式,据此给出过滤规则,根据过滤规则,改写PtReceive函数和MpSend函数,从而实现按指定协议类型接收数据包、按指定协议类型接受数据包、按指定IP地址收发数据包的功能。最后用DbgView进行了验证。
With the popularization of computer application, network security is causing more and more concerns. In the campaign command control system, security is obviously important. There are many ways to guarantee network security, in this paper, we do a research on using intermediate driver to capture and filter network packets in order to promote security level.
    Firstly this paper introduces Windows network architecture, and compares several kinds of methods generally used to capture network packets in different layers. After that, this paper emphasizes the method of using intermediate drivers (IMD), with a explanation of its classification and peculiarities.
    This paper particularly introduces the initialization, binding, send packets and receive packets procedure of intermediate drivers, and pays a special attention to the packet descriptor and buffer descriptor structures, which is essential to programming drivers. Finally, this paper implements the function of capturing and filtering networking packets, which is validated by using DbgView.
引文
[1] 谢希仁编著.计算机网络.第四版.北京:电子工业出版社,2003
    [2] (美)Mircosoft Coroporation著,冯博琴等译.Windows 2000驱动程序开发大全,第一卷,设计指南。北京:机械工业出版社,2001
    [3] Art Baker, Jerry Lozano著,施诺等译.Windows 2000设备驱动程序设计指南.原书第二版.北京:机械工业出版社,2001
    [4] Windows设备驱动程序技术内幕.孙守阁,徐勇编著.北京:清华大学出版社,2000
    [5] Windows2000/XP WDM设备驱动程序开发。武安河,邰铭,于洪涛编著.北京:电子工业出版社,2003
    [6] Chris Cam著.孙义,马莉波,国雪飞等译.Windows WDM设备驱动程序开发指南.北京:机械工业出版社,2000
    [7] Douglas E. Comer. Intemetworking With TCP/IP VOI Ⅱ: Design. Implementation and Internals. Second Edition. Prentice-Hall International(原书影印版)北京:清华大学出版社,1998
    [8] Windows操作系统原理.尤晋元,史美林等编著.北京:机械工业出版社,2001
    [9] David A.Solomon, Mark E.Russinovich. Inside Windows 2000. Microsoft Press, 2000
    [10] 陈向群,马洪兵,王雷等编著.Windows内核试验教程.北京:机械工业出版社,2002
    [11] 黄超编著.Windows网络编程,北京:人民邮电出版社,2003
    [12] 朱雁辉编著.Windows防火墙与网络封包截获技术.北京:电子工业出版社,2002
    [13] Walter Oney. Programming the Microsoft Windows Driver Model [M]. Microsoft Press, 1999
    [14] Alesandro Rurini,Jonathan Corbert.Linux设备驱动程序.魏永明,骆刚,姜君译.O'Reilly,中国电力出版社,2000[15] 胡道元,闵京华编著.网络安全.北京:清华大学出版社,2004
    [16] (美)Greg Holden著.王斌,孔璐译.防火墙与网络安全-入侵检测和VPNs.北京:清华大学出版社,2004
    [17] (美)Keith E.Strassberg,Richard J.Gondek,Gary Rollie等著.李昂,刘芳萍等译.防火墙技术大全.北京:机械工业出版社,2003
    [18] 徐益,颜文俊.NDIS小端口驱动程序开发.计算机应用研究.2004(1),197-198页
    [19] 孙华领,顾景文.NDIS驱动程序和基于NDIS网络监测程序实现.为计算机信息.2004,20(1)
    [20] 刘炎,冯穗力,叶梧,徐守强.WDM/NDIS网络驱动程序实现方法的研究.计算机应用研究.2001年第8期,118-120页
    [21] 李雪莹,刘宝旭,许榕生.基于WinPcap的网络监控系统性能优化.计算机工程.2004,30(1),8-9页,47页
    [22] 万映辉,邸晓奕,张水平.基于NDIS的网络嗅探器的设计与实现.计算机工程.2004,30(10),177-179页
    [23] 唐玲,陆阳,陆长荣.基于PCI总线的驱动程序设计.微计算机信息。2004,20(6),113-114页
    [24] 汤渊请,陶然,侯建刚.基于WinDriver实现对PCI数采卡的快速检验.微计算机信息.2004,20(6),52-53页
    [25] 郑啸,魏仰苏.一种新的面向协议测试的包捕获结构.华中科技大学学报(自然科学版).2004,32(7)16-18页
    [26] 吴雷,顾其威.基于IMD的Windows网络数据包拦截技术及应用.航空计算技术.2004,34(1),119-121页,125页
    [27] 严馨.基于NDIS网络数据包过滤技术研究.昆明理工大学学报.2004,29(1),36-40页
    [28] 郭兴阳,高峰,唐朝京.一种NDIS中间层数据包过滤方法.计算机工程.2004,30(17),120-102页,145页
    [29] 马进,徐涛.防火墙技术剖析与启示.航空计算技术.2002,32(4),127-130页,134页
    [30] 肖竟华.防火墙技术及其体系结构分析.微机发展.2003,13(1),??64-66页
    [31] 谭丹,鲜继清.基于NDIS Hook的Windows防火墙驱动程序设计.重庆邮电学院学报(自然科学版).2005,17(5),622-624页
    [32] 王文联,侯整风,周先存.基于NDIS中间层驱动程序的防火墙的研究与实现.安徽建筑工业学院学报(自然科学版).2004,12(1),52-55页
    [33] 王言梅.单机版防火墙系统中数据包过滤技术研究.计算机工程,2001,27(11),191-193页
    [34] 刘珂.Windows NT环境下双网卡冗余备份技术.情报指挥控制系统与仿真技术.2002年第一期
    [35] Gray Nutt. Operation Systems: A Modern Perspective. Addison-Wesley, 1997
    [36] Gray Nutt. Operation Projects Using Windows NT Addison-Wesley, 1999
    [37] Andrew S.Tanenbaum. Modern Operation Systems. Prentice Hall, 1998
    [38] Abraham Siberschatz, Peter Baer Galvin Operation System Concepts. Addison-Wesley, 1998
    [39] Microsoft Windows 2000 Driver Development Kit. Microsoft Corporation
    [40] RFC 2401: Security Architecture for the Internet Protocol
    [41] Ray Hunt. Internet/Intranet firewall security-policy, architecture and transaction series [J]. Computer Communication. 1998, 21, 1107-1123
    [42] Andris Sidorove, Guntis Barzdins. SmartARP: merging IP and MAC addressing for low-cost gigabit Ethemet networks. Computer Networks
    [43] Ndis Intermedia Driver Question: www.ndis.com/papers/ndispacket/ndispacket2.htm
    [44] NDIS PACKET DISCUSSION: www.ndis.com/papers/ndispacket/ndispacketl.htm

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700