免费教程_免费网赚教程_破解版软件-寂涯网络学习基地

当前位置: 主页 > 系统综合 > 各类编程 > 利用ndis中间层驱动实施通信拦截与自阻塞

利用ndis中间层驱动实施通信拦截与自阻塞

时间:2012-02-13 18:26来源:未知 整理:寂涯网络 点击:

近几年,恶意攻击程序发展迅速,每月的恶意软件统计报告显示,截止2011年1月卡巴斯基实验室共截获上千万条病毒。现如今,攻击者广泛使用恶意软件控制个人电脑,并窃取个人机密信息。同时也存在某些恶意代码故意隐瞒传播途径并绕过了安全保护机制的检测 (如防火墙,嗅探器,防病毒程序,入侵检测系统)。通常,Windows系统的安全机制取决 tcp/ip协议桟的相关功能。不过微软已经对原始套接字(raw socket,可以接收本机 网卡上的数据帧或者数据包)的通信能力进行了如下:
1.tcp数据无法通过原始套接字进行发送。
2.带有无效源地址的UDP数据报无法通过原始套接字进行发送。
3.原始套接字不能调用bind()函数。
原始套接字可以直接访问网络帧头。这样,恶意软件开发者就会滥用虚假帧信息。因此,
微软在Windows XP SP2及更高版本中强执执行了上述限制措施。限制原始套接字的规则嵌 入在tcp ip. sys和tcp ip6. sys驱动程序中。绕过这些限制措施的唯一解决方案就是roll 专用传输层。该方法可以控制所创建的数据包。因此,为查看整个网络通信情况,唯一的方 法就是实现NDIS协议驱动程序,尤其是在Windows XP SP2、微软Vista和Windows7系统 上更应如此。NDIS (Network Driver Interface Specification),即网络驱动接口规范, 其横跨传输层、网络层和数据链路层,定义了网卡或网卡驱动程序与上层协议驱动程序之间 的通信接口规范,屏蔽了底层物理硬件的不同,使上层的协议驱动程序可以和底层任何型号 的网卡通信。仰13为网络驱动程序创建了一个完整的开发环境,只需调用仰13函数,而不 用考虑操作系统的内核以及与其他驱动程序的接口问题,从而使得网络驱动程序可以从与操 作系统的复杂通讯中分离,极大地方便了网络驱动程序的编写。
表l显示了Winsock内核 (WSK) 的NDIS接口与Winsock接口之间的对比值。Winsock 技术规范定义了TCP/ip正客户端应用程序和!^3/正协议桟之间的标准接口。WSK 运行在内核模式,并使用传输驱动程序接口(TDI)进行客户端编程。即13规范是运行于内 核模式的网络驱动程序,其定义网络驱动程序应该实现的例程。
Literface  Benefits   Drawbacks 
Wiusock Easy to use, well documented Easier lo track down 
WSK Uses the existiug TCP ^ stack Not a$ ea$y to tiack cknvn More deinauding and less foigiviug tliau Wiusock
Mast accoimt for protocol-depeudeut behaviour 
NDIS Offers the most control Can spoof packets Can bypass local firewall Effoi1 iequiied to uiipleuient a uew TCP,IP stack
Switches may limit one MAC address per port
Can be conspicuous ui packet capnue
通常的做法就是将仰13与统一的恶意软件分析平台整合起来。此技术的优势在于可以 监视包括传输在内核级的网络通信在内的整个网络通信系统。体现的作用如下:
1. 描述仰13中间层驱动程序及其相关程序和函数。
2. NDIS中间层驱动程序的实现可用于补充恶意软件分析和检测技术。
3. 仰13中间层驱动程序的实现和应用可检测恶意二进制软件的防御效果。评估测试结 果如下:
——NDIS能够捕获发生在系统内核级的所有网络通信。
——NDIS中间层驱动程序有助于恶意软件研究人员分析活动过程。
这里我们使用即13中间层驱动程序方法,定位系统架构以拦截并自动阻止恶意网络通 信。选择NDIS中间层驱动程序的原因是它可以捕获所有通过系统的数据包,包括用户级和 可以绕过本地防火墙的内核级的网络数据包。本文所做的工作就是捕获整个网络通信数据 包,并控制其以实时方式运行。网络通信日志文件将被导入到一个用户可读的文件,该文件 可以按照用户喜好显示任何协议头的内容。
NDIS数据包描述
虽然过去几年,基于^化(^3主机的网络安全软件在技术上取得了重大进展,但是依然 存在许多挑战。其中最大的挑战就是需要底层操作系统来支持收集并监测数据的工作。然而 这样就会给恶意程序留下可供攻击的漏洞。基于防火墙和入侵检测系统软件的主机能够绕过 各种检测技术,这就使得安全研究人员必须寻求,_测技、以及阻止恶意代码的方法;这 就是安全机构使用NDIS中间层驱动程序作为解决方案的原因。

 Packet Descriptor
Flags:
PhysicalPngeCoiiut TotnlLeiigrh: FirstBuffer:

图1.多缓冲区NDIS_PACKET示例

本页地址 http://www.jybase.net/biancheng/20120213769.html

百度搜索更多

谷歌搜索更多

顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------

评价:
昵称: 验证码:点击我更换图片
推荐内容
赞助商
赞助商


关于本站免责声明视频更新google百度地图视频地图RRS订阅

如有什么问题请在本站留言,或发邮件到 hxt167#foxmail.com