ダンフォス製ゼロデイ脆弱性6件、ログイン不要で冷凍・冷蔵コントローラーの乗っ取りが可能に

ダンフォス(Danfoss)の冷凍・冷蔵コントローラー「AK-SM800A」に、認証前に悪用できるスタックベースのバッファオーバーフロー脆弱性が6件見つかり、このほど公表されました。手作業によるレビューを始めて1時間足らずで発見されたといいます。

影響を受けるのは、5.3.2までのすべてのファームウェアです。ダンフォスとの協調的開示が続いているため、CVE番号はまだ割り当てられておらず、該当するエンドポイントも伏せられています。

今回の発見は、10月11日に始まった攻撃の後に明らかになりました。この攻撃は、欧州各地でインターネットに公開されていたダンフォスやコープランド(Copeland)のコントローラーを狙ったものです。攻撃によって強制的に霜取りサイクルが実行され、数千万ユーロ相当の食品が傷んだほか、一部の店舗では火災も発生しました。

この製品ラインでは過去にも、コード・オブ・ザ・デイ方式の認証バイパス「CVE-2025-41450」や、OSコマンドインジェクションの「CVE-2023-25915」「CVE-2025-41451」といった脆弱性が見つかっています。フランスでの攻撃から48時間以内には、概念実証(PoC)コードも公開されました。

AK-SM800Aは、i.MX6プロセッサー上でYoctoベースのLinuxディストリビューション「Danux」を実行しています。モノリシックな sm_app バイナリには52個のタスクが含まれており、その1つである Task_Web が、NGINXリバースプロキシから転送されるCGIリクエストを処理します。

調査を行ったメイヤー氏(Meijer)は、qemu-armel-static を使ってこのバイナリをユーザーランドでエミュレートし、LD_PRELOAD で main() のコードフローを乗っ取りました。そのうえで、Webサーバーを単独で起動しています。

Apache HTTP Server 2.4.71では、mod_http2の重大なヒープ破損の脆弱性が修正されましたが、今回のダンフォスの事例は、それよりはるかに脆弱なメモリ安全性の上に成り立っています。

認証不要のハンドラーには、境界チェックのない strcpy() の呼び出しが数百か所も存在します。checksec の出力では、スタックカナリアもPIEもなく、RELROも部分的にしか有効になっていません。

あるCGIエンドポイントに768バイトのペイロードを送ると SEGFAULT が発生しました。メイヤー氏が調べたコードの範囲だけでも、同様のオーバーフローが少なくとも5件見つかっています。strcpy() のヌルバイト終端という制約を回避すれば、root権限で任意のコードを完全に実行できます。

FatFsの7件の脆弱性により、組み込み機器にメモリ破損のリスクが生じています。いずれも、同様の安全でない文字列処理が原因です。ファームウェア4.0以降でデフォルトとなっている厳格なセッション制御でも、この問題は防げません。

sm_fcgi_app バイナリはWAFとして機能し、未認証ユーザーには getauth コマンドのみを通します。しかし、このバイナリにも6件目の strcpy オーバーフローがあります。過大なサイズの User-Agent ヘッダーから到達でき、厳格モードでも認証前のコード実行が可能です。

メイヤー氏は、このコンポーネントにパーサーの解釈差異(パーサー・ディファレンシャル)が存在する可能性にも言及しています。ModSecurityのパーサー差異の事例が示すように、リクエストの解釈が食い違えば、フィルタリング層は突破されてしまいます。

OTPヒューズレジスタの内容から、i.MX6のセキュアブート機能は有効化されていないことがわかります。そのため、root権限を奪った攻撃者は、工場出荷時へのリセット後も残り続けるファームウェアを仕込めるほか、不正な形式のイメージを書き込んでコントローラーを文鎮化させることもできます。

こうした手口は、ポーランドの電力網へのOT機器攻撃で使われた破壊的な戦術に似ています。ヴァイドミュラー(Weidmueller)のルーターの脆弱性でも、未認証の攻撃者が産業用機器でroot権限のコマンドを実行できました。ミッドナイト・ブルー(Midnight Blue)は、個々のバグにパッチを当てるやり方では、限られたリソースを浪費するだけだと主張しています。

資産の所有者は、インテグレーターの4Gモデム経由で接続されているものも含め、公開状態にあるコントローラーを洗い出す必要があります。そのうえで、管理インターフェースへのアクセスをVPN、プライベートAPN、または厳格なIP許可リストに限定すべきです。Censysでは現在も、数百台のダンフォス製機器と、1,000台を超えるコープランドおよびディクセル(Dixell)製コントローラーが公開状態にあることが確認できます。

1万6,000以上のSOCチームがANY.RUNを活用し、脅威調査の効率化と手作業の削減を実現しています。チームでの導入を検討する

翻訳元: https://cyberpress.org/six-danfoss-zero-day-flaws/

本記事は cyberpress.org の記事を翻訳・要約したものです。