最近參加了幾場ISDA的研討會,也玩了一陣子這個wargame遊戲,但註冊部分有限特定IP,這部分我就不詳述。
以下會對關卡做詳細的解析,建議先自行研究並嘗試破關後再看此文章,若看解析再破關,會被我的解法與思路限制。
PS. 寫這系列主要是希望能幫助像我當初卡關一個星期而無法破關者,給予幫助與提示,並不希望直接拿解答去破關,這樣就去意義了。重要!重要!重要!
為了避免有人直接使用密碼通關,以下僅提供解法過程,不提供密碼。過程才是最重要的!
GAME1-level1:
這關提示為”No hint in this level :D”,因此我們先查看此網頁之原始碼
可以發現此網頁引用了一行
嘗試打開此檔案後,裡面寫了一些密碼的檢驗,但在HTML中是沒有使用這些程式碼的
因此我們再測試一下在includes此資料夾是否有其他檔案,你會發現includes資料夾是沒有關閉 directoryIndexes
因此可以再發現存在一個checkpassword.inc,看起來有點相似php檔的程式碼,因此我們再試著打開其原始碼
就可以看到密碼囉!
GAME1-level2:
這關提示為”Dont use Default Password ;)“,蠻明顯是要告訴你預設密碼是非常危險的
我們應該要避免使用預設密碼,透過google我們可以找到各大廠裝置的預設密碼
如:http://www.phenoelit.org/dpl/dpl.html
將預設密碼嘗試過後,就可以正確的通關囉!
其實我覺得這關的提示很廣…應該至少也要提示個網通大廠之類的吧!
GAME1-level3:
這關提示為UNIX Make Your Life Easy “level3.dat”,看來是要利用unix-like系統去解析這個檔案
並從而得知密碼了。在 linux 裡面有一個指令為 file,可以先幫你判斷此檔案類型。
經由此指令判斷後,可以發現這是一個Zip archive data,也就是壓縮檔
因此我們將它解壓縮後,可以得到一個ReadMe.txt,打開這個純文字檔
你會發現是一堆看不懂的英文!? 但有一部分字串” kwws://zzz.hhbh.frp/kwpo/“
我們如果嘗試把每個字母的ascii值減三就變成 “http://www.ee\_e.com/html/
因此,我們可以合理推斷這有可能是凱撒加密法
這時候你就可以自己慢慢地把整篇的字母都減三去看這篇文字說些什麼囉!
就可以得到密碼了~記得數字的部分也要算唷!
PS. 我個人比較熟C語言,因此就直接寫了程式作解析。或是可以參考這個線上凱薩解密網頁http://tools.matchzones.net/caesar_cipher
GAME1-level4:
這關提示為”Author wrote script that would email his password to him automaticlly.”,看起來是作者寫了一隻程式
會自動將密碼寄到作者信箱,因此我們大概可以初判
1. 盜作者信箱
2. 攔截信件
3. 重導信件至我的信箱
因此,我們打開程式碼看看寄送按鈕的行為
發現有一行傳送信箱位置的值被隱藏
<input type=hidden name=to value=“[email protected]”>
因此我們可以嘗試將此信箱改為自己的信箱,再按傳送按鈕
這樣就可以到自己的信箱收密碼囉!
GAME1-level5:
這關提示為”Basic Cookie Authentication.”,因此可以大概判斷跟cookie 認證的風險相關
我們先試著看目前此網頁有任何cookie嗎?
document.cookie => level5=no; login=0; PHPSESSID=xxx
可以發現目前有 level5=no 及 login=0
我們直覺得嘗試將 level5 改為 yes,login 改為 1,再按登入看看
就通關囉!
PS. 如果不會使用 console 更改cookie值的話,可以參考下載 chrome 的 EditThisCookie