|
|
|
|
|
|
|
|
一、前言 前段时间,在安全焦点上看到了一文《基于SPI的数据报过滤原理与实现》,很是不错。文章中提到的基于SPI的数据报拦截技术是在用户级的。用户级的拦截有其优势,实现方便、便于移植、通用性强,但是,用户级并不能得到所有的数据报。本文提到的基于IMD的数据报过滤则是属于内核级的,它建立在网络驱动上面。 二、中间层驱动技术介绍 中间层驱动,英文为NDIS intermediate driver。 1)内核级网络驱动介绍 Microsoft Windows 2000支持三种基本的内核级网络驱动,这三层driver顺序从下到上依次为: 1. Miniport NIC drivers:微端口网卡驱动,位于最底层,直接操纵网卡并且对高层驱动提供接口。 2. Intermediate drivers:IMD中间层驱动,这就是今天的主角,位于1和3之间,具体的作用下面就会介绍。 3. Protocol drivers:高层协议驱动,俗称为TDI(传输驱动程序接口),高于前面两层,直接面向用户级,为用户提供网络服务,也就是绝大多数程序所用到的网络接口。 2)IMD驱动 IMD中间层,它的实质很简单,最经典的描述莫过于下面的话: An intermediate driver is typically layered over one or more NDIS NIC drivers and under a tr页码:[1] [2] [3] [4] [5] [6] [7] [8] 第1页、共8页 |
|
|
|
|
设为首页 | 加入收藏 | 广告服务 | 友情链接 | 版权申明
Copyriht 2007 - 2008 © 科普之友 All right reserved |