圖片來源: 

iThome

在2015年12月5日~6日,臺灣HITCON團隊首度在臺北現場舉辦一場國際級的HITCON CTF搶旗攻防賽決賽,全世界前十名資安團隊都到場參加比賽,參賽陣容堅強,也逼的HITCON團隊必須嚴陣以待。

要怎麼讓這些世界級的駭客高手「享受」在臺灣舉辦的CTF決賽,HITCON CTF領隊李倫銓認為,要能夠出幾題兼具有深度、有水準的競賽題目是重要關鍵,但是,包括系統平臺和現場比賽網路環境的穩定,則是讓比賽可以順利進行,如空氣般不可或缺的必需品。

HITCON在2014年拿到了DEF CON CTF第二名後,就有人認為臺灣應該也要辦一場國際級的駭客競賽,當時李倫銓心理根本認為不可能,因為光想到包括主辦團隊、活動資源、以及國內隊伍等,根本都還沒準備好,要想主辦一場世界級的駭客競賽,甚至成為DEF CON CTF的種子賽事,還言之過早。

在很多人一直默默的努力下,先是臺大、交大、臺科大開課培養新血,許多先進們四處奔走找不同的資源,包括政府資源在內,也有人跑去申請種子賽事,加上HITCON團隊每一個人的堅持,他說:「奇蹟最後終於發生了。」

HITCON對於線上初賽倒是有經驗,但決賽這種現場攻防賽(Attack and Defense)不僅沒經驗,加上通過初賽前十名的世界列強都說要到臺北現場打決賽,李倫銓表示,確定舉辦HITCON  CTF決賽後,才是真正壓力的到來,更何況,辦比賽不是打比賽,完全無法半途而廢,今天能夠順利圓滿達成任務,是許多人辛苦堅持下的成果。

舉辦世界級CTF比賽,設計好題目難度很高

李倫銓表示,舉辦這種世界級資安攻防賽,臺灣團隊面臨的挑戰大概可以分成4個面向,包括:題目設計、網路規畫、競賽平臺和現場導覽。首先,題目的好壞決定這場比賽的口碑與評價,因此,此次的4個服務則由4位高手分別制定,從事後的回饋中也聽到,許多國外選手對於此次臺灣HITCON設計的題目都極度好評。

要設計出一題具備國際水準的資安競賽題目,李倫銓認為這是一項高難度的任務,而這次擔任出題者的成員們,本身就是許多場國際CTF比賽的常客,經由累積許多國際競賽的經驗,加上平常工作或者是做研究時獲得的資安攻防心得累積,才能設計出如此精采的題目。「如果沒有平日一步一腳印的研究和累積,絕對沒有辦法臨時抱佛腳,就可以想出如此精采的題目。」他說。

此次,代表臺交駭客攻防賽冠軍隊伍:<(_ _)> shik身分,參加HITCON CTF決賽的交大資工所博士生陳仲寬,也十分讚揚臺灣HITCON CTF決賽出題者,他說,從題目設計到漏洞的安排,彼此之間環環相扣卻又難以第一時間就察覺,極具設計巧思。

HITCON CTF決賽的4個服務分別命名為:Hitree、Webful、Otherworld和Ghostparty,Webful是個Web Service,就像是一般網站,裡面包了許多不同的系統;Hitree、Otherworld和Ghostparty則是一般的網路程式,像是一般的郵件伺服器、FTP伺服器或是域名伺服器等,都會比較貼近這類。

陳仲寬認為,從題目部分看得出來精心設計過的,他以解Webful這道題目為例,出題者在每個不同的框架下都埋了不同的漏洞,至少有十多個漏洞,要全部找出來或修補全部漏洞,就需要懂全部的框架;如果只懂其中一些,還是可以找出部分漏洞來攻擊。由於團隊成員只對PHP比較有經驗,其餘的部份就得靠從攻擊流量中分析封包並重現(Replay)後,設法用程式分析去確認這個漏洞是否可以使用,最後再做一些調整。

