Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
HackmeCTF 平台背後的心酸血淚史
Search
Inndy
September 29, 2018
Technology
2
830
HackmeCTF 平台背後的心酸血淚史
TDOH Conf 2018
Inndy
September 29, 2018
Tweet
Share
More Decks by Inndy
See All by Inndy
工程師一定要懂的 Text Encoding
inndy
1
700
資訊安全:麻瓜的黑魔法防禦術
inndy
3
3k
COSCUP 2018 Lightning Talk - 審稿好難,所以我們來寫程式吧
inndy
0
450
逆向工程:從入門到放棄
inndy
7
3.6k
HITCON 2017 Zeroday 發表會
inndy
0
1.3k
No More Crypto Fails
inndy
33
8.1k
你再共用密碼啊
inndy
1
760
CTF From Zero To One
inndy
5
5.1k
逆向工程基礎
inndy
4
1.4k
Other Decks in Technology
See All in Technology
What is BigQuery?
aizack_harks
0
120
Green Tea Garbage Collector の今
zchee
PRO
2
360
extension 現場で使えるXcodeショートカット一覧
ktombow
0
110
PLaMoの事後学習を支える技術 / PFN LLMセミナー
pfn
PRO
9
3.4k
コンテキストエンジニアリングとは? 考え方と応用方法
findy_eventslides
4
830
生成AIを活用したZennの取り組み事例
ryosukeigarashi
0
180
非エンジニアのあなたもできる&もうやってる!コンテキストエンジニアリング
findy_eventslides
3
850
kaigi_on_rails_2025_設計.pdf
nay3
8
4.2k
Go Conference 2025: GoのinterfaceとGenericsの内部構造と進化 / Go type system internals
ryokotmng
3
540
SoccerNet GSRの紹介と技術応用:選手視点映像を提供するサッカー作戦盤ツール
mixi_engineers
PRO
1
130
C# 14 / .NET 10 の新機能 (RC 1 時点)
nenonaninu
1
1.3k
From Prompt to Product @ How to Web 2025, Bucharest, Romania
janwerner
0
110
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
431
66k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6.1k
Large-scale JavaScript Application Architecture
addyosmani
513
110k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
114
20k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
For a Future-Friendly Web
brad_frost
180
9.9k
Mobile First: as difficult as doing things right
swwweet
224
9.9k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Designing for Performance
lara
610
69k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Transcript
HACKMECTF 平台背後的⼼酸⾎淚史 ⽤⾃⼰的實體機器架站真的不好玩
HACKMECTF 平台背後的⼼酸⾎淚史 # WHOAMI ▸ 我是 Inndy,也可以叫我⽊棍 ▸ 講過 SITCON
/ HITCON / TDOH Conf ▸ ⾦盾獎 2016 1st / 2017 2nd ▸ ⼈⽣⽬標是成為興趣使然的 Security Master
None
平台介紹
HACKMECTF 平台背後的⼼酸⾎淚史 HACKMECTF ▸ 2016/6 上線,在⾼鐵上趕出來的 scoreboard。當時為了 AIS3 計畫,來⾼雄分享經驗,幫忙打廣告。 ▸
跟⽼師要了 Lab ⼀台機器,就開始了這個平台
▸ 有各種類型的題⽬ HACKMECTF 平台背後的⼼酸⾎淚史 HACKMECTF
▸ 到⽬前為⽌有 1105 ⼈登⼊ ▸ 8239 次有效的 submit ▸ 來⾃
2361 不同的 IP ▸ All Kill 分數 9900 ▸ 計分版系統收到了1499129 個 request HACKMECTF 平台背後的⼼酸⾎淚史 HACKMECTF
HACKMECTF 平台背後的⼼酸⾎淚史 HACKMECTF ▸ 原本的硬碟是跟同學借⽤的 1TB DeadGate SeaGate ▸ ⽤了不知道幾年了,就在
2017/7/29,硬碟掛了... G___G ▸ 謝謝 OSS Lab 提供資料救援協助,VM image 沒有壞掉 ▸ 2017/8/3 資料還原完成,換上 SSD,順便加了⼀條 DRAM
HACKMECTF 平台背後的⼼酸⾎淚史 HACKMECTF ▸ 前幾天學校⾼壓電設備維護,全校斷電 ▸ 140.118.0.0/16 直接從網路上消失 ▸ ntust.edu.tw
DNS 也消失 ▸ 我的機器就這樣跟著 offline T____T
HACKMECTF 平台背後的⼼酸⾎淚史 HACKMECTF ▸ ⾃⼰管理實體機器,放在 Lab 這件事情是很可怕的 ▸ 因為各種天災⼈禍...
技術架構
Host: Ubuntu 18.04 qemu-kvm: Ubuntu 18.04 nginx / php-fpm nginx
(SSL/TLS) proxy_pass to VM xinetd as TCP proxy xinetd: docker exec docker: web docker: pwnable
HACKMECTF 平台背後的⼼酸⾎淚史 INFRASTRUCTURE ▸ ⼀開始 Host 是 Debian jessie,後來⽤ Ubuntu
16.04,現在 已經升級 Ubuntu 18.04 ▸ HackmeCTF 放在 qemu-kvm 內,OS ⽤ Ubuntu ▸ Host 的 nginx 負責 SSL/TLS,proxy_pass 給 VM ▸ Pwnable 之類,需要 TCP 直接連線的題⽬⽤ xinetd pass 給 VM
HACKMECTF 平台背後的⼼酸⾎淚史 INFRASTRUCTURE ▸ 能夠 arbitrary code execution 的題⽬都關進 docker
▸ docker 不是設計來當作 sandbox 的,有機會被 break out ▸ 部分 web 也⼀起關進去,在裡⾯跑 nginx + php-fpm ▸ Pwn 的部分,把 docker network 關掉,⽤ xinetd + docker exec ⾛ stdio
Q&A