程序猿光棍节闯关游戏

好无聊好寂寞,来玩一下。。。。


因为我不是程序猿,所以应该闯不到头的。。。。


边闯边写就是了


 


第一关链接请戳 http://segmentfault.com/game/


 


第一关查看源代码即可



 


于是得到第二关链接http://segmentfault.com/game/?k=d677c833e6d6af85176dc8ff32158971


 


第二关依旧是查看源代码



 


填入密码,得到第三关链接http://segmentfault.com/game/?k=a1a64829cbffddff6737c68fbcfe7eb5


 


第三关源代码没有任何有用内容,尝试抓包查看



 


从header里成功得到下关的链接http://segmentfault.com/game/?k=a87ff679a2f3e71d9181a67b7542122c


 


第四关


页面有个提示,“观察你密码的规律”,a87ff679a2f3e71d9181a67b7542122c这个看起来如果经过加密的话,也只能是32位md5加密,于是去cmd5解密,解密结果是4,那很明显,我们想去第五关,就把5进行md5加密就行,md5(5)=e4da3b7fbbce2345d7772b0674a318d5


输入,进入第五关


http://segmentfault.com/game/?k=e4da3b7fbbce2345d7772b0674a318d5第五关赫然一个二维码,果断爪机扫之扫出来的结果是“你被耍了,什么都没有”,次奥!查看header无果,源码无果那线索还是在图片里下载图片,右键记事本打开,拖到最后一行,果然



bdbf46a337ac08e6b4677c2826519542就是第六关链接。在图片里隐藏关键信息是常用技巧,比如在某些被黑掉的网页上,你下载黑客挂上去的图片,记事本打开,有时候里面会有黑客留言。 第六关


光棍节程序员闯关秀第6关(总共10关)


f4de502e58723e6252e8856d4dc8fc3b, 只能告诉你这么多


 


看起来像md5,先去解密试试


cmd5表示暂时无法破解,那说明要么这个key较为复杂,要么就是不是md5加密的。考虑到这个是个闯关游戏,应该不会无聊到让你挂机用彩虹表破md5,但是除了md5加密外也无法可想,于是只有一种可能——这个确实是md5加密,但是极其复杂,但是我们能破解,于是直接baidu f4de502e58723e6252e8856d4dc8fc3b



槽好猥琐!!!!于是key为1573402aa6086d9ce42cfd5991027022




第七关


光棍节程序员闯关秀第7关(总共10关)


有问题就Google是个好习惯! 再试试 e2f3d1d904b402936d949b38d9e1e0e8


我反正不信能谷歌到的,哪有这么好心。但试试还是要试试的。


没有搜索到任何结果。查看源码。没有任何结果。


这关略坑,但是我其实很快就做出来了。。。。在一切可能性都被排除的情况下,再难以置信的可能性就是真相。


直接填上e2f3d1d904b402936d949b38d9e1e0e8,这就是key,进入第八关。


 


 第八关


第八关有个文本框,里面填着像是key的东西,直接回车提交——当然不行


这种一般就需要审查元素功能了。由于还不知道Hcon的审查元素功能在哪打开,于是我转移到了Chrome浏览器。



 这个get明显有问题,怎么可能是get,改成post,回车提交


成功进入第九关。



 


 给跪!!!求别说!!!!!


 


这个每个是8位二进制,可以直接转成16进制,但是那些下斜杠是啥= =怒跪。。。。


 


目测是把所有下斜杠填成1或者0,翻译为16进制后进行base64循环解密得出key,只是猜想,下斜杠不知道怎么填,卡住了。。。。


 考虑到光棍节的特殊性,我把所有的_换成1,在word里使用替换功能即可。但是替换完后发现一个严重的问题——没有能够处理这么长二级制字符串的转换软件,尤其还有空格和换行。。。。目前在寻找软件中。。。实在不行还得自己写一个。。。。


 好了最后一关解出来了。。。从12点多解到2点50。。。哭了。。。。


上面我的基本思路是对的,把所有下斜杠换成1


得到一个大文件,全为二进制编码


网上找不到任何可以处理这么大二进制编码的软件,于是我写了一个,其实很简单


#include<iostream>
#include<bitset>
#include<string>
using namespace std;
int main(){
string str;
while(cin>>str){
bitset<8> val(str);
cout<<hex<<val.to_ulong();
}
cout<<endl;
return 0;
}


 


 然后DOS跳转到程序所在目录下,


 


 type xxxx.txt | 2-16.exe > output.txt


 


输出得到翻译过来的 16进制编码,但是不对劲,因为那段编码明显不是base64加密的,所以思路错误。


然后想到了ASCII码,这段2进制编码如果不翻译为16进制编码,他还可以翻译成字符串嘛。


于是再写一段程序:


#include<iostream>
#include<bitset>
#include<string>
using namespace std;
int main()
{
string str;
while(cin>>str){
bitset<8> val(str);
cout<<char(val.to_ulong());
}
cout<<endl;
return 0;
}


 


 成功将这段2进制编码转换成一段明显加密过的代码:


 


 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


 


很明显的base64加密,看起来答案触手可得,对么?


卧槽你想得太美了!!!!!!


解码后得到的是这个:



这是什么!!!!窝次奥!!!!刚刚那段代码明明就是经典的base64加密的说!!!可怎么解密结出来的是乱码!!!!


我把这段乱码复制粘贴到一个文本文件里,然后重命名为jpg、png、gif、rar、zip。。。。。


当然这些都是徒劳的尝试。


解密进入僵局。


我又回头仔细看了下这段代码,突然想起来我存到txt里由于编码问题,会出现字符丢失,而我用复制粘贴绝对无法避免这个问题。


linux下可以避免这个问题。


打开虚拟机,打开linux,使用命令base64 -d解密前面这段base64加密代码,并file输入至一个文件。


 


然后出现了tar.gz。。。。linux下的压缩格式。。。。


打开,里面是一张图片


 



 


苍井空女神此刻看起来比以往任何时候都要美T_T


把她举着的这个牌子上的这段字符输入到segmentfault.com/game/?k= 后面,成功通关。


结束。


相关文章
相关标签/搜索