0%

[SWPUCTF 2024 秋季新生赛]动态调试

2025-06-19 11:38By
soapsama
动态调试RC4C

Problem: [SWPUCTF 2024 秋季新生赛]动态调试

思路

import ida_bytes import idc patch_data = [ 0xCF, 0xA0, 0xC7, 0x24, 0x93, 0xEC, 0x51, 0xFB, 0x5E, 0xA5, 0xEE, 0xC5, 0xE7, 0xEA, 0xBB, 0x4A, 0xE0, 0x6E, 0x16, 0x63, 0xF0, 0x1A, 0x91, 0x4, 0xC1, 0x7E, 0x3F, 0x2B, 0x4F, 0x53, 0xB0, 0x62, 0xA3, 0xA1, 0xCF, 0xC1, 0x73, 0x85, 0x5F, 0xEC, 0x14, 0xD8, 0xD4, 0xE2 ] def patch_array(): # 目标地址(修改为你的地址) start_addr = 0x0000000000408040 # 验证地址有效性 if not ida_bytes.is_mapped(start_addr): print(f"[-] 错误地址 0x{start_addr:X}") return # 遍历地址进行patch for idx, byte in enumerate(patch_data): current_addr = start_addr + idx ida_bytes.patch_byte(current_addr, byte) print(f"[*] 已修改地址 0x{current_addr:X} 为 0x{byte:02X}") print(f"[+] 已完成 {len(patch_data)} 字节的写入") ida_bytes.refresh_idaview_anyway() if __name__ == '__main__': patch_array()

patch进去然后运行到比对处就自解密了

EXP

  • 具体攻击代码

总结

  • 对该题的考点总结
还没有人赞赏,快来当第一个赞赏的人吧!
  
© 著作权归作者所有
加载失败
广告
×
评论区
添加新评论