TA的每日心情 | 开心 2018-7-9 22:48 |
---|
签到天数: 16 天 [LV.4]偶尔看看III
|
本帖最后由 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他补丁他。
演示动画:
Loader分卷下载:
010Editor-PyLoader.part1.rar
(3 MB, 下载次数: 0, 售价: 6 枚飘云币)
010Editor-PyLoader.part2.rar
(3 MB, 下载次数: 0, 售价: 6 枚飘云币)
010Editor-PyLoader.part3.rar
(3 MB, 下载次数: 0, 售价: 6 枚飘云币)
010Editor-PyLoader.part4.rar
(3 MB, 下载次数: 0, 售价: 6 枚飘云币)
010Editor-PyLoader.part5.rar
(3 MB, 下载次数: 0, 售价: 6 枚飘云币)
010Editor-PyLoader.part6.rar
(3 MB, 下载次数: 0, 售价: 6 枚飘云币)
010Editor-PyLoader.part7.rar
(3 MB, 下载次数: 0, 售价: 6 枚飘云币)
010Editor-PyLoader.part8.rar
(573.6 KB, 下载次数: 0, 售价: 6 枚飘云币)
源码下载:
010Editor-PyLoader.zip
(1.95 KB, 下载次数: 14, 售价: 30 枚飘云币)
最后祝:
中国飘云阁十五周年!生日快乐!越办越好!
来更多,飘云阁的表哥表弟表妹表姐,让我膜拜!
我已实现自动定位(不需要更新hook地址了,这个功能留给大家研究。)
|
评分
-
查看全部评分
|