阅读:1136回复:5
请问驱动程序是如何访问硬件的呢?
如题:
譬如我只想在winxp下实现一个IN al,61h的功能,我改如何下手呢? 可否通过WDM驱动程序作为桥梁,如果可以,那么这调语句应该加在什么地方呢??? |
|
沙发#
发布于:2004-01-29 15:25
直接进入RING0 IO,或在驱动中通过HAL来IO
|
|
|
板凳#
发布于:2004-01-29 19:12
关键是怎么进入RING 0呢?
|
|
地板#
发布于:2004-01-29 20:22
有很多方法,比较流行的是利用PHYSICAL MEMORY在GDT上生成CALLGATE进入RING0,还有的可以参考MGF病毒的方法,利用MS漏洞修改NTLDR,直接在NTLDR上生成CALLGATE,重新启动后你GDT上就会有了你的CALLGATE了。
顺便说下,MGF病毒,虽然没瑞星吹的那么牛,不过在进入RING0方面还是有独到之处的。。。。。。 |
|
|
地下室#
发布于:2004-01-29 22:33
thanks a lot!
能否详细的介绍一下步骤 或者能否提供MFG病毒的原理及原代码? (刚才没有搜到,失败) |
|
5楼#
发布于:2004-01-30 10:26
看这里,包括对该病毒核心技术的一些分析
http://www.luocong.com/bbs/dispbbs.asp?boardID=2&ID=4276&page=1 |
|
|