iT邦幫忙

第 11 屆 iT 邦幫忙鐵人賽

DAY 27
0
Security

CTF 的三十道陰影系列 第 27

Day27: [Forensic] 他們轉生變成 CTFer 這檔事

前言

這三天舉辦 HITCON CTF 的緣故,暫時先省略後面的考古題解析,等之後會找時間補上 QQ

今天介紹的隊伍是傳說中的 217,有寫錯的請大家提醒我 ,如果本人看到請不要生氣......XD

HITCON ~= Orange + 217 + CRAX

前幾篇有提過,HITCON CTF Team 的第一梯成員,大致上是由 Orange + 217 + CRAX 組成,其中 217 是來自台大的隊伍,CRAX 是交大的成員,CRAX 原本就是資安 lab SQLAB 出身,比較早接觸到 wargame,在 2014 打進 DEF CON CTF 決賽的前幾年就有先嘗試過幾次,都以失敗告終

兩者聯手的契機是 CRAX 的成員之一 atdog 大學畢業後到台大念研究所,不過每年還是有在跟 CRAX 繼續挑戰 wargame,當時 CRAX 受邀與 chroot 成員一同挑戰 DEF CON 21 CTF 初賽,主辦方當年新增了 PPC 的題型 (當時分類名稱叫 OMGACM),其中有一道 4 分題一直沒有隊伍解出,剛好 atdog 有輾轉認識台大的 ACM-ICPC 選手,也就是後來 217 的隊長、HITCON CTF team 的副隊長 winesap,請他幫忙解掉這道題,這應該是第一次台灣第一次 first blood DEF CON CTF 的題目並獲得開題權 XDD

  • 當時是由 LegitBS 舉辦的初賽,以前的賽制一開始只會開一道題目出來,取得首殺的隊伍有資格開下一題讓大家解,但由於會影響 CTF 競賽體驗,近年來較少這種作法

但除了挑戰 DEF CON 之外,雙方平常是各自打 CTF (Orange 會看心情選擇加入其中一方 XD),後來 CRAX 的主力成員陸續從 SQLAB 畢業,也覺得光靠 CRAX 跟 217 的程度有一些差距,決定跟交大另一個資安 lab DSNS 合併成立 BambooFox,同時推廣 CTF 到交大校園,希望吸收更有潛力的新血

  • BambooFox 於 HITCON CTF 2014 舉辦時正式成立,而 217 正式接手 HITCON wargame,成為 HITCON CTF 的主辦方

ACM 強人們...是活著的......

winesap 接觸到 CTF 後就對 CTF 產生濃烈興趣,而他當時剛在 ACM-ICPC 的比賽幾乎封頂,因此就轉生變成史萊姆 轉職成 CTFer,並在 217 教室號召其他成員組隊成立 217 CTF team

  • 「217 名稱的由來 ?」得獎後最常被採訪的問題......XD (我也問過),根據我的理解,217 大致上是台大資工系館的一個公共空間,打 ACM 的強者或各方面的強者經常在此聚會和出沒,因此形成了一個社交圈,217 CTF team 只是其中的一部分人

