EasyXorReverse 未解决

分数: 0 金币: 0
所属赛事: SusCTF 2017
题目作者: 未知
一血奖励: 0金币
解  决: 814
提  示:
描  述:
Susctf{}
其  他: EasyXor
评论
tuyue八 2月前

while(c[i]){c[i]=c[i]^i,i++}。

回复 0

dreamyacht2 3月前

v8 = [83, 116, 113, 96, 112, 99, 125, 78, 87, 103, 57, 110, 104, 82, 102, 106, 113, 32, 123, 125, 115, 104] correct_string = ''.join(chr(v8[i] ^ i) for i in range(len(v8))) print(correct_string)

回复 0

azcvcza 5月前

签到题,发现判断条件 v8[i]!=i^s[i],则s[i]=v8[i]^i,写循环异或得到s[]数组,进行ascii转换即得flag

回复 0
erxpa 25天前

刚入门,这个怎么发现的,麻烦说一下可以吗?哈哈,谢谢

回复 0

hengdonghui 7月前

没用到IDA深层次的功能。

回复 0

hengdonghui 7月前

WriteUp 1、下载题目的附件后,发现附件没有后缀,不能确定文件的类型,于是使用软件010Editor打开附件“EasyXor_”。 发现文件头是: 7F 45 4C 46 对应的字符串是:“ELF” 是一个ELF文件,是一个可执行文件。 根据题目中的Reverse单词,提示我们:该题需要反汇编。 既然需要反汇编,就使用反汇编软件ida打开该文件。

回复 3
lvshuoqi 3月前

@2509048118 文件后缀改成.elf,放进ida里找到主函数main,按F5生成c伪代码

回复 1

2509048118 4月前

我的ida打不开这个

回复 0

whiteHaves 7月前

又是整体累积增码,字符转ASCII码之后每次xor上递增后缀就可以了 while(c[i]){c[i]=c[i]^i,i++}。

回复 0

Mr.J 10月前

v8 = [83, 116, 113, 96, 112, 99, 125, 78, 87, 103, 57, 110, 104, 82, 102, 106, 113, 32, 123, 125, 115, 104] correct_string = ''.join(chr(v8[i] ^ i) for i in range(len(v8))) print(correct_string)

回复 1

GaMi 10月前

v8=[83,116,113,96,112,99,125,78,87,103,57,110,104,82,102,106,113,32,123,125,115,104] for i in range(0,22): print(chr(i^v8[i]))

回复 0

13720959380 10月前

#include <iostream> int main() { char str1[] = "stq`pc}NWg9nhRfjq {}sh"; for ( int i = 0; i < 22; ++i) { str1[i] = i ^ str1[i]; } printf("%s&

回复 0

ADCC千月 11月前

我用的是radare2, main() 里面是16进制的,需要转一次10进制,其他都一样。

回复 0

WriteUp

image
heyile

1 金币

评分(1)

解题动态

TJBMWBENZ 攻破了该题 17小时前
frame 攻破了该题 2天前
zyf11111 攻破了该题 3天前
yeyanzhezixi 攻破了该题 5天前
琉璃薄荷糖 攻破了该题 5天前
tljtbb887475 攻破了该题 5天前
fiaxq 攻破了该题 6天前
shbshb123 攻破了该题 6天前
TheNbest 攻破了该题 9天前
13395364677 攻破了该题 9天前
wwt111 攻破了该题 9天前
2187671837 攻破了该题 9天前
lin123 攻破了该题 9天前
15315130642 攻破了该题 9天前
YTgf 攻破了该题 9天前
特码头 攻破了该题 9天前
lmz123 攻破了该题 9天前
我要弗兰戈 攻破了该题 9天前
yiluoqingqiu 攻破了该题 9天前
FUSO 攻破了该题 9天前
问题反馈