而在程式碼(Binary)分析的題目中,陳仲寬指出,這次Hitree服務中有一個現在比較少見的RISC-V指令集架構,因為與一般x86伺服器的指令集不同,一般的處理器看不懂RISC-V的程式,需要利用模擬器才能夠執行相關的指令。

他表示,出題者也將一些平常熟悉的軟體漏洞技術和RISC-V的平臺組合起來,透過解題,就可以學習如何在RISC-V下面進行軟體漏洞分析。而在這個架構下,幾乎所有熟悉的工具都無用武之處,因此全部依賴參賽者的基礎能力。陳仲寬說:「韓國隊Cykorkinesis在種種限制下還能在短時間開發出攻擊程式(Exploit),這樣的能力讓人非常驚訝。」

 

為了讓臺灣民眾更了解CTF駭客攻防賽的比賽規則,主辦單位推出由HITCON Girls負責的CTF導覽活動,除了說明CTF歷史和得分規則,也介紹來臺參賽隊伍的堅強背景。

 

網路與攻防平臺的穩定,奠定比賽順利進行的關鍵

要能夠維持比賽從頭到尾的流暢性,李倫銓認為,比賽現場的網路規畫與穩定,則攸關這場比賽能否順利進行到最後。因此,HITCON找來社群中口碑最優的網路組來做整體網路規畫與布線,仰賴他們的專業與除錯能力,則讓出題團隊省去很多煩惱,他甚至可以說:「沒有網路組,就算題目出得再好也沒用。」因為比賽根本無法繼續下去。

郭杰穎(網路暱稱Mouse)此次負責有線網路的舖設,這方面問題較少,只要可以事前規畫,落實現場場地活動需求,對外連網網路品質穩定即可。

邱柏森則負責網路設備的設定與競賽系統的維運,提供出題團隊操作,也負責在比賽當天確保網路和競賽系統可以正常運作。他表示,負責比賽環境基礎建設的穩定,包含伺服器維運及網路架構,為了比賽公平,也必須做許多很特殊的保護,這部分都是平常正常環境或工作裡所不會遇到的。

他也說,這次在資源不是很充沛的狀態下舉辦這種大型比賽,在在都考驗著各層面執行者的功力,不諱言有許多燃燒人脈的狀況,這些都是未來有機會在辦活動時,可以盡早處理進行的。由於時間緊迫,出題組成員平常也都還有工作,彼此能夠討論的時間有限,他說,幾乎要在很短的溝通時間下,迅速理解出題成員需求,並進行功能分析及實作,完成出題組的要求,也是一次難得的經驗。

至於競賽平臺的規畫,李倫銓表示,這是臺灣第一次設計世界級的攻防平臺,因為攻擊和防守之間是有標準賽制,以及得分與扣分的規則,平臺運作一定不能出錯,不然,這也會影響臺灣形象。負責設計平臺組的成員幾乎都是上班族,每周僅能趁著下班與周末來趕工,時間壓力加上不能出錯的壓力,使得平臺組成員承受極大壓力。

平臺組成員之一Jeffxx表示,這次系統是拿2015年年初臺交駭客攻防賽所使用的平臺重建,因為這次參賽陣容,實力過於堅強,他們很擔心這個平臺撐不住這些隊伍的猛烈攻擊,不論是活動開始前一天,一直到活動現場,都緊盯系統的穩定度,不敢掉以輕心。

Jeffxx表示,在比賽前一天晚上做系統彩排時,就發現有權限設計的漏洞和顯示的問題,當天熬夜修改系統到早上4點多;而在比賽第一天,每5分鐘一個比賽回合的系統更新時間,則從一開始的1.5秒可以完成,到後來慢慢變成得要花5秒才能完成,因此,在第一天晚上,又得再緊急做各種系統優化,才能成功撐住比賽第二天最後一小時,每2分鐘一個比賽回合的Turbo Mode(加速)。

