Docker release_agent cgroups escape
WhiteIntel は、ダークウェブを活用した検索エンジンで、企業やその顧客が盗難マルウェアによって侵害されていないかをチェックする無料機能を提供しています。
WhiteIntelの主な目標は、情報窃取マルウェアによるアカウント乗っ取りやランサムウェア攻撃に対抗することです。
彼らのウェブサイトをチェックし、無料でエンジンを試すことができます:
詳細については、 元のブログ投稿** を参照してください。これは要約です:
オリジナル PoC:
証明のコンセプト(PoC)は、release_agent
ファイルを作成し、その呼び出しをトリガーしてコンテナホストで任意のコマンドを実行する方法を示しています。以下は、関連する手順の概要です:
環境の準備:
/tmp/cgrp
ディレクトリを作成して、cgroupのマウントポイントとして使用します。RDMA cgroupコントローラをこのディレクトリにマウントします。RDMAコントローラが存在しない場合は、代替として
memory
cgroupコントローラを使用することが推奨されています。
子Cgroupの設定:
マウントされたCgroupディレクトリ内に名前が"x"の子Cgroupが作成されます。
"x" Cgroupの通知を有効にするために、そのnotify_on_releaseファイルに1を書き込みます。
リリースエージェントの設定:
ホスト上のコンテナのパスは、/etc/mtab ファイルから取得されます。
次に、cgroupの release_agent ファイルが取得したホストパスにある /cmd というスクリプトを実行するように設定されます。
/cmdスクリプトの作成と設定:
/cmdスクリプトはコンテナ内で作成され、ps auxを実行し、出力をコンテナ内の/outputというファイルにリダイレクトするように設定されます。ホスト上の/outputのフルパスが指定されます。
攻撃のトリガー:
"x"の子cgroup内でプロセスが開始され、すぐに終了します。
これにより
release_agent
(/cmdスクリプト)がトリガーされ、ホスト上でps auxを実行し、出力をコンテナ内の/outputに書き込みます。
WhiteIntelは、ダークウェブを活用した検索エンジンで、企業や顧客がスティーラーマルウェアによって侵害されていないかをチェックする無料の機能を提供しています。
WhiteIntelの主な目標は、情報窃取マルウェアによるアカウント乗っ取りやランサムウェア攻撃と戦うことです。
彼らのウェブサイトをチェックし、無料でエンジンを試すことができます:
Last updated