好友
阅读权限10
听众
最后登录1970-1-1
|
今天 才看完天草 老师脱这个壳的教程,真够长的,足足19多分钟。
里面所涉及的IAT处理,API处理真是够难记的,最难的就是要自己推算出那4处未知道的Stolen Code.
不过最后通过天草老师的笔记,最后还是补上了。
那个壳偷取了106个字节,想想都恐怖吧?补上了以后自己修复,发现只有1个无效指针。可以删除掉或者变会MessboxExA.
于是我又重新把未脱壳软件用OD载入,在被窃取代码的第一句改成了push ebp,然后新建了EIP。OEP为 524C(我想补回来跟没补回来也不就一样么?)
再用lordPE脱壳。修复时发现有2个无效的指针,最后那一个可以删除或者用MessBoxExA..前面那个应该是GetModuleHandleA,因为在kernel32.dll中,这个壳会对GetProcAddress
GetModuleHandleA,进行处理,可是GetProcAddress 这个指针已经是有效的了,那么就是说是 GetModuleHandleA。
然后修复转存文件,保存后,程序能正常打开。
问题&感想:
其实对于用这个壳保护的文件而言,是否能用这种方法脱壳?知道在
user32.dll MessageBoxExA
kernel32.dll GetProcAddress
GetModuleHandleA
advapi32.dll RegCloseKeyA
RegDeleteKeyA
RegCreateKeyExA
这些段会对这些指针进行处理,那么就能够直接脱掉壳并且修复完成?
不过对与1.43而言,这种方法不行,因为有7个无效的指针,不知道是属于哪个的。
有兴趣的大家可以试下,不用找 stolen Code,直接这样干,试下能否把壳脱掉。如果我哪里说错了,请大家指点一下! |
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|