217 的成員程式能力都是神人級別.... <(_ _)> 雖然當時成立時只有 4 人,但可以說每個都是天選之人...XD 四人有三人獲得 ACM ICPC World Finals 金牌,剩下一人比較不打 ACM,但從程式運作至 Kernel 底層都十分熟悉,補足 CTF 中需要系統層級知識的部分,以下大略介紹一下背景 XD

  • seanwu, a.k.a.winesap
    • ACM ICPC World Finals 2013 金牌、資訊奧林匹亞金牌 & 銀牌
    • HITCON CTF team 副隊長、217 前任隊長 (?)
    • 主打 pwn 題,reverse 和 misc 類型也有相當的戰力,沒題目解會幫忙看 crypto
    • 計算機安全、AIS3 講師、台灣好厲駭 等 授課講師
    • 跟 angelboy 一樣是台灣 CTF 領域的本座級人物,可以說沒有 seanwu 就沒有現在的 217 CTF team,也可能不會有 HITCON CTF team 的成立
    • 以前東方 project 的高端玩家,現在專精 瑪莉歐賽車魔法氣泡
  • peter50216
    • ACM ICPC World Finals 2013 金牌、資訊奧林匹亞金牌、數學奧林匹亞銀牌
    • 主打 crypto,reverse 和 misc 類型也非常擅長
      • Lays: peter 連註解都可以逆得出來
    • 曾經導致其他隊伍發出哀號:「我出這道 crypto 題花了 20 hr,peter50216 竟然只花 4 hr 就解出來」
    • 曾經在 DEF CON CTF repo 進 commit 過的人
    • 通 ★ 靈 ★ 之 ★ 王
      • 解 misc 題有看不清楚的字,可以用肉眼看出需要進行圖像分析的文字
      • flag 部分遺漏時,有高機率補完正確 flag
    • 國中時期為圖書館借閱率第一名紀錄保持人
    • HITCON CTF 大亂鬥之王,經常都是頂著 200% 打場上全部人 XDD
  • shik
    • ACM ICPC World Finals 2014 金牌、資訊奧林匹亞金牌
    • 主打 crypto,但其實什麼類型都能打,全能強者
    • 據說是高中時期就開始對資安有接觸,曾經參加某知名駭客夏令營
    • 下班之餘會嘗試挖掘並回報一些 bug bounty
    • 精通各種 switch 各種小遊戲
  • jery
    • 比較不像其他人在 ACM 圈有顯赫的成績,但在 CTF 圈中 jery 是神,bj4
      • 略懂 ACM,比起解 ACM 題,更喜歡研究 online judge 的環境如何建設
    • 專門解難題,尤其是不知如何下手或環境難搞的題目 XD
    • HITCON CTF team 中年紀最小,但最可靠的成員
    • 精通各種音 game,Splatoon 2 壽司教信徒

217 雖然比 CRAX 晚接觸 CTF 和 wargame,但 217 成立後瘋狂做......題,恰好當時也是資安意識抬頭、CTF 比賽開始逐漸萌芽的時期,幾乎每個月都有好幾場 CTF 比賽可以練習,很快就成為台灣 CTF 最強戰力,在 2013 年時就拿過 Sharif University CTF 的冠軍,到 2015 年結束已經是 ctftime 上積分排名第 9 的隊伍,隔年上升到第 6 名,最後終於在 2017 年獲得年度積分冠軍 XD 而在中國的 XCTF 聯賽上,217 也屢屢奪冠領走獎金,被對方怒罵 賽棍 ... XD

  • 217 已經有多年沒有打 XCTF 聯賽,但至今還在 XCTF 的排行榜佔據第六名,可見當時刷了多少分數.....XD

有趣的是,在 217 在 BCTF 輾壓對岸後,中國也開始有些 ACMer 開始改玩 CTF,導致去美國比 DEF CON CTF 時像是認親大會一樣 ... XD 引用 blue-lotus 內成員在知乎上的說法

另外這四人在 Orange 時代結束後,接管了金盾獎的統治時代,展現了除了 coding 能力強以外,綜(ㄊㄨㄥ)合(ㄌㄧㄥˊ)能力也是一等一的強 XD

話說回來,217 能在 2017 年封頂,也不可能是靠當初草創的四人就達到此成就,後來又陸續像直銷找下線一樣,推坑 CTF 給其他 ACMer ... XD 以下是後來陸續加入的名單:

  • cebrusfs
    • 資訊奧林匹亞金牌
    • 在 HITCON 從 DEF CON 22 CTF 得到亞軍之後開始接觸 CTF,是 HITCON CTF 的二期成員 XD
    • 主要打 web,是目前稀缺的人才 QQ
    • 曾經反應過一些 real world 的 web 資安問題
  • david942j
    • 前天有專篇介紹過,由電機系跨足資工系的強者
    • 目前 217 pwn 題的主戰力之一
      • 因為 angelboy 目前現在也隸屬於 217 隊伍 XD
    • Razer 盃皮卡丘打排球冠軍
  • lyc12345
  • angelboy
    • pwn 神 bj4
    • 研究所畢業後,由於工作地點在台大,順勢加入 217 一起比賽 XD
      • 叛徒啦叛徒

