buuctf密码学EasyProgram

buuctf密码学EasyProgram这题有点好玩题目给了两个附件file.txt和附件.txt这是什么代码????百度后发现这是伪代码。。现在连伪代码都认不出来了。代码还行,大概可以看出来意思,就是set有点坑。观察到伪代码最后两句: set flag[m]:flag[m]^s[x]fprint flagx to file其他的代码好像没有和flag直接运算,和flag运算的只有一句,那就是^运算,不难知道,异或运算是可逆的,即异或密文可以得到明文。而且观察到最后一个for循
摘要由CSDN通过智能技术生成

buuctf密码学EasyProgram

这题有点好玩
在这里插入图片描述
题目给了两个附件file.txt和附件.txt
在limian述
在这里插入图片描述
在这里插入图片描述
这是什么代码????百度后发现这是伪代码。。现在连伪代码都认不出来了。代码还行,大概可以看出来意思,就是set有点坑。观察到伪代码最后两句:

 set flag[m]:flag[m]^s[x]

fprint flagx to file


其他的代码好像没有和flag直接运算,和flag运算的只有一句,那就是^运算,不难知道,异或运算是可逆的,即异或密文可以得到明文。而且观察到最后一个for循环有38次,但是flie里面长度好像并没有38,所以不能直接复制粘贴。拖入winhex:

在这里插入图片描述
数了一下发现16进制值刚好38个,整体思路就出来了,写脚本:

flag = [0x00,0xBA,0x8F,0x11
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值