光棍節程式設計師闖關秀 writeup
第1關 ctrl+a ~~
第2關 檢視頁面原始碼,複製貼上 回車~~
第3關 用firebug抓包,或者火狐谷歌瀏覽器自帶的開發者工具也可,就可以看見
The-Key-Is:a87ff679a2f3e71d9181a67b7542122c
把Key複製到URL上K= 後面即可
第4關 觀察密碼規律,看看原始碼沒什麼資訊,應該就是解碼題了,把上一關的key丟到MD5線上解碼上→→ http://www.cmd5.com/ 得到結果4,第4關對應4,那第5關就對應5吧,5用MD5加密,得到key : e4da3b7fbbce2345d7772b0674a318d5
第5關 一個二維碼圖片,先下載下來看看吧~
用記事本的方式開啟就能看到下面這樣
最後一行就寫著KEY了: bdbf46a337ac08e6b4677c2826519542
第6關: f4de502e58723e6252e8856d4dc8fc3b, 只能告訴你這麼多
看起來像是MD5,丟到MD5線上解密一下,付費記錄……
半天沒想到怎麼弄,就把那句話直接複製百度了一下,然後….
找到KEY:1573402aa6086d9ce42cfd5991027022
第7關 有問題就Google是個好習慣! 再試試 ba7022ec37557712eb7fd79dcafc783b
於是就把那串谷歌,什麼也沒有,試試直接放到位址列上,成功進入下一關,原來直接就把KEY放出來了….1+1問題麼233~
第8關 直接點回車試試,把KEY複製到URL上,都不行,看看頁面原始碼吧
發現表單這裡是GET,改成POST後,再返回網頁上點回車,成功進入下一關
第9關 一大串2進位制,還要填空….沒什麼思路,百度了一下說為了應景雙11所以全部填上1111,然後轉10進位制再轉字元型。放上C++程式碼:
#include<cstdio>
#include<iostream>
using namespace std;
char s[10];
int main()
{
freopen("input.txt","r",stdin);
freopen("output.txt" ,"w",stdout);
while (scanf("%s",&s)==1)
{
int n,m=1;
if(s[7]=='1') n=1;
else n=0;
for(int i=6;i>=0;i--)
{
if(s[i]=='1')
{
for(int j=0;j<7-i;j++)
m*=2;
n+=m;
m=1;
}
}
printf("%c",(char)n);
}
return 0;
}
把網頁上的二進位制數全部複製到一個新建的input.txt裡,把__全部替換成1111,然後執行程式碼就能輸出一個output.txt檔案
可以看出是base64編碼的,但是直接解碼出來是亂碼….
看網上攻略得知這是一個base64編碼的圖片,但是我怎麼都弄都沒法顯示出這個圖片orz,試著用瀏覽器加上圖片標記直接開啟看,圖裂了…..試了好久都沒解決,於是卡關了….
網上搜到的結果是圖片上寫著最後一關的key,輸入後則會恭喜通關orz