dryzh 发表于 2019-11-14 21:43:07

用江湖传闻的Python给010Editor写Loader补丁

本帖最后由 dryzh 于 2019-12-12 10:11 编辑

用江湖传闻的Python给010Editor写Loader补丁



B.S.小生我学习Frida这个跨平台(全平台)的逆向框架也有,好长一段时间了,
经常用他来注入目标通过hook获取一些信息,以达到一些小目的。
前些日子看到飘总使用Frida优雅的调戏了010Editor,然后又个想法能不能持久化的写个单文件补丁,
后来了解到了Python的打包模块PyInstaller,然后萌生了一个思路,在双十一时候没钱购物小实现了一把,
以解空虚、烦恼之苦。
网上010Editor的破解分析文章太多,今天我们就来创新玩法,
用江湖传闻的Python逆向一下010Editor,给这家伙写个Loader补丁。

0x00.Python和Frida跨平台环境的安装(本文仅以win7或者win10为例,MacOS,Linux理论上也可以的)

从Python官方网站: https://www.python.org/

建议下载Python v3.7.5(不要用Python v3.8.0 )


https://www.python.org/ftp/python/3.7.5/python-3.7.5-amd64.exe

https://www.python.org/ftp/python/3.7.5/python-3.7.5.exe


安装Python3记得勾选添加Python3到环境变量里




安装好Python后,在命令提示符里输入
Python -V
查看是否安装好

接下来使用Python的Pip安装Frida框架
在命令提示符里输入
pip3 list
查看已安装模块
pip3 install frida
安装Frida框架
pip3 install frida-tools
安装Frida工具
frida --version
检查frida安装的版本





0x01.Python和Frida的JavaScript脚本混合编程编写Loader补丁


这里我暂时不分析具体具体补丁的位置了,网上的分析文章很多。关于Hook的点本文采用硬编码偏移的方式,
仅仅适用于当前最新版本的010 Editor v9.0.2 x64,后续或者前序版本请自行练习定位或者找自己想Hook的地方,
这里我提供的位置仅供参考(其实可以做到自动定位,后续版本都支持,大家可以自行添加代码实现)。

010 Editor v10.0 x64 版本需要源码里更新一个偏移变量(复制下面的,替换相应位置)
      // - Registered to:
      //var offset = 0xD8180;
      //var offset = 0xE9680;
      // v9.0.2 x64
      //var offset = 0xB24820;
      // v10.0 x64
      var offset = 0xC66590;


Talk is cheap, Show me the code.

python3 源码:(底部下载源码)
010Editor-PyLoader.py




0x02.用PyInstaller打包Python脚本为单文件

在pip里安装pyinstaller用于打包生成python持久化文件010Editor-PyLoader.exe

在命令提示符里输入
pip3 install pyinstaller
安装PyInstaller v3.5

pip show pyinstaller
查看指定安装模块的具体信息



将要上面的源码python脚本源码拷贝到010 Editor的安装目录里
(例如,D:\Program Files\010 Editor)
然后在这个目录里,按shift+右键,打开命令提示符,在这里输入
pyinstaller -Fc 010Editor-PyLoader.py --uac-admin -i 010Editor.exe
(更多详细的用法可以查看帮助pyinstaller --h)
会在软件的安装目录的dist目录下生成一个010Editor-PyLoader.exe的文件
(例如,D:\Program Files\010 Editor\dist\010Editor-PyLoader.exe)
将他拷贝到软件的安装目录里运行就能启动010 Editor并hook他补丁他。

演示动画:

https://github.com/iDone/iDone.github.io/blob/master/uploads/codes/010Editor-PyLoader.gif

Loader分卷下载:










源码下载:



最后祝:
中国飘云阁十五周年!生日快乐!越办越好!

来更多,飘云阁的表哥表弟表妹表姐,让我膜拜!

我已实现自动定位(不需要更新hook地址了,这个功能留给大家研究。)











bachelor66 发表于 2019-11-15 08:25:09

感谢楼主分享,就是贵了点。                        

smallhorse 发表于 2019-11-15 08:33:28

表哥牛鞭!PY溜溜溜,必须学习

yanwc 发表于 2019-11-15 08:53:09

收藏一个, 方便以后学习

dionysus 发表于 2019-11-15 09:58:58

表哥牛鞭!PY溜溜溜,必须学习

Bu弃 发表于 2019-11-15 10:09:45

表哥666.求教Frida

dryzh 发表于 2019-11-15 16:55:14

fq5588 发表于 2019-11-15 15:41
可以试试,这个只是补丁

那你想要什么?源码和实现思路还有补丁都给了。

飞天 发表于 2019-11-16 15:22:06

来给表哥点赞了,威武。

iamok 发表于 2019-11-17 11:24:07

请问解压密码是什么,www.chinapyg.com和bbs.chinapyg.com都不行。

dryzh 发表于 2019-11-18 19:42:51

iamok 发表于 2019-11-17 11:24
请问解压密码是什么,www.chinapyg.com和bbs.chinapyg.com都不行。

www.chinapyg.com不对么不可能吧?
页: [1] 2
查看完整版本: 用江湖传闻的Python给010Editor写Loader补丁