PEID查壳

发现其实是UPX的壳,所以我们要先脱壳
UPX脱壳

关键代码分析
我们将脱壳后的文件,使用ida打开
查找字符串
找到关键代码处

其实这种情况有两种解法
①:直接看代码,除就完事了
因为他是 N*a1[n] != M
那么我们就可以转化成
a1[n] = M // N
②:Z3求解器
利用z3求解器来求解各数组的元素
脚本
①:
a1 = [0]*32
a1[0]=chr(166163712//1629056)
a1[1] = chr(731332800 // 6771600)
a1[2] = chr(357245568 // 3682944)
a1[3] = chr(1074393000 // 10431000)
a1[4] = chr(489211344 // 3977328)
a1[5] = chr(518971936 // 5138336)
a1[7] = chr(406741500 // 7532250)
a1[8] = chr(294236496 // 5551632)
a1[9] = chr(177305856 // 3409728)
a1[10] = chr(650683500 // 13013670)
a1[11] = chr(298351053 // 6088797)
a1[12] = chr(386348487 // 7884663

本文介绍了如何通过PEID识别并脱去UPX壳的方法,并展示了两种不同的求解数组元素的方式:手动计算和使用Z3求解器。最终通过解析得到flag。
最低0.47元/天 解锁文章
402

被折叠的 条评论
为什么被折叠?



