0x00 原理
就不班门弄斧了,分析见[MacOS逆向] Paddle激活类Mac应用通杀
0x01 如何激活
- 直接在抓包的时候修改返回包
- 编写抓包工具插件,自动化修改返回值
- 推荐使用mitmproxy(编写插件比较简单)
- hook的方式
0x02 mitmproxy-addon
FuckPaddle.py
class FuckPaddle:
def response(self,flow):
'''返回值接收之前'''
if flow.request.pretty_url.find('/3.2/license/activate') != -1:
product_id = flow.request.urlencoded_form.get_all('product_id')[0]
resp_str = '{"success":true,"response":{"product_id":"' +product_id+ '","activation_id":"admin","type":"personal","expires":1,"expiry_date":9999999999999}}'
flow.response.content = resp_str.encode("utf-8")
addons = [FuckPaddle()]
插件使用方法:mitmdump -s FuckPaddle.py --listen-host 127.0.0.1 -p 10086 -k
命令中的端口可以自己改,然后就将指定的应用转到对应的代{过}{滤}理端口上就可以了。
0x03 已知Paddle激活应用
- AirBuddy
- Downie 4
- Lunar
- Unite 4
...