「其實,一開始是希望可以將計分板也開放給參賽者的,但是一直到周六凌晨四點還是修不掉 Rails-websocket 讓所有人都可以廣播訊息的問題,不得不忍痛放棄開放給參賽者。」Jeffxx說,至於 原本做了許多跟參賽者互動的功能,最後也只能在大螢幕上秀給大家看。

另外,如果仔細看計分板的Log(登錄檔)就會發現,有時候會有隊伍同時間成功攻擊同一個隊伍多次,Jeffxx解釋,這是因為在寫入資料庫時,雖然有先檢查本回合有沒有攻擊成功的記錄,但檢查完到真正存進資料庫時沒有鎖住,如果隊伍回送攻擊成功的資料太快,就會發生Race Condition(競爭條件)的狀況。

這就表示,有兩個訊號彼此競爭而會影響最後的輸出。因此,他說,在預期每秒會有幾百次提交獲得旗幟(Flag)請求的情況下,他選擇讓這種同時有兩個訊號彼此競爭的情況發生,最後回合統計時,再將這些重複的記錄刪除。

讓國外CTF參賽者賓至如歸,讓臺灣觀眾近距離了解CTF

臺灣HITCON舉辦的HITCON CTF決賽獲得許多國際參賽者的肯定與支持,擔任這次活動最主要的後勤支援和活動執行角色一職的就是秘書長李尚韋(網路暱稱Turkey)。她先前跟臺灣HITCON團隊到美國DEF CON打CTF決賽時,也扮演後勤支援主力,這次回頭扮演主辦者時,更設身處地希望讓來臺灣參賽的選手,不僅可以享受一場夠水準的資安競技,也能夠有機會體會到「臺灣最美的風景其實是人」。

李尚韋想到,到美國拉斯維加斯比賽時,所有參賽選手連吃飯都沒時間,甚至他們還得偷偷摸摸的把便當帶進會場中給選手食用,因此,在HITCON CTF決賽會場。她特別重視要提供豐盛且源源不絕的食物,當然還有可樂和零食,是她希望讓選手不用擔心餓肚子、專心比賽的貼心。

再者,這次參賽者幾乎是世界上前十強的資安團隊,怎麼讓臺灣的民眾也有機會認識這些團隊以及更了解什麼是CTF搶旗攻防賽,李尚韋則規畫了HITCON CTF導覽和 HITCON CTF Conference來滿足不同層次的需求。

由於多數人沒有打CTF比賽的經驗,或者只有CTF初賽的經驗,為了更深入了解CTF是什麼,她說,兩天比賽現場則安排了將近10場的導覽解說,主要在說明CTF競賽常見的型式、攻守的得分方式、攻擊流程以及CTF競賽和真實世界的比較等,也會簡介此次來臺參賽國外隊伍的背景,以及這些隊伍的國家如何培養他們的駭客團隊的方式等等,讓對資安有興趣的朋友都可以透過導覽解說更了解CTF。

為了深化CTF,她表示,團隊也規畫了HITCON Conference,邀請專業的講師和教授來談資安人才培育、資安產業發展、交大CTF團隊分享比賽經驗、HITCON Girls惡意程式分析團隊講解惡意程式分析基本的知識等,讓現場參觀的人除了看比賽外,還可以聆聽專家的經驗分享,更有助於未來資安學習方向等。

李尚韋則期待,臺灣推廣資安風氣並不是曇花一現,未來可以繼續維持下去,也希望臺灣有更多優秀隊伍可以站上世界舞臺發光發熱。

 

Shellphish戰隊隊長Antonio Bianchi表示,最好的駭客技能,就是要在最短時間內,快速學會新技能,就像天才駭客Geohot從原本駭電腦到改行駭車子的跨界挑戰,就是一個最佳實例。

 

