香干泥 发表于 2011-8-7 13:12:06

简单分析某游戏debugport清零

简单分析,小弟能力有限如果有什么错误的话,欢迎各位牛牛指正,共同进步嘛
第一处清零代码         
                mov   edi, edi
                push    ebp
                mov   ebp, esp
                push    ecx
                push    esi
                mov   , 0
               call    ds:KeGetCurrentIrql
                cmp   al, 2 //判断中断级
               mov   esi, offset SpinLock
                mov   ecx, esi      
               jb      short loc_1002660
                call    ds:KefAcquireSpinLockAtDpcLevel
               mov   , 1
               jmp   short loc_1002669

loc_1002660:                     
               call    ds:KfAcquireSpinLock
                mov   , al

loc_1002669:mov   ecx, dword_100D1C0//这里比较关键啦。 dword_100D1C0 这个全局变量很重要               
               mov   edx, offset dword_100D1C0

                cmp   ecx, edx
               jz      short loc_10026BA// 这个是个关键比较啦
               push    ebx
                push    edi

loc_100267A:                        
                mov   edi, dword_100CEDC//这里存放着EPROCESS的下标
               mov   edi,       //CEDC+4的位置正是BC
               add   edi,    //的位置存放着EPROCESS结构的地址
            xor   eax, eax
               xchg    eax,       //清零
               mov   eax, dword_100CEDC
               mov   ebx, //存放着EPROCESS+70位置的内容
               mov   eax, //CEDC+18位置存放70下标
               mov   edi, //EPROCESS结构的地址
            mov   , ebx//写回去防止修改位置
               mov   ebx, //74的内容
                mov   , ebx//写回去
               mov   edi, dword_100CEDC
                mov   edi, //取78位置
                add   edi,
                xor   eax, eax       //写回去
               stosd
               stosd
             上面这一段把EPROCESS+70,74,78的位置全部封杀了
防止把BC的位置修改为70,74,78,所以曾经某种方法改位置变得无效了               
      **** Hidden Message *****

msn882 发表于 2011-12-3 17:19:38

谢谢分享谢谢分享

wqs3568 发表于 2012-3-20 09:23:39

来看楼主分享技术了

liuyh7788 发表于 2012-3-20 09:57:23

谢谢分享谢谢分享

ahua0597 发表于 2012-3-27 03:36:00

学习学习。。。

469708842 发表于 2012-4-10 17:55:29

一段把EPROCESS+70,74,78的位置全部封杀了
防止把BC的位置修改为70,74,78,所以曾经某

hmm060210 发表于 2012-5-9 19:05:41

回复 1# 香干泥


   多谢楼主,学习

zhangchenggu 发表于 2012-9-3 13:30:19

清解决零啊

haipodn 发表于 2013-1-19 09:54:46

1。本人是文盲,以上内容均看不懂是什么意思;
2。此事与本人一点关系也没有,本人只是来回帖子赚1分苦力的;
3。本人在此留言并不代表本人同意、支持或者反对楼主观点;
4。若本人留言违反国家有关法律、法规,行政命令、条例、文件、规定、协议、管理办法、解释说明等,请管理员及时删除本人跟帖;如未删除,一切责任由管理员承担;
5。因删帖不及时所产生的任何法律(包括宪法、民法、刑法、书法、公检法、基本法、劳动法、婚姻法、输入法、引渡法、担保法、商标法、专利法、广告法、国际法、著作权法、吸星大法、今日说法、与台湾关系法及文中涉及或可能涉及以及未涉及之法,各地社会治安综合管理条例)纠纷或责任本人概不负责;
6。如果需要跨省追捕请联系楼主以及网站管理员或法人代表;
7。此声明最终解释权归本人所有
8。以上的话也是抄下来的。
页: [1]
查看完整版本: 简单分析某游戏debugport清零