Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
HackmeCTF 平台背後的心酸血淚史
Search
Inndy
September 29, 2018
Technology
900
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
HackmeCTF 平台背後的心酸血淚史
TDOH Conf 2018
Inndy
September 29, 2018
More Decks by Inndy
See All by Inndy
工程師一定要懂的 Text Encoding
inndy
1
810
資訊安全:麻瓜的黑魔法防禦術
inndy
3
3.1k
COSCUP 2018 Lightning Talk - 審稿好難,所以我們來寫程式吧
inndy
0
510
逆向工程:從入門到放棄
inndy
7
3.6k
HITCON 2017 Zeroday 發表會
inndy
0
1.4k
No More Crypto Fails
inndy
34
8.4k
你再共用密碼啊
inndy
1
800
CTF From Zero To One
inndy
5
5.3k
逆向工程基礎
inndy
4
1.5k
Other Decks in Technology
See All in Technology
多層防御と最⼩権限で実現する、安全なAIエージェント設計パターン
lycorptech_jp
PRO
1
280
なぜJMBC(Japan MCP Business Community)? MCPってどう活用できるの?
cdataj
0
110
GoCon2026 - Open Source, Open World
sanposhiho
4
3.5k
Snowflakeで実現する全社横断の顧客の声(VOC)分析・活用基盤@Snowflake World Tour Tokyo 2026
yuto16
0
200
幾何アルゴリズムで なめらかなピン操作を / iOSDC Japan 2026 / smoothpin
kazumanagano
0
310
DEFCON34-Write-up_HYCu-MYCu
daikiokazaki
0
150
Deployment の 先にある AI Agent 基盤 - kagent vNext、Agent Substrate、Hermes から読み解く Agent Runtime の現在地 / k8s-matsuri-2-ai-agent-platform-amsy810
masayaaoyama
3
290
Snowflakeのコスト最適化を支えるアーキテクチャ設計
ktatsuya
1
1.5k
omasushiというライブラリを作った
polidog
PRO
0
220
20260912_スクラムにジェネラリストは必要か
ryugen04
0
390
コスト最適化の「めんどくさい」を AWS FinOps Agent でチョット楽にする
classmethod_kaz
0
330
株式会社シーエーシー エンジニア向け会社紹介資料
cac
0
57k
Featured
See All Featured
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
220
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
370
Context Engineering - Making Every Token Count
addyosmani
9
1.1k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
570
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
490
Optimizing for Happiness
mojombo
378
71k
Code Reviewing Like a Champion
maltzj
528
40k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
350
Building Applications with DynamoDB
mza
96
7.2k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Odyssey Design
rkendrick25
PRO
2
800
ラッコキーワード サービス紹介資料
rakko
1
4.8M
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