Stuxnet病毒驱动分析

Stuxnet病毒驱动分析

ID:37898282

大小:33.00 KB

页数:5页

时间:2019-06-02

Stuxnet病毒驱动分析_第1页
Stuxnet病毒驱动分析_第2页
Stuxnet病毒驱动分析_第3页
Stuxnet病毒驱动分析_第4页
Stuxnet病毒驱动分析_第5页
资源描述:

《Stuxnet病毒驱动分析》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Stuxnet蠕虫驱动分析这里只是分析文字,贴图影响速度,就不贴了,具体看附件pdf文档,难免有错误之处,欢迎指正!一.Stuxnet蠕虫(超级工厂病毒)简单说明能够利用对windows系统和西门子SIMATICWinCC系统的7个漏洞进行攻击,被称为是新时代网络战争开始的标志,也有人宣称是"政府发动的网路战争、带有圣经讯息、最高机密等",呵呵,有点雷人!windows下最主要的传播途径是攻击快捷方式自动执行漏洞(MS10-046),WindowsServer服务的远程溢出漏洞(MS08-067)以及打印后台程序服务中的远程代码执行漏洞(MS10-061)。病毒成功攻击

2、了伊朗核电站,造成伊朗核电站推迟发电.由于能够对西门子公司的SIMATICWinCC监控与数据采集(SCADA)系统进行攻击,因此也能攻击我国的钢铁、电力、能源、化工等重要行业,Stuxnet超级工厂病毒直到2010-09-25,才在传入国内网络.我是在近两个月前才收到的,当时只需要简单分析用户态的部分样本,因此没有对驱动进行分析.后来闲着没事时,就分析了驱动部分.不过,此病毒强大之处大部分都在用户态实现.二.Stuxnet蠕虫(超级工厂病毒)驱动(mrxnet.sys)分析从Stuxnet蠕虫病毒样本中提取出了两个驱动文件,mrxnet.sys(17k),mrxcls

3、.sys(26k),其中驱动mrxnet.sys在蠕虫通过u盘驱动器传播时被用来隐藏特定文件,这个驱动是一个文件系统过滤驱动,支持三种文件系统ntfs,fastfat和cdfs文件系统.驱动文件mrxcls.sys则被用于向用户空间中注入代码,被注入的模块被放在一个配置文件中,这应该就是最初让卡巴斯基头痛的"父进程注入"技术,轻松地绕过卡巴.这里单就只分析驱动mrxnet.sys.入口处开始分析:1.此驱动首先创建一个设备类型为FILE_DEVICE_DISK_FILE_SYSTEM,设备特征为FILE_DEVICE_SECURE_OPEN,设备扩展为8字节的无名设备对

4、象.这个驱动没有控制设备,因此不会跟用户态交换信息.其中设备扩展的类似如下定义:DeviceExtension{PDEVICE_OBJECTLowerDevice;PDEVICE_OBJECTRealDevice;}其中LowerDevice为本驱动的下层驱动,RealDevice为VPB中的RealDevice设备,其实也就是文件系统的卷设备.2.接下来注册MajorFunction:IRP_MJ_FILE_SYSTEM_CONTROLIRP_MJ_DIRECTORY_CONTROL这两个派遣例程,这个驱动主要就处理这两例程,其他的用一个例程处理,其实是直接pass了

5、,不做任何处理.两个例程分别是FileSystemControl,DirControl.是本驱动核心功能的实现,留到最后阐述.3.接着就是填充FastIoRoutines,驱动并没填充所有的FastIoRoutines,这里填充了如下:FastIoCheckIfPossible;FastIoRead;FastIoWrite;FastIoQueryBasicInfo;FastIoQueryStandardInfo;FastIoLock;FastIoUnlockSingle;FastIoUnlockAll;FastIoUnlockAllByKey;FastIoDeviceC

6、ontrol;FastIoDetachDevice;FastIoQueryNetworkOpenInfo;MdlRead;MdlReadComplete;PrepareMdlWrite;MdlWriteComplete;FastIoReadCompressed;FastIoWriteCompressed;MdlReadCompleteCompressed;MdlWriteCompleteCompressed;FastIoQueryOpen;这些FastIoRoutines没有做什么实质性的工作,只是把简单判断一下,然后调用下层驱动.4.然后就是attach到文件系统了,

7、函数:AttatchTargetDrivers.先获取通过MmGetSystemRoutineAddress动态获取ObReferenceObjectByName函数的地址,将其地址作为参数去获取文件的驱动对象,文件系统名为:\FileSystemtfs\FileSystem\fastfat\FileSystem\cdfs支持的文件系统有ntfs,fastfat,cdfs.这三个文件系统名的地址被放在一个指针数组中,这个指针数组以后会被通过ObReferenceObjectByName获取的驱动对象覆盖;这里有个循环,循环

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。