AIS3 (Advanced Information Security Summer School) 新型態資安暑期課程是由教育部資訊安全人才培育計畫推動辦公室所主辦。
從 2015 年暑假開始,第一年在臺灣科技大學舉辦,學員人數 100 人。因反應熱烈,自第二年起在北中南同時開設課程,第三年更與日本團隊合作,在 CTF 攻防競賽中加入視覺化特效,讓學員能體驗國際級 CTF 競賽的氛圍。
簡介
想參加 AIS3 課程的學員,必須先通過 pre-exam 測驗
Pre-exam 是 Jeopardy 類型的 CTF,題目類別包含 Web、Pwn、Misc、Reversing、Crypto 五大類,各有四題,依照難度給 1 ~ 4 分
今年的 pre-exam 在六月初舉辦,共三天時間,滿分 50 分
我共解出了 Web 1,2,3、Crypto 1,2、Misc 1 與 Rev 1 共七題
Web
1. Warmup
竟然沒記下怎麼解的,可能是水題吧 0w0
連到 http://104.199.235.135:31331/index.php?p=7 發現 HTTP Header 裡面有一欄
Partial-Flag:d
,推測 URL 裡面的 p 表示是 flag 中的第 p 個字元,所以變動 index 拼出 Flag
(參考這篇 XD)
Flag: AIS3{g00d! u know how 2 check H3AD3R fie1ds.}
2. Hidden
每次頁面有個按鈕,過 5 - 10 秒後才能點
實際上不用拆 JavaScript 腳本,直接 POST 資料就可以了
在第 17,332 次才給 Flag orz
Flag: AIS3{g00d_u_know_how_2_script_4_W3B_017e71a8b7dc8a225e95b11376b570e9}
3. Sushi
題目主要是
eval('die("' . substr($_GET['🍣'], 0, 16) . '");');
看就覺得可以注入,方法很多種 XD
我是直接讓他接一個 ls
出來
http://104.199.235.135:31333/?🍣=".system("ls")."
看到 flag_name_1s_t00_l0ng_QAQQQQQQ
檔案,該 file_get_contents()
出來嗎?
我沒那麼勤勞,直接打開 http://104.199.235.135:31333/flag_name_1s_t00_l0ng_QAQQQQQQ 就拿到 Flag 了 XD
Flag: AIS3{php_is_very_very_very_easyyyyyy}
Crypto
1. POW
只要 Brute Force 暴力猜測,算到某個字串的 Hex Hash 開頭有 6 個 0 ,就會直接給 Flag
condition : x[:6] == 'SEANXD' and hashlib.sha256(x).hexdigest()[:6] == '000000'
Flag: AIS3{Spid3r mAn - H3L1O wOR1d PrO0F 0F WOrK}
2. XOR
查看程式碼,利用他的特性,以 AIS3{
開頭帶值慢慢猜
cipher = ("flag" + "key") ^ "key"
應該是可以自動化產出 key 啦,但我直接一位一位的帶,手動算一下 XOR 的值不慢 –寫程式抓蟲反而要很久–
Flag: AIS3{captAIn aMeric4 - Wh4T3V3R HapPenS t0mORr0w YOU mUst PR0Mis3 ME on3 tHIng. TH4T yOu WiLL stAY Who Y0U 4RE. Not A pERfect sO1dIER, buT 4 gOOD MAn.}
Misc
1. Welcome
這人真懶,又沒寫筆記了 😕
竟然是放在 Pre-exam 網站首頁的介紹影片中ww
Flag: AIS3{Maybe_This_is_the_Flag_You_Want}
Reverse 1
我竟然能解出 Reverse 的題目?!
果然是這題太水,只要抓檔案中出現的明文字串,就能拿到 Flag 了 😃
strings rev1-find |grep AIS3 |grep -v '{}'
Flag: AIS3{StrINg$_And_gR3P_I5_U$eFu1}
戰績
總共拿下了 11 分,約 140 名
還不到北區 100 正取生的名次,不是很滿意,希望下次可以再前進些 XD
課程心得
有另外打成一篇文章喔,點這個連結:
https://blog.sean.taipei/2018/08/ais3