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
MiniBox: A Two-Way Sandbox for x86 Native Code(...
Search
Yuma Kurogome
August 07, 2014
Research
26k
1
Share
MiniBox: A Two-Way Sandbox for x86 Native Code(USENIX ATC'14)の紹介
https://atnd.org/events/54159
で話した資料です。
Yuma Kurogome
August 07, 2014
More Decks by Yuma Kurogome
See All by Yuma Kurogome
The Art of De-obfuscation
ntddk
16
28k
死にゆくアンチウイルスへの祈り
ntddk
55
39k
Windows Subsystem for Linux Internals
ntddk
10
3.2k
なぜマルウェア解析は自動化できないのか
ntddk
6
4.4k
Linear Obfuscation to Drive angr Angry
ntddk
4
910
CAPTCHAとボットの共進化
ntddk
2
1.2k
マルウェアを機械学習する前に
ntddk
3
1.7k
Peeling Onions
ntddk
7
3.8k
仮想化技術を用いたマルウェア解析
ntddk
8
27k
Other Decks in Research
See All in Research
Dual Quadric表現を用いた動的物体追跡とRGB-D・IMU制約の密結合によるオドメトリ推定
nanoshimarobot
0
400
多様なデータを許容し学習し続ける模倣学習 / Advanced Imitation Learning for VLA
prinlab
0
210
明日から使える!研究効率化ツール入門
matsui_528
13
7.2k
CyberAgent AI Lab研修 / Social Implementation Anti-Patterns in AI Lab
chck
7
4.6k
LOSの検討(λ Kansai 2026 in Winter)
motopu
0
130
ローテーション別のサイドアウト戦略 ~なぜあのローテは回らないのか?~
vball_panda
0
340
SAKURAONE:An Open Ethernet-based AI HPC System And Its Observed Workload Dynamicsin a Single-Tenant LLM Development Environment
yuukit
1
290
R&Dチームを起ち上げる
shibuiwilliam
1
260
計算情報学研究室(数理情報学第7研究室)2026
tomohirokoana
0
510
AI Agentの精度改善に見るML開発との共通点 / commonalities in accuracy improvements in agentic era
shimacos
6
1.7k
Scalable dynamic origin-destination demand estimation enhanced by high-resolution satellite imagery data
satai
2
240
Φ-Sat-2のAutoEncoderによる情報圧縮系論文
satai
4
740
Featured
See All Featured
ラッコキーワード サービス紹介資料
rakko
1
3.5M
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
230
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
Designing Powerful Visuals for Engaging Learning
tmiket
1
390
Un-Boring Meetings
codingconduct
0
310
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
130
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
130
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
600
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
300
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
1.6k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
23k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
220
Transcript
論文紹介: MiniBox: A Two-Way Sandbox for x86 Native Code[Yanlin Li
et al., USENIX ATC'14] 2014/08/06 システム系論文輪読会 @ntddk ※図表はUSENIXでのスライドより
背景 • PaaS(Platform as a Service) – クラウドコンピューティングサービスが提供するソ フトウェアの構築・実行基盤 •
サンドボックス – アプリケーションからOSを守るために配備されて いる – OSからアプリケーションを守る仕組みがない • ユーザーの資産はOSではなくアプリケーション • サービス提供者の意図しない悪性コードがOSで動いてい たら
関連研究 • NaCl • TrustVisor
NaCl Native Client: A Sandbox for Portable, Untrusted x86 Native
Code[Bennet Yee et al., Oakland'09] • One-way sandbox • Webブラウザ内部でネイティブコードを実行 – x86, ARMに対応 – イメージは「Chromeで動くセキュアなCygwin」 • Software Fault Isolation – 信頼できないコードをフォールトドメインに隔離 • jmpの飛び先を32byte境界に制限 • メモリ読み書き位置の制限
TrustVisor TrustVisor: Efficient TCB Reduction and Attestation[Jonathan M. McCune et
al., OAKLAND'10] • Two-way memory isolation mechanism • Pieces of Application Logic(PAL)という単位 – self-contained security-sensitive codeblocksを守 るのがTrustVisorの目的 • ハイパーバイザを用いてPALを保護 – legacy OS and DMA-capable devicesから – Nested pagesをもとにPALを隔離 – µTPMを用いてPALを検証
関連研究 • NaCl(Google) – ブラウザ内部でネイティブコードを実行するone- way sandbox • TrustVisor(CMU CyLab)
– ハイパーバイザとTPMを用いてOSからsecurity- sensitiveなコードを分割するtwo-way memory isolation mechanism
Isolationの問題点 • アプリケーションのPALのみを保護 • Intel SGX – ハードウェアベースのtwo-way isolation •
TrustVisor – ハイパーバイザベースのtwo-way isolation
Sandboxの問題点 • サンドボックスはnon-isolatedなPALも実行し てしまう – Sensitive PALとnon-sensistive PALのどちらもサン ドボックスに押し込んでしまっている •
開発者はアプリケーションの分割(実質的な移 植)を必要とする
問題点 Iago Attacks: Why the system call API is a
bad untrusted RPC interface[Stephen Checkoway et al, ASPLOS 2013] • 悪意のOSカーネルからサンドボックス内のプ ロセスを攻撃する手法
提案手法 • One-way sandboxとtwo-way memory isolation mechanismの両立 – アプリケーションとOSどちらも保護する •
インターフェイスのセキュア化 • Iago attacksに対するアプリケーションの保護
実装 • TrustVisor v0.2.1 ベース • NaCl • Intel, AMDのマルチコアプロセッサをサポート
• ゲストOSはUbuntu 10.04 • Debugging modeではハイパーバイザによる isolationを無効化する代わりにアプリケーショ ンをgdbでデバッグすることが可能
None
実装 • LDTを辿ってTLSの整合性を保つ • Iago attacks対策としてLibOSによるsensitive callsのisolation – Dynamic memory
management – Thread local storage management – Multi-thread management – Secure file I/O
評価 • Non-sensitive system callsにおけるオー バーヘッド
まとめ • 既存のサンドボックスはPALを分割せずに保護 する点で問題があった • ハイパーバイザと連携してPALを分割した上で サンドボックスでアプリケーションを保護する 手法が提案された • NaClとGolangの連携が推し進められているの
で、そのうちGAEに導入されるかも