另外還有 hanhanpoloo 也是 217 CTF team 成員,但我了解不夠多就不多作介紹 QQ

結語

現在因為偶爾比較難湊 CTF 的隊伍,因此偶爾會加入 217 一起比賽,但我現在都不敢說自己會寫 code 了 Q___Q 不要求心理陰影面積,因為他們可能真的有辦法求出來......跟 217 的成員接觸下來真的是有趣且愉快的事情,雖然偶爾吃飯會聊起演算法或 尺規做圖 之類的神秘話題 (還好我對數學並不排斥.... XD) BTW,相處久了見識到各種跳躍性思維感覺自己會變聰明了 (並沒有)

0x1a: HITCON CTF 2014 Game maze

這題是 HITCON CTF team 第一次打進 DEF CON CTF 就獲得第二名,當時回國後承接 HITCON Wargame,第一次舉辦 CTF 比賽出的題目,這題有趣的點是即使對 security 沒有相關知識的人,在解題過程也可以幫上忙,對於當時需要向國內推廣 CTF 的目的來說,是再適合不過的一題


題目的敘述很簡單,要大家連上 service 之後找到 flag 在哪裡,當時為了推廣還寫 Windows 內建就有的 client telnet XD:

Capture the flag in the maze!
telnet 210.71.253.213 8473

連上去之後會發現就如題目所敘述會是一個迷宮,如果單純的想法可能是要寫一個 DFS 之類的自動走迷宮程式,走到終點就有 flag,但會發現迷宮內有傳送門,不太可能用 DFS 走到底

如果成功走到轉角處,可以發現很明顯的 字型 pattern,既沒有傳送點,也沒辦法走進去,這時候就要稍微發揮一點想像力,來猜到這其實是一張 QR code 了 ...... XD

+------------------------
|@@@@@@@.@.@.@.@......@@.
|@.....@.@..@@@.......@.@
|@.@@@.@..@@@@@@..@.@....
|@.@@@.@.@.@@@@@...@.@@@.
|@.@@@.@....@@@@..@@@@@@@
|@.....@..@.@@@..@@@....@
|@@@@@.@.@.@.@...@.@.@.@.
|........@@.@...@@@@@.@@@

剩下的事情就很簡單了,想辦法走完整張迷宮,並記錄所有的 pattern 拼成一張完整的 QR code,就可以拿去 QR code scanner 掃描......才怪,QR code 有故意弄壞一些 pattern 會沒辦法直接掃描,不過 QR code 的 spec 本身是有帶容錯機制,只要找到哪些部分是壞的並修正,就可以掃描並得到 flag

  • 以這題的損壞程度而言,現今應該都有現成的工具可以修復

當時這場比賽我還沒有加入出題團隊,是掛在 BambooFox 底下一起比賽 XD 主要是由 217 的成員和 Orange 進行出題,現在想想他們當時竟然用五個人就出了 32 題......而且還是創意和水平兼具的題目,真的是太猛了 = =

雖然上面的 write up 很簡單帶過 prase QR code 迷宮這段,但其實由於偶爾會遇到傳送門或因為控制字元而遇到例外狀況,其實不好用程式自動處理

當時 BamfooFox 採取的策略是 -人海戰術,當時聚集了 CRAX + DSNS + CSCC 三大團體,還有一些亂入的好朋友們,總共大約湊了 20 幾人,因此有充足的人力來靠手動走完迷宮,走用 screenshot 截圖把迷宮拚在一起......XD

  • 因此不知道誰先說出:「沒有人工智慧,只有強大的工人智慧」這句話 XD

  • 拼起來會像這樣:

完整的 QR code maze 還可以從這個 連結 看到,由於這題的前半段可以說是與 security 完全無關,只是單純的走迷宮遊戲,因此即使沒有 security 基礎的人也可以參與解題,我個人評價這題是創意、樂趣兼具,又可以在解題中學習 QR code 相關知識的好題目 XD


上一篇
Day26: [Reverse] 能坐著,就不要站著,能躺著,就不要坐著
下一篇
Day28: [Misc] 料理是帶給人們幸福的東西
系列文
CTF 的三十道陰影31

尚未有邦友留言

立即登入留言