Fork me on GitHub

Bugku-CTF加密篇之告诉你个秘密(ISCCCTF)

告诉你个秘密(ISCCCTF)

 
636A56355279427363446C4A49454A7154534230526D6843
56445A31614342354E326C4B4946467A5769426961453067

 
 
本题要点:十六进制转ASCII码、bae64转码、脑洞
 
 
首先看到
 
636A56355279427363446C4A49454A7154534230526D6843
56445A31614342354E326C4B4946467A5769426961453067
 
这一串编码
 
在给定的字符串中
(1)数字为0-9,字符只有A-F,最大没有字符没有超过F。
(2)字符两两结合对应的十进制小于256。注:FF(十六进制)=255(十进制)
 
因此猜测是十六进制
用在线16进制转换字符的网站转码一下~
 
在线转码网站:
https://www.bejson.com/convert/ox2str/
 
 
这就是转出的字符:
 
cjV5RyBscDlJIEJqTSB0RmhCVDZ1aCB5N2lKIFFzWiBiaE0g
 
 
解密到的字符串看起来像base64~
 
注:这里可能会有初学的小伙伴们问了~ 用什么来判断这是base64呢?
        首先:base64编码后的字符串的长度一定会被4整除,包括用作后缀的等号吧;如果明文字符数不能被3整除,余1时,1个字符转为2个,补2个等号,共4个字符;余2时,2个字符转为3个字符,补1个等号,共4个字符;其实归根结底就是一句话:经过base64编码后的字符串长度一定会被4整除(包括后缀等号)
        简单来说:
        1. 标准base64只有64个字符(英文大小写、数字和+、/)以及用作后缀等号;
        2.base64是把3个字节变成4个可打印字符,所以base64编码后的字符串一定能被4整除(不算用作后缀的等号);
        3.等号一定用作后缀,且数目一定是0个、1个或2个。这是因为如果原文长度不能被3整除,base64要在后面添加\0凑齐3n位。为了正确还原,添加了几个\0就加上几个等号。显然添加等号的数目只能是0、1或2;
 
(ps:当然~ 看到这种类似字符组合的字符串,你可能分不清哪些是base64,哪些是base32,那么我们直接可以放进在线加解密的网站去试试~ 见多了就可以自己大概判断出来啦~)
 
下面放入base64解密网站解密~
在线网站:http://tool.chinaz.com/tools/base64.aspx
 
 
r5yG lp9I BjM tFhB T6uh y7iJ QsZ bhM
 
这一串就是转码出来的字符串
 
但是转出来的是什么意思呢~
我们可以看到r5yG lp9I BjM tFhB T6uh y7iJ QsZ bhM 中间是用空格分隔开的
脑洞~
低头看一下我们手边的键盘呢!
 
 
r5yG==>T
 
lp9I==>O
 
BjM==>N
 
tFhB==>G
 
T6uh==>Y
 
y7iJ ==>U
 
QsZ ==>A
 
bhM==>N
 
得到答案:TONGYUAN
 
没有提示需要加flag{}
因此直接提交TONGYUAN即可
 
 
 
完成~
 
 
 
 
 
 
posted @ 2019-11-28 11:37  0yst3r  阅读(2403)  评论(4编辑  收藏  举报
返回顶部