buuoj-[FlareOn4]IgniteMe

1.32bit无壳

2.找到函数start,看着很乱,其实都点开看看很简单的

3.加密函数

倒着往前异或

第一个v4是这个:v4 = sub_401000();

点进去:

逻辑左移4次之后,向右移动一位

算不出来的v4

解决方法1:用同态调试去看看v4初始值是多少

解决放法2:计算出

这里找了一下大佬的博客

data=[0x0D, 0x26, 0x49, 0x45, 0x2A, 0x17, 0x78, 0x44, 0x2B, 0x6C,
  0x5D, 0x5E, 0x45, 0x12, 0x2F, 0x17, 0x2B, 0x44, 0x6F, 0x6E,
  0x56, 0x09, 0x5F, 0x45, 0x47, 0x73, 0x26, 0x0A, 0x0D, 0x13,
  0x17, 0x48, 0x42, 0x01, 0x40, 0x4D, 0x0C, 0x02, 0x69]
data.reverse()
tem=4
flag=''
print(len(data))
for i in range(len(data)):
    flag+=chr(data[i]^tem)
    tem=data[i]^tem
print(flag[::-1])

得到flag{R_y0u_H0t_3n0ugH_t0_1gn1t3@flare-on.com}

posted @ 2022-12-13 16:19  今天吃大鸡腿  阅读(79)  评论(0编辑  收藏  举报