最好的駭客技能,就是能夠快速學習其他的新技能

曾經在2015年8月臺灣駭客年會企業場來臺灣演講的Shellphish團隊成員,不僅是資深的CTF戰隊,還在念聖塔芭芭拉大學念博士班的隊長Antonio Bianchi,也是資深的CTF參賽者。

Antonio Bianchi的研究主要專注在系統安全上,即便每天的生活沒有直接和CTF相關,都還是在做各式各樣的資安研究;他說,對Shellphish成員而言,每周至少聚會一次,一起討論近期參加哪些CTF比賽而解了哪些難題,互相砥礪。

面對天才駭客Geohot從原本駭電腦到改行駭車子,Antonio Bianchi相信,對所有CTF參賽者而言,最好的駭客技能,就是要想辦法磨練出,可以在最短時間內,快速學習其他新技能的能力,Geohot的跨界本身就是一個最佳實例,這也是對其他CTF參賽者的建議。

 

 各國駭客競逐CTF爭全球排名 

CTF的世界盃比賽就是全球最大駭客年會DEF CON所舉辦的CTF決賽,隨著各國越來越重視這種CTF比賽,HITCON CTF領隊李倫銓表示,從2011年開始,俄國強隊More Smoked Leet Chicken便架設了一個提供全球CTF比賽資訊的網站 CTFTime,讓許多不得其門而入的人有獲取比賽資訊的管道,光是2015年全年度,世界上大大小小的 CTF 共計超過 50 個。

他進一步解釋,CTFTime也設計了結合全球主要 CTF 賽的世界排名積分制度,不同比賽的則按照規模、名氣、題目難度、參加人數、舉辦方實力以及是否提供獎金等來進行不同權重的積分公式設計。這跟職業運動比賽的全球積分排名有異曲同工之妙。

若以DEF CON CTF為例,獲得初賽冠軍隊伍可以獲得160分;奪得其他較小型或首次舉辦的CTF冠軍只能獲得20分,透過這樣的排名機制,也使各國CTF戰隊的即時戰力,能有相對客觀的比較,不再只是靠DEF CON決賽的名次來評估實力,各地隊伍也更願意積極地參與各種比賽。

即將在今年8月舉辦的DEF CON CTF決賽,除了2015年DEF CON CTF冠軍是當然參賽隊伍外,由DEF CON CTF主辦單位舉辦的線上解題類型的初賽入圍的前十名隊伍外,其餘的參賽者都是世界各地舉辦種子賽事的冠軍隊伍。另外,在2015年DEF CON駭客年會上決定,由美國國防部DARPA舉辦的Cyber Grand Challenge(CGC)這一場機器駭客比賽的冠軍,也會加入DEF CON CTF決賽和其餘入圍隊伍一起比賽。

臺灣HITCON CTF初賽在2015年10月17日舉行,是全球第一個針對2016年DEF CON CTF比賽的種子賽事,決賽則在2015年12月6日結束,由韓國隊Cykorkinesis取得參賽代表權。李倫銓表示,從2015年韓國隊DEFKOR贏得DEF CON CTF冠軍,代表韓國資安菁英人才Best of The Best(簡稱BoB)計畫,已經獲得顯著成效,今年又有另外韓國隊Cykorkinesis入圍DEF CON CTF決賽,想必又是一番激烈競爭。

李倫銓表示,有了第一次舉辦HITCON CTF比賽的成功經驗,接下來更困難的挑戰在於,如何年年都維持如此的高水準比賽。他也說,目前有部分成員還在休息,有些已經又開始四處打CTF比賽了,這也是累積經驗作為未來設計新題目的基礎功夫,而第一次計分板採用星際大戰(Star War)加上光劍的概念,獲得一致好評,到今年舉辦時,可以考慮採用VR(虛擬實境)技術做創新。


Advertisement

更多 iThome相關內容