重大な脆弱性がProgress Kemp LoadMasterに発覚 — 認証不要のリモートコード実行が可能に

Progressが提供するKemp LoadMasterは、広く導入されているエッジ型ロードバランサーおよびADC(アプリケーション配信コントローラー)ですが、CVE-2026-8037として追跡されている重大な認証前リモートコード実行(RCE)脆弱性の中心に位置しています。

この脆弱性は、LoadMasterのAPI処理における未初期化メモリ/文字列終端のバグを悪用することで、デバイスAPIへのアクセス権を持つ未認証の攻撃者が任意のシェルコマンドを実行できるというものです。

LoadMasterはネットワークのエッジに位置するため、悪用に成功した場合、本来は保護の要となるべき箇所が、ネットワーク全体への足がかりへと変わってしまいます。

Kemp LoadMasterは、レイヤー4/7のトラフィック分散、SSL/TLSオフロード、ヘルスチェック、組み込みWAFなどの機能を提供しています。Progressは2026年6月4日にセキュリティ情報を公開し、「コマンドインジェクションによるリモートコード実行脆弱性」と関連アドバイザリの詳細を発表しました(Progress公式情報を参照)。

この問題は、APIが有効な状態のGA版 v7.2.63.1以前およびLTSF版 v7.2.54.17以前に影響します。本脆弱性はTrendAI ResearchのSyed Ibrahim Ahmed氏によって責任ある開示が行われ、ZDIアドバイザリ(ZDI-26-342)として文書化されています。

脆弱なコードパスは、/accessv2に送信された認証情報を検証するAPIエンドポイント内に存在します。LoadMasterは、シングルクォートで囲まれたシェル引数内に配置された値をサニタイズするために、escape_quotes()というヘルパー関数を使用しています。

この関数は入力内のシングルクォートをスキャンし、存在する場合は新しいヒープバッファを確保して、各シングルクォートを4バイトのシェルセーフシーケンス'に置き換えます。

Kemp LoadMasterは、受信ネットワークトラフィックを複数のサーバーに分散させ、アプリケーションの可用性・応答性・スケーラビリティを維持するロードバランサーおよびアプリケーション配信コントローラー(ADC)です。 

Image

CVE-2026-8037は典型的な入力サニタイゼーションの誤りではなく、ヒープのセマンティクスと出力の終端処理に失敗した文字列エスケープ実装が微妙に組み合わさったことで生じたと、Labsは説明しています

Progress Kemp LoadMasterの脆弱性詳細

この脆弱性を深刻なものにした実装上の欠陥は2つあります。まず、パッチ未適用のescape_quotes()malloc()を使用しており、新たに確保されたバッファが未初期化のまま残ります。

Image

次に、エスケープされた文字列を生成した後にヌル終端文字の書き込みを怠っていました。エスケープされたポインタがその後sprintf/system()チェーンでvaliduserコマンドラインの構築に使用される際、ヌル終端の欠落によりsprintfが意図したバッファを超えて読み進み、隣接するヒープメモリへと侵入してしまいます。

mallocは制御されたデータを含む解放済みのチャンクを返すことがあるため、攻撃者はコマンドの断片を隣接するチャンクにヒープスプレーできます。

この攻撃手法はエスケープロジックそのものを利用してアロケータのメタデータを上書きします。apiuserフィールドの4つのシングルクォートは正確に16バイトのエスケープデータに展開され、次のチャンクの先頭16バイト(本来はアロケータのメタデータがヌルバイトを導入して読み取りを停止させる箇所)を上書きすることができます。

多数のJSONパラメータをスプレーすることで、攻撃者は細工されたペイロードチャンクがエスケープされたapiuserチャンクに隣接する確率を高めます。

その結果、sprintfがスプレーされたデータを読み込み、攻撃者が制御するコンテンツを含むコマンドラインを組み立て、それがsystem()経由で実行されることで、認証前のRCEが成立します。

この脆弱性が強力な理由は、APIアクセスさえあれば認証不要で悪用でき、単純なインジェクション構文も必要としない点にあります。エクスプロイトはアロケータの動作、精密なヒープレイアウト、そしてターゲット自身のエスケープルーティンの巧妙な利用に依存しています。

緩和策と検出方法はシンプルです。Progressはメモリ確保をcallocに変更し、終端のNULを明示的に書き込むパッチをリリースしており、これにより境界外読み取りを防止しています。管理者はベンダーのアップデートを直ちに適用する必要があります。

パッチの即時適用が困難な場合は、信頼されていないネットワークからの管理APIを無効化し、ネットワークACL、VPN、またはジャンプホストによってアクセスを制限することで、リスクを低減できます。

LoadMasterアプライアンスからの異常なvaliduserシステムコール、通常とは異なるプロセスの生成、予期しないアウトバウンド接続を継続的に監視してください。

翻訳元: https://gbhackers.com/progress-kemp-loadmaster-vulnerability/

ソース: gbhackers.com