BMC コントローラー ファームウェアの脆弱性が多くのメーカーのサーバーに影響

エクリプシウムカンパニー 明らかに Lenovo ThinkServer サーバーに提供されている BMC コントローラーのファームウェアに XNUMX つの脆弱性があり、ローカル ユーザーがファームウェアを変更したり、BMC チップ側で任意のコードを実行したりできる可能性があります。

さらなる分析により、これらの問題は、Acer、AMAX、Bigtera、Ciara、Penguin Computing、sysGen などの企業のサーバーでも使用されている Gigabyte Enterprise Servers サーバー プラットフォームで使用されている BMC コントローラーのファームウェアにも影響を与えていることがわかりました。 問題のある BMC コントローラーは、サードパーティ ベンダーの Avocent (現在は Vertiv の一部門) が開発した脆弱な MergePoint EMS ファームウェアを使用していました。

最初の脆弱性は、ダウンロードされたファームウェア アップデートの暗号化検証が欠如していることが原因で発生します (CRC32 チェックサム検証のみが使用されます)。 提言 NIST はデジタル署名を使用します)。これにより、システムにローカルにアクセスできる攻撃者が BMC ファームウェアになりすますことが可能になります。 たとえば、この問題を利用して、オペレーティング システムを再インストールした後もアクティブなままになり、さらなるファームウェアの更新をブロックするルートキットを深く統合することができます (ルートキットを排除するには、プログラマを使用して SPI フラッシュを書き換える必要があります)。

XNUMX 番目の脆弱性はファームウェアの更新コードに存在し、独自のコマンドを置き換えることができ、BMC で最高レベルの権限で実行されます。 攻撃するには、bmcfwu.cfg 構成ファイル内の RemoteFirmwareImageFilePath パラメーターの値を変更するだけで十分です。これにより、更新されたファームウェアのイメージへのパスが決定されます。 IPMI のコマンドによって開始できる次の更新中に、このパラメータは BMC によって処理され、popen() 呼び出しの一部として /bin/sh の行の一部として使用されます。 シェル コマンドを生成する行は、特殊文字を適切に削除せずに snprintf() 呼び出しを使用して作成されるため、攻撃者はコードを置き換えて実行する可能性があります。 この脆弱性を悪用するには、IPMI 経由で BMC コントローラーにコマンドを送信できる権限が必要です (サーバーの管理者権限がある場合は、追加の認証なしで IPMI コマンドを送信できます)。

Gigabyte と Lenovo は 2018 年 XNUMX 月にこの問題について通知を受けており、情報が一般に公開される前にアップデートをリリースすることができました。 レノボ社 解放された 15 年 2018 月 340 日に、ThinkServer RD340、TD440、RD540、RD640、および RD2014 サーバーのファームウェア アップデートが行われましたが、XNUMX 年に MergePoint EMS に基づく一連のサーバーを作成した際に、ファームウェアが削除されたため、コマンド置換を可能にする脆弱性のみが解消されました。デジタル署名を使用して検証が実行されることはまだ普及しておらず、当初は発表されていませんでした。

今年の 8 月 2500 日に、Gigabyte は ASPEED AST2400 コントローラーを搭載したマザーボードのファームウェア アップデートをリリースしましたが、Lenovo と同様に、コマンド置換の脆弱性が修正されただけでした。 ASPEED ASTXNUMX に基づく脆弱なボードは、現時点では更新されていません。 ギガバイトも AMI から MegaRAC SP-X ファームウェアの使用への移行について。 MegaRAC SP-X に基づく新しいファームウェアを含めて、以前に MergePoint EMS ファームウェアが同梱されていたシステムに提供されます。 この決定は、MergePoint EMS プラットフォームのサポートを終了するという Vertiv の発表を受けたものです。 同時に、Acer、AMAX、Bigtera、Ciara、Penguin Computing、および sysGen によって製造され、Gigabyte ボードをベースにし、脆弱な MergePoint EMS ファームウェアを搭載したサーバーのファームウェアのアップデートについてはまだ何も報告されていません。

BMC はサーバーにインストールされる特殊なコントローラーであり、独自の CPU、メモリ、ストレージ、センサー ポーリング インターフェイスを備えており、サーバー機器の監視と管理のための低レベル インターフェイスを提供します。 BMC を使用すると、サーバー上で実行されているオペレーティング システムに関係なく、センサーのステータスの監視、電源、ファームウェア、ディスクの管理、ネットワーク経由のリモート ブートの整理、リモート アクセス コンソールの動作の確保などが可能になります。

出所: オープンネット.ru

コメントを追加します