[論文レビュー] Reins to the Cloud: Compromising Cloud Systems via the Data Plane
本論文は、仮想スイッチ、特にOpen vSwitch (OvS) が、誤ったセキュリティ仮定とプロトコルパーサーの弱みにより、データプレーン経由でリモートコード実行が可能であることを示している。著者らはOvSのコードベースのわずか2%をファジングするだけで、最小限のリソースで100秒未塔にクラウドシステム、特にOpenStackを完全に侵害する攻撃を実現した。これは、低能力な攻撃者ですら、データプレーンを介して、全体のクラウドインfraを乗っ取れる可能性があることを示している。
Virtual switches have become popular among cloud operating systems to interconnect virtual machines in a more flexible manner. However, this paper demonstrates that virtual switches introduce new attack surfaces in cloud setups, whose effects can be disastrous. Our analysis shows that these vulnerabilities are caused by: (1) inappropriate security assumptions (privileged virtual switch execution in kernel and user space), (2) the logical centralization of such networks (e.g., OpenStack or SDN), (3) the presence of bi-directional communication channels between data plane systems and the centralized controller, and (4) non-standard protocol parsers. Our work highlights the need to accommodate the data plane(s) in our threat models. In particular, it forces us to revisit today's assumption that the data plane can only be compromised by a sophisticated attacker: we show that compromising the data plane of modern computer networks can actually be performed by a very simple attacker with limited resources only and at low cost (i.e., at the cost of renting a virtual machine in the Cloud). As a case study, we fuzzed only 2\% of the code-base of a production quality virtual switch's packet processor (namely OvS), identifying serious vulnerabilities leading to unauthenticated remote code execution. In particular, we present the "rein worm" which allows us to fully compromise test-setups in less than 100 seconds. We also evaluate the performance overhead of existing mitigations such as ASLR, PIEs, and unconditional stack canaries on OvS. We find that while applying these countermeasures in kernel-space incurs a significant overhead, in user-space the performance overhead is negligible.
研究の動機と目的
- 仮想スイッチがクラウドおよびSDN環境にもたらすセキュリティリスク、特にデータプレーンにおけるリスクを調査すること。
- データプレーンを侵害できるのは高度な攻撃者に限るとの一般的な仮定に挑戦すること。
- Open vSwitch (OvS) のような広く使われている仮想スイッチにおける脆弱性の実現可能性を評価すること。
- ユーザー空間とカーネル空間における一般的なソフトウェアハードニング技術(例:ASLR、PIE、スタックキャニオン)のパフォーマンスオーバーヘッドを評価すること。
- クラウドセキュリティにおける脅威モデルを再考し、データプレーンをクラウドセキュリティにおける第一級の攻撃表面として位置づけること。
提案手法
- 著者らは、不適切な特権分離、SDNにおける論理的集中化、双方向のコントローラ-スイッチ通信、非標準のプロトコルパーサーの4つの要因に注目した脅威モデル分析を実施した。
- Open vSwitch (OvS) のパケット処理部に対してブラックボックスファジング技術を適用し、コードベースのわずか2%を標的として脆弱性を同定した。
- OvS上で認証なしのリモートコード実行を達成するためのカスタムエクスプロイト「rein worm」を開発した。これにより、クラウドテストベッドの完全な侵害が可能になった。
- ユーザー空間とカーネル空間の両環境で、OvSに対してASLR、PIE、および無条件スタックキャニオンといったセキュリティ対策のパフォーマンス影響を実験的に評価した。
- 実世界のクラウド展開(OpenStack)を用いて、エクスプロイトの有効性を検証し、システムの可用性および隔離性への影響を評価した。
実験結果
リサーチクエスチョン
- RQ1低リソースの攻撃者が、仮想スイッチのデータプレーンにのみ標的を絶えることで、クラウドシステムを侵害できるか?
- RQ2Open vSwitch のような仮想スイッチに、こうした攻撃を可能にする主なアーキテクチャ的・実装的欠陥は何か?
- RQ3一般的なソフトウェアハードニング技術は、パフォーマンスオーバーヘッドを最小限に抑えつつ、仮想スイッチのデータプレーンにおけるセキュリティを向上させることができるか?
- RQ4SDNの論理的集中化と双方向のコントローラ通信は、データプレーンの攻撃表面をどの程度拡大させるか?
- RQ5プロダクショングレードの仮想スイッチのわずか一部のコードに対してファジングを適用することで、完全なシステム侵害が可能になるか?
主な発見
- わずか100秒未塔に、低リソースの攻撃者がOvSのデータプレーンにおける脆弱性を悪用することで、完全なOpenStackクラウド環境を侵害できる。
- OvSコードベースのわずか2%をファジングするだけで、認証なしのリモートコード実行を引き起こす深刻な脆弱性が特定され、データプレーン部品の高いエクスプロイタビリティが示された。
- 「rein worm」エクスプロイトは、プロトコルパーサー内のバッファオーバーフローを利用して隔離メカニズムを回避し、完全なシステム乗っ取りを達成した。
- ASLR、PIE、スタックキャニオンといったソフトウェアハードニング技術は、ユーザー空間に適用した場合、パフォーマンスオーバーヘッドが著しく小さく、生産環境での利用が可能である。
- 一方、カーネル空間に同様の対策を適用した場合、顕著なパフォーマンス劣化が生じ、適切な展開戦略の検討が不可欠であることが明らかになった。
- 本研究は、現在の脅威モデルがデータプレーンを十分に考慮していないこと、および現代のクラウドアーキテクチャにおいて仮想スイッチが重要な未保護の攻撃表面であることを明らかにした。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。