2018-DDCTF-writeup

杂项

2018-DDCTF-writeup_第1张图片

题目如下:

2018-DDCTF-writeup_第2张图片

d4e8e1f4a0f7e1f3a0e6e1f3f4a1a0d4e8e5a0e6ece1e7a0e9f3baa0c4c4c3d4c6fbb9e1e6b3e3b9e4b3b7b7e2b6b1e4b2b6b9e2b1b1b3b3b7e6b3b3b0e3b9b3b5e6fd

       我最开始认为应该是十六进制直接转字母,可是不可能这么简单。所以我就想把前后两个d去掉再解,事实证明我的想法是错误的,一旦最开始的思路偏了,就不可能找到flag了。还是做得题目太少啊。。。

        后来我看别人的write up才知道应该直接转成十进制:212  232  225  244  160  247  225  243  160  230  225  243  244  161  160  212  232  229  160  230  236  225  231  160  233  243  186  160  196  196  195  212  198  251  185  225  230  179  227  185  228  179  183  183  226  182  177  228  178  182  185  226  177  177  179  179  183  230  179  179  176  227  185  179  181  230  253

a="d4e8e1f4a0f7e1f3a0e6e1f3f4a1a0d4e8e5a0e6ece1e7a0e9f3baa0c4c4c3d4c6fbb9e1e6b3e3b9e4b3b7b7e2b6b1e4b2b6b9e2b1b1b3b3b7e6b3b3b0e3b9b3b5e6fd"
for i in range(0,len(a),2):
	print(int(a[i:i+2],16),' ',end="")

 

发现明显大于ascll的128,所以尝试减去128再转为字符:That was fast! The flag is: DDCTF{9af3c9d377b61d269b11337f330c935f}

 

a="d4e8e1f4a0f7e1f3a0e6e1f3f4a1a0d4e8e5a0e6ece1e7a0e9f3baa0c4c4c3d4c6fbb9e1e6b3e3b9e4b3b7b7e2b6b1e4b2b6b9e2b1b1b3b3b7e6b3b3b0e3b9b3b5e6fd"
for i in range(0,len(a),2):
	print(chr(int(a[i:i+2],16)-128),end="")

 

得到flag

 

你可能感兴趣的:(随笔)