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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Inndy
September 29, 2018
Technology
870
2
Share
HackmeCTF 平台背後的心酸血淚史
TDOH Conf 2018
Inndy
September 29, 2018
More Decks by Inndy
See All by Inndy
工程師一定要懂的 Text Encoding
inndy
1
760
資訊安全:麻瓜的黑魔法防禦術
inndy
3
3.1k
COSCUP 2018 Lightning Talk - 審稿好難,所以我們來寫程式吧
inndy
0
500
逆向工程:從入門到放棄
inndy
7
3.6k
HITCON 2017 Zeroday 發表會
inndy
0
1.4k
No More Crypto Fails
inndy
34
8.3k
你再共用密碼啊
inndy
1
790
CTF From Zero To One
inndy
5
5.3k
逆向工程基礎
inndy
4
1.5k
Other Decks in Technology
See All in Technology
2026-05-14 要件定義からソース管理まで!IBM Bob基礎ハンズオン
yutanonaka
0
140
Oracle AI Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
6
1.4k
How to learn AWS Well-Architected with AWS BuilderCards: Security Edition
coosuke
PRO
0
130
自動テストだけで リリース判断できるチームへ - 鍵はテストの量ではなくリリース判断基準の再設計にあった / Redesigning Release Criteria for Lightweight Releases
ewa
7
3.7k
AI 時代の Platform Engineering
recruitengineers
PRO
1
170
全社統制を維持しながら現場負担をどう減らすか〜プラットフォームチームとセキュリティチームで進めたSecurity Hub活用によるAWS統制の見直し〜/secjaws-security-hub-custom-insights
mhrtech
1
420
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
8k
そのSLO 99.9%、本当に必要ですか? 〜優先度付きSLOによる責任共有の設計思想〜 / Is that 99.9% SLO really necessary? Design philosophy of shared responsibility through prioritized SLOs
vtryo
0
610
生成AI時代に信頼性をどう保ち続けるか - Policy as Code の実践
akitok_
1
220
Vision Banana: Image Generators are Generalist Vision Learners
kzykmyzw
0
360
要件定義の精度を高めるための型と生成AIの活用 / Using Types and Generative AI to Improve the Accuracy of Requirements Definition
haru860
0
320
Sociotechnical Architecture Reviews: Understanding Teams, not just Artefacts
ewolff
1
170
Featured
See All Featured
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
190
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
800
Building the Perfect Custom Keyboard
takai
2
750
Odyssey Design
rkendrick25
PRO
2
610
Rails Girls Zürich Keynote
gr2m
96
14k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
510
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Agile that works and the tools we love
rasmusluckow
331
21k
Why Our Code Smells
bkeepers
PRO
340
58k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
180
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
180
The agentic SEO stack - context over prompts
schlessera
0
770
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