首页
社区
课程
招聘
[原创]第二阶段第二题答案提交
发表于: 2007-9-2 10:07 7682

[原创]第二阶段第二题答案提交

2007-9-2 10:07
7682
收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 334
活跃值: (22)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
在驱动里顺着SSDT表,找到CrackMe.sysHOOK的地址,顺着地址的代码向下找把的关键跳nop掉。
上传的附件:
2007-9-2 10:13
0
雪    币: 334
活跃值: (22)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
在SSDT,HOOK地址上
找到CrackMe.sys的HOOK代码,通过代码找到存放HOOK前地址的数据。
读取并恢复
上传的附件:
2007-9-2 10:18
0
雪    币: 334
活跃值: (22)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
通过
QSIPTR NtQuerySystemInformation = (QSIPTR)GetProcAddress( hNtDll,
        "NtQuerySystemInformation" );
NtQuerySystemInformation( SystemModuleInformation, pRet,
        sizeof( SYSMODULELIST ), &nRetSize );
查询到ntoskrnl.exe,或ntkrnlmp.exe或ntkrnlpa.exe的基址
把最原始的NtOpenProcess的偏移从
"ntoskrnl.exe","ntkrnlmp.exe","ntkrnlpa.exe";
(其中一个)
解析出来,然后恢复到SSDT里,后面就可以直接终止进程了
上传的附件:
  • 4.rar (40.94kb,12次下载)
2007-9-2 10:24
0
雪    币: 334
活跃值: (22)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
模拟鼠标点击
上传的附件:
2007-9-2 10:30
0
雪    币: 334
活跃值: (22)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
6
模拟键盘按键
上传的附件:
2007-9-2 10:44
0
雪    币: 334
活跃值: (22)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
7
先用前面的驱动使SSDT可以用再
用WriteProcessMemory向CrackMe无限写垃圾数据
上传的附件:
2007-9-2 11:18
0
雪    币: 334
活跃值: (22)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
8
恢复SSDT,
写CrackMeApp内存
把WM_PAINT的消息入口改为jmp 到关闭程序流程中
上传的附件:
2007-9-2 11:50
0
游客
登录 | 注册 方可回帖
返回
//