re -01 buuctf xor

"博客内容涉及了一个Python脚本,该脚本用于对一串包含混合字符和整数的列表进行处理,通过将整数转换为字符并拼接成字符串,然后执行异或操作来解密数据。最终得到了一个flag:flag{QianQiuWanDai_YiTongJiangHu}
摘要由CSDN通过智能技术生成

xor

在这里插入图片描述
找到main函数,反编译
在这里插入图片描述
查看global存放数据
在这里插入图片描述
写python脚本:
先将所有字符全转为字符型,拼接为字符串后再异或运算

s = ['f', 0xa, 'k', 0xc, 'w&O.@', 0x11, 'x', 0xD, 'Z;U', 0x11, 'p', 0x19, 'F', 0x1F, 'v"M#D', 0xE, 'g', 0x6, 'h', 0xF, 'G2O', 0]
for i in range(1,22):
    if isinstance(s[i], int):                   #将int转为char
        s[i] = chr(s[i])
s = ''.join(s)                                  #将列表拼接位字符串
flag = 'f'                                      #异或遍历从1开始,0被保留
for i in range(1, len(s)):
    flag += chr(ord(s[i]) ^ ord(s[i - 1]))
print(flag)

得到flag{QianQiuWanDai_YiTongJiangHu}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值