2018/11/25-nctf-Our 16 bit wars
Posted fingerprint
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2018/11/25-nctf-Our 16 bit wars相关的知识,希望对你有一定的参考价值。
题目链接:https://pan.baidu.com/s/1t_I5rpynQhPPtFH7eDxAqg
提取码:7oj0
拖进IDA里进行反汇编,程序逻辑比较简单。
我们点进sub_100F9函数看看怎么对输入进行处理的。
可以发现是对每个字符的,右移3位的值与左移五位的值,进行异或。
然后是对处理后的输入与固定字符串进行比较。
比较的值存储在内存中0x76地址开始处。
写出脚本运行即可得到flag。
s=bytes.fromhex("C9688AC86F07060F07C6EB866E6E66AD4C8DACEB266EEBCCAECD8C86AD66CD8E868DAF") for i in range(len(s)): a = (s[i] << 3)&0xff b = (s[i] >> 5)&0xff c = a ^ b print(chr(c),end = ‘‘)
以上是关于2018/11/25-nctf-Our 16 bit wars的主要内容,如果未能解决你的问题,请参考以下文章