让Claude写的一个脚本,很强~ 你可以永远相信你克劳德鸽儿~
脚本在附件 (需要pip安装capstone与keystone-engine,否则脚本反汇编会出错)
下面是`cmp dword ptr [rsp], 0x12345678`一行代码的混淆结果:
(有BUG,汇编正常,最后输出字节码的时候会丢失很多数据,以及偏移跳转错误,Claude没额度了,先这样吧)
C:\Users\Administrator\Downloads\新建文件夹>python obfuscator.py --input "81 3C 24 78 56 34 12" --hex-style spaced --const 2 --out both --level 3 --passes 2
╔══════════════════════════════════════════════════════╗
║ x86-64 汇编混淆器 ║
║ level=3 passes=2 max=无限制 seed=随机
╚══════════════════════════════════════════════════════╝
输入: 7 bytes
原始hex: 81 3C 24 78 56 34 12
[ 反汇编结果 ] (后端: capstone 5.0.7)
──────────────────────────────────────────────────────────────
cmp dword ptr [rsp], 0x12345678
原始估算: ~4 bytes → 混淆后估算: ~151 bytes (膨胀率: 37.8x)
──────────────────────────────────────────────────────────────
[ 混淆后 NASM 输出 ]
──────────────────────────────────────────────────────────────
; ============================================================
; 混淆后 x86-64 汇编 (NASM syntax)
; 混淆强度: level=3 估算大小: ~151 bytes
; ============================================================
BITS 64
push r10 ; CMP常数混淆: 保存 r10
mov r10d, 0x7B3052E6 ; 常数混淆: 构造 0x7B3052E6 (step0/初始值)
push rsi ; 花[OP-XOR]
sub esi, esi ; ZF=1, 必然
or esi, esi
pop rsi
not r10d ; 常数混淆: step1/2
push rbx ; 花[FLAG噪声]
and ebx, 0
or ebx, ebx ; ZF=1, 污染数据流
pop rbx
not r10d ; 常数混淆: step2/2
push rdx ; 花[OP-XOR]
and edx, 0 ; ZF=1, 必然
or edx, edx
传播安全知识、拓宽行业人脉——看雪讲师团队等你加入!
最后于 3天前
被SSH山水画编辑
,原因: 修BUG