炎刃主动防御系统

本文介绍了作者使用SSDT系统服务描述表HOOK内核函数的方法,实现了一个简单的主动防御系统。该系统可以监控进程、注册表及文件创建等活动,旨在提供基本的安全防护。

标 题: 【原创】炎刃主动防御系统

作 者: cn_kevin
时 间: 2010-12-21

blog : http://cn-kevin.iteye.com

 

    最近有时间研究了下驱动,就想写个简单的主动防御系统练练手,其实驱动程序跟其他程序一样,并不是非常复杂,而且相当来说还比较简单且容易理解,主要是微软不公开内核函数的文档,内核层异常就会出现华丽的蓝屏保护,造成了驱动编程难的假象。所以我们只能依靠网上一些组织反汇编并且公布出来的函数文档或自己动手反汇编,当然你要有足够的时间。

 

    本程序采用了SSDT系统服务描述表HOOK内核函数,其实就是改内核函数的指针。

ring3与ring0层也就是应用程序与驱动程序的通信是采用物理内存映射+事件同步+多线程处理的,目前只实现了进程监控,注册表监控,文件创建监控,内核驱动监控,剩下两个端口bind与connect本来也想实现的,后来发现他们是其他驱动程序的模块,得通过TDI写过滤驱动来实现,没文档,网上有个开源的防火墙就是用TDI技术,有时间下过来看看。运行时库忘记传上来了,杯具

 

 

 

 

卓然主动防御系统分成四个模块,包含一个应用层可执行文件(.exe),四个内核层驱动(.sys),一个规则库数据库文件(.mdb),请保证六个文件在同一目录。应用层采用Visual Studio 2008(C )开发,驱动层开发环境为WDK 6001.18002、Notepad ,测试环境为VMware 6.0、Windows Xp Sp3。 开发目的 系统特性: 一. 使用RootiKit技术,精确拦截木马,曝光恶意行为 二. 提供详细行为描述信息,帮助用户判断 三. 云安全概念融入,精确判断文件安全级别 四. 支持白名单、黑名单,引入云规则,减少提醒 五. 多模块相互配合,将木马及其衍生物一网打尽 系统原理: 一. Hook SSDT 二.监视进程创建和销毁原理 三.监视注册表修改/创建原理 三.监视文件修改/创建原理 四.内存映射监控原理 五.云安全模块原理 六.规则动态加载原理 在云安全模块开启的情况下,本系统会自己向服务器验证加载进入内存的文件信息,与其它模块相互配合,可将病毒及期衍生物一网打荆 在 Windows NT 下,用户模式(User mode)的所有调用,如Kernel32.dll,User32.dll, Advapi32.dll等提供的API,最终都封装在Ntdll.dll中,然后通过Int 2E或SYSENTER进入到内核模式,通过服务ID,在System Service Dispatcher Table中分派系统函数。这些本地系统服务的地址在内核结构中称为系统服务调度表(System Service Dispatch Table,SSDT)中列出,该表可以基于系统调用编号进行索引,以便定位函数的内存地址。下图是Windows NT系列操作系统的体系结构,系统服务调用只是一个接口,它提供了将用户模式下的请求转发到Windows 2000内核的功能,并引发处理器模式的切换。在用户看来,系统服务调用接口就是Windows内核组件功能实现对外的一个界面。系统服务调用接口定义了Windows内核提供的大量服务。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值