今天在網(wǎng)上看到一篇帖子:http://www.dingguohua.com/blog/hax-tor-hu_free-ssh.html,便被好奇心驅(qū)使來challenge這5個(gè)難題了。按照帖子的方法來逐個(gè)做,本來想投機(jī)取巧下,后來發(fā)現(xiàn)問題啥的都變了,于是只得自己一個(gè)個(gè)攻破了。
首先進(jìn)入http://hax.tor.hu/warmup1/,其實(shí)每一個(gè)關(guān)卡就是一個(gè)warmup,但是不會(huì)讓你跳級(jí)完成。所以只得一步步來了。
進(jìn)入warmup1后,會(huì)提示你輸入密碼,但是密碼在source中,也就是上面那個(gè)也沒的javascript代碼中,而且會(huì)給你一個(gè)demo例子(http://www.pageresource.com/jscript/jpass.htm),解釋密碼是如何的形式。
var password; var pass1="cool";
password=prompt('Please enter your password to view this page!',' ');
if (password==pass1) alert('Password Correct! Click OK to enter!');
else { window.location="http://www.pageresource.com/jscript/jpass.htm"; }
或者其它形式:
var password;var pass1="cool";var pass2="awesome";var pass3="geekazoid";password=prompt('Please enter your password to view this page!',' ');if (password==pass1 || password==pass2 || password==pass3) alert('Password Correct! Click OK to enter!');else { window.location="http://www.pageresource.com/jscript/jpass.htm"; }
總之,根據(jù)代碼的形式很容易找到源代碼中的相關(guān)密碼部分,這部分我做的密碼是“warmup1lolcopter”。和原始 的博客中第一題一樣,源代碼中是三個(gè)字符串的疊加,warmup1 + lol + copter。
完成后瀏覽器會(huì)跳轉(zhuǎn)到第二題,我做這個(gè)題目的時(shí)候第二題不可用,所以讓直接輸入fail就通過了,為此比較簡單。
第三題的話比較復(fù)雜,不過我也投機(jī)了一下,看了原始的帖子,發(fā)現(xiàn)其中的Bacon和我這個(gè)題目相同,為此按照原帖的思路,
這個(gè)簡單,源碼中的 select name=”chosen”> 說明 name=”chosen” ,所以在當(dāng)前的瀏覽器中輸入http://hax.tor.hu/warmup3/?chosen=Bacon 回車就到第四關(guān)。
進(jìn)入第四關(guān)后,和原帖的辦法類似,不過不能類推。密碼不在源代碼中,而是要根據(jù)網(wǎng)頁的報(bào)文來獲得,先用telnet登陸,我使用的dos界面,也可以用putty這個(gè)工具實(shí)現(xiàn)。
輸入:
telnet hax.tor.hu 80
GET /pwfor4/ HTTP/1.0(原帖使用1.1,我這里使用的1.0才成功)
Host: hax.tor.hu
返回信息: