Webmin においてソフトウェアアップデート機能での文字列処理の不備に起因する OS コマンドインジェクションの脆弱性(Scan Tech Report) | ScanNetSecurity
2024.03.29(金)

Webmin においてソフトウェアアップデート機能での文字列処理の不備に起因する OS コマンドインジェクションの脆弱性(Scan Tech Report)

2022 年 7 月に、サーバ管理ツールである Webmin に、遠隔からの管理者権限での任意のコードが実行可能となる脆弱性が公開されています。

脆弱性と脅威 エクスプロイト
◆概要
 2022 年 7 月に、サーバ管理ツールである Webmin に、遠隔からの管理者権限での任意のコードが実行可能となる脆弱性が公開されています。攻撃者が脆弱性の悪用に成功した場合は、脆弱な Webmin が稼働しているサーバへの管理者権限での侵入が可能となります。ソフトウェアのアップデートにより対策してください。

◆分析者コメント
 今回公開された脆弱性は、単純な OS コマンドインジェクションが可能となる脆弱性ですが、ソフトウェアをアップデートする権限を持つアカウントでの管理用コンソールへのログインが前提条件です。「Software Package Updates」という権限を持つアカウントの認証情報を強化するか、必要なければアカウントから権限をはく奪することでも、当該脆弱性の影響を受ける危険性を低減できます。

◆深刻度(CVSS)
9.8
https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator?name=CVE-2022-36446&vector=AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H&version=3.1&source=NIST

◆影響を受けるソフトウェア
 Webmin のバージョン 1.997 未満が当該脆弱性の影響を受けると報告されています。

◆解説
 Linux サーバ管理ツールである Webmin に、入力された文字列のエスケープ処理の不備に起因する脆弱性が報告されています。

 脆弱性は、Webmin がインストールされた Linux サーバのソフトウェアを遠隔からアップデートするための機能に存在します。脆弱性が存在する Webmin では、ソフトウェアアップデートを要求する文字列のエスケープ処理をしていないため、OS コマンドインジェクションによる root 権限での遠隔コード実行が可能です。脆弱性の原因であるコード apt-lib.pl の修正差分を GitHub から確認すると、脆弱なバージョンでは、エスケープ処理された文字列を格納している変数 $update に含まれている文字の「\」を除去する処理があるためエスケープ処理が解除されてしまっていますが、「\」を除去する処理を削除して脆弱性に対策していることが確認できます。

  + local $uicmd = "$apt_get_command -y ".($force ? " -f" : "")." install $update";
   $update = join(" ", map { quotemeta($_) } split(/\s+/, $update));
  - $update =~ s/\\(-)|\\(.)/$1$2/g;
   local $cmd = "$apt_get_command -y ".($force ? " -f" : "")." install $update";


◆対策
 Webmin のバージョンを 1.997 およびそれよりも新しいバージョンに更新してください。また、「Software Package Updates」権限を持つアカウントの認証情報を強化することで脆弱性の影響を低減できます。

◆関連情報
[1] Webmin 公式 GitHub
  https://github.com/webmin/webmin/commit/13f7bf9621a82d93f1e9dbd838d1e22020221bde
[2] Medium
  https://medium.com/@emirpolat/cve-2022-36446-webmin-1-997-7a9225af3165
[3] National Vulnerability Database (NVD)
  https://nvd.nist.gov/vuln/detail/CVE-2022-36446
[4] CVE Mitre
  https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-36446

◆エクスプロイト
 以下の Web サイトにて、当該脆弱性を悪用して対象ホストへの侵入を試みる Metasploit 用のエクスプロイトコードが公開されています。

  GitHub - rapid7/metasploit-framework
  https://github.com/rapid7/metasploit-framework/blob/master/modules/exploits/linux/http/webmin_package_updates_rce.rb

#--- で始まる行は筆者コメントです。

《株式会社ラック デジタルペンテスト部》

関連記事

Scan PREMIUM 会員限定記事

もっと見る

Scan PREMIUM 会員限定記事特集をもっと見る

カテゴリ別新着記事

「経理」「営業」「企画」「プログラミング」「デザイン」と並ぶ、事業で成功するためのビジネスセンスが「セキュリティ」
「経理」「営業」「企画」「プログラミング」「デザイン」と並ぶ、事業で成功するためのビジネスセンスが「セキュリティ」

ページ右上「ユーザー登録」から会員登録すれば会員限定記事を閲覧できます。毎週月曜の朝、先週一週間のセキュリティ動向を総括しふりかえるメルマガをお届け。(写真:ScanNetSecurity 名誉編集長 りく)

×