
ZyxelのCGIプログラムにおけるOSコマンドインジェクションの脆弱性
ZyxelのCGIプログラムにおけるOSコマンドインジェクションの脆弱性
2022年4月13日に初めて発見されたこの脆弱性は、Zyxelファイアウォール製品でリモートコード実行を引き起こしました。CVSSスコア9.8のこの重大な脆弱性は、出現から15日後にZyxelがリリースしたアップデートによってブロックされました。この過程で少なくとも20,800台のモデルが影響を受け、その大部分はヨーロッパにありました。 この脆弱性は、ゼロタッチプロビジョニングアプレット内の「setWanPortSt」コマンドに起因します。「setWanPortSt」コマンドへのアクセスは、/ztp/cgi-bin/handlerエンドポイントを介して行われます。 Zyxelがこの脆弱性に対するモデルのアップデートを提供して以来、エクスプロイトは観察されていません。影響を受けるモデルのソフトウェアバージョンはv5.30にアップグレードされ、脆弱性を防ぐために自動ソフトウェアアップデートを有効にすべきであると強調されています。
2022年4月13日、Rapid7はZyxelファイアウォールデバイスに影響を与える脆弱性を報告しました。この脆弱性により、攻撃者は認証なしにリモートから「nobody」ユーザーとして任意のコマンドを注入できます。この脆弱性は重大レベルとして扱われ、CVSSスコアは9.8と判定されました。その後Zyxelは、2022年4月28日にセキュリティアップデートを発行してこの脆弱性に対処しました。2022年5月12日、Rapid7はこの脆弱性に関するアドバイザリとMetasploitモジュールを公開しました。
ShadowServerの研究者たちは、CVE-2022-30525を悪用しようとする試みの監視を開始しました。調査の過程で、影響を受けるZyxelファイアウォールモデルの少なくとも20,800台がオンラインに露出していました。影響を受けるモデルの大部分はフランスとイタリアにあったと報告されています。

この脆弱性は、攻撃者が提供したデータとともに「os.system」を使用することに起因します。攻撃の開始には/ztp/cgi-bin/handlerエンドポイントが使用されます。Handlerは、さまざまなコマンドを実行できるPythonスクリプトです。このエラーを最初に報告したJake Baines氏は、自身のブログでこの脆弱性を次のように説明しています:「Rapid7は、Zero Touch Provisioning(ZTP)をサポートするZyxelファイアウォールに影響を与える脆弱性を発見し、報告しました。これにはATPシリーズ、VPNシリーズ、USG FLEXシリーズ(USG20-VPNおよびUSG20W-VPNを含む)が含まれます。CVE-2022-30525として識別されるこの脆弱性により、認証されていないリモートの攻撃者が、影響を受けるデバイス上でnobodyユーザーとして任意のコード実行を達成できます。」 問題は、ゼロタッチプロビジョニング実装内の「setWanPortSt」と呼ばれるコマンドから発生します。このコマンドにより、リモートプロビジョニングがファイアウォールのポートのIP設定を変更できます。
悪用がどのように行われるかをよりよく理解するために、PoCが公開されています。Victorian Machineryは、CVE-2022-30525の概念実証エクスプロイトです。この脆弱性は、ゼロタッチプロビジョニングをサポートするZyxelファイアウォールに影響を与える、認証されていないリモートコマンドインジェクションの脆弱性です。
まず、netcatリスナーを使用してターゲットが悪用され、リバースシェルが取得されます。デフォルトでは、「nc」は「nc-path」を指定して実行されます。Pythonでは、「os.fork()」操作を使用してメインプロセスのコピーが作成されます。次に、プロセスIDが0の場合、指定されたURLアドレスにPOSTリクエストが送信されます。URLには、プロトコル、悪用するリモートアドレス、リモートポート、および「/ztp/cgi-bin/handler」エンドポイントがそれぞれ含まれます。ここでの/ztp/cgi-bin/handlerエンドポイントにより、「setWanPortSt」コマンドの機能にアクセスでき、ファイアウォールポートのIP設定を変更できます。ペイロードを調べると、コマンドのターゲットがDHCPプロトコルのポート1270であることがわかります。このようにして、攻撃者はnobodyとしてリモートコード実行を実現できます。
世界中のエクスプロイトを調査しているグループであるShadowserver Foundationは、観察された悪用の試みとその特性に関する詳細を明らかにしませんでした。2022年5月16日月曜日以降、悪用の試みはなかったと発表されましたが、調査は継続されています。
影響を受けるデバイスの管理者は、できるだけ早くファームウェアをV5.30にアップグレードすることをお勧めします。Jake baines氏はまた、可能であれば自動ファームウェアアップデートを有効にするよう述べました。Zyxelはこの脆弱性を静かに処理したことで批判を受けましたが、声明ではこれは「開示調整プロセス中のコミュニケーション不足」によるものであると説明されました。内部従業員には、手動緩和のための辞書を作成して新しい「HTTPプロトコル署名」ポリシーを作成することで、悪用を防ぐことができると伝えられました。
結論として、Zyxelファイアウォール製品で発生したこの脆弱性は、多くのモデルに重大なレベルで影響を与えました。問題は短期間で対処されましたが、エクスプロイトの影響は非常に大きなものでした。長い間エクスプロイトが見つかっていないという事実は、アップデートが当面の間、このセキュリティの脆弱性を塞ぐことができることを示しています。