很遗憾没有进入复赛,不过还是记录一下自己做题的过程叭
PC方向的初赛题目有2道,一道Ring0一道Ring3,由于技术不到位 我只做了简单的Ring3,无缘复赛QAQ
RIng0的题目为:给了一个加了vmp壳的驱动,该驱动无法正常加载,要求在不修改驱动文件的情况下尝试让驱动成功加载,并设法让驱动成功执行print
Ring3的题目为:给了一个扫雷exe和一份dmp文件,要求通过分析得出外挂修改了程序的哪些地方、实现了什么功能
首先拿到winmine.exe于winmine.dmp
尝试windbg加载dmp文件,指定image file为exe,输入指令 !analyze -v ,分析得到结果,崩溃是由int3指令产生(不过这并不重要,重要的是内存转储文件中的程序数据)
使用exepeinfo查看该exe的pe结构,找到text段偏移和大小
使用winhex打开exe文件,将其text段裁剪下来,在这里我采用了text段偏移的基础上再加0x1d4的偏移,故裁剪后得到的文件大小为0x3a2c字节
再使用winhex打开dmp文件,根据特征码搜索定位到text段被映射到的地址偏移,采用同样的方法将0x3a2c大小的块裁剪下来
分析比对2个裁剪后的文件的不同