通达信OD脱壳教程

1.把tdxw.exe拖入到OD

2. 在OD界面 Ctrl + G

会出现“输入要跟随的表达式”窗口,输入00401000,点OK,会跳转到00401000代码处。

3. CTRL + B,在Hex处查找二进制串

拷贝要查找的二进制串:64 A1 00 00 00 00 50 64 89 25 00 00 00 00 83 EC 68 53 56 57 89 65 E8 33 DB 89 5D FC 6A 02 确定后会跳转008DA5D7处,往上5行也就是008DA5C8 (这个地方就是程序的入口点,也就是常说的OEP,记住这个地址,后面会用到)

4. 重新运行程序

此时不能直接脱,在OD那行功能键点两个连续黑色左箭头,也就是让OD重新载入tdxw.exe,会回到图一的那个界面;CTRL+G,出现 输入要跟随的表达式,在最上面那个框,这里应该有第一次输入的 00401000,用008DA5C8替换,点OK

5. 内存访问

选中008DA5C8这行,在开头处鼠标右键,找到断点;然后选择内存访问连续两次 F9,程序应该会在008DA5C8处中断下来;

6. 管理员身份打开scylla_x86.exe

注意:一定要管理员身份运行;一定要是X86。

  • 在最上面下拉单选择 tdxw.exe (就是通达信程序的这个process)

  • 在OEP出输入刚才的地址008DA5C8,点击IAT自动搜索,会出现IAT found 这个窗口,点确定。

  • 点击获取导入表

  • 点击转储按钮,会弹出窗口让你保存文件,我们使用默认名tdxw_dump,点确定即可,然后再点击修复转储按钮,会弹出窗口,找到和选中刚才保存的 tdxw_dump 文件,点打开后程序会在通达信目录下生成TdxW_dump_SCY.exe文件

8. 使用查壳工具检测

已经成功把壳脱掉了。当然这个脱壳的版本会保留vmp残留的垃圾文件,但不会影响程序的运行。如果双击,会提示 “执行文件出错”,需要把TdxW_dump_SCY.exe 改成 tdxw.exe

共有 7 条评论

  1. 请问大佬,,我按照你的做下来,最后运行不了、显示什么缺少DLL啥的是为什么
    最开始OD载入的时候提示模块入口点超出代码范围,,是不是这个原因,怎么解决呢

      1. 第1步,你是直接载入通达信了,我的OD载入通达信时显示入口超出范围,按确定还是能进去
        第3步,按照你的教程查找入口点,跳出来的地址和你教程的地址不同

        其它的都一样,,脱壳也显示成功,就是运行出错

        教程里先查找00401000,再查找二进制串64 A1 00 00 00 00 50 64 89 25 00 00 00 00 83 EC 68 53 56 57 89 65 E8 33 DB 89 5D FC 6A 02,,,,这个是所有通达信版本一样吗,我是券商版的通达信,查找64 A1 00 00 00 00 50 64 89 25 00 00 00 00 83 EC 68 53 56 57 89 65 E8 33 DB 89 5D FC 6A 02这个后跳出来的地址和你不一样,,望指教

  2. 怎么也脱不了,脱完显示去壳了,但程序运行不了,老提示少DLL,望大佬解答呀,,,,谢谢谢谢,,

评论

Your email address will not be published. Required fields are marked *

Scroll Up