web-dev-qa-db-ja.com

Linuxシステム(CVE-2017-5689)でのIntelの特権昇格の脆弱性を検出して軽減する方法

2017年5月1日付けの Intel security-center post によると、Intelプロセッサに重大な脆弱性があり、攻撃者がAMT、ISM、SBTを使用して特権(特権の昇格)を取得できる可能性があります。

AMTはコンピューターのネットワークハードウェアに直接アクセスできるため、このハードウェアの脆弱性により、攻撃者は任意のシステムにアクセスできます。

インテル®アクティブマネジメントテクノロジー(AMT)、インテル®スタンダードマネージメント(ISM)、およびインテル®スモールビジネステクノロジーのバージョンファームウェアバージョン6.x、7.x、8.x 9.x、10に特権昇格の脆弱性があります。 .x、11.0、11.5、および11.6。これらにより、権限のない攻撃者がこれらの製品が提供する管理機能を制御できるようになります。この脆弱性は、IntelベースのコンシューマPCには存在しません。

インテルが 検出ツール をリリースしました。Windows7および10で利用可能です。_dmidecode -t 4_の情報を使用しています。インテルのWebサイトを検索したところ、プロセッサーでIntel® Active Management Technology (Intel® AMT) 8.0

影響を受ける製品:

この問題は、インテル®アクティブマネジメントテクノロジー、インテル®スモールビジネステクノロジー、およびインテルのインテル管理機能ファームウェアバージョン6.x、7.x、8.x 9.x、10.x、11.0、11.5、および11.6で確認されています®標準の管理機能。 6より前または11.6より後のバージョンは影響を受けません。

説明:

権限のないローカルの攻撃者は、管理機能をプロビジョニングして、インテルの管理性SKUで非特権のネットワークまたはローカルシステムの特権を獲得する可能性があります。

Linuxシステムでのインテルの特権昇格の脆弱性を簡単に検出して緩和するにはどうすればよいですか?

26
GAD3R

この問題について私が見た最も明確な投稿は Matthew Garrett's (コメントを含む)です。

Matthewは tool をリリースし、システムをローカルでチェックします。ビルドして実行します

_Sudo ./mei-amt-check
_

また、AMTが有効化およびプロビジョニングされているかどうか、また、有効化されている場合は、ファームウェアバージョンを報告します(以下を参照)。 [〜#〜] readme [〜#〜] に詳細があります。

ネットワークで潜在的に脆弱なシステムをスキャンするには、ポート623、624、および16992から16993をスキャンします(インテル独自の 緩和文書 で説明されています)。例えば

_nmap -p16992,16993,16994,16995,623,664 192.168.1.0/24
_

192.168.1/24ネットワークをスキャンし、応答するすべてのホストのステータスを報告します。ポート623に接続できることは誤検知である可能性があります(他のIPMIシステムがそのポートを使用します)が、16992から16995までの開いているポートは、有効なAMTの非常に優れたインジケーターです(少なくともそれらが適切に応答する場合:AMTを使用すると、 16992および16993のHTTP応答、後者はTLSを使用)。

ポート16992または16993で応答が表示される場合、それらに接続し、HTTPを使用して_/_を要求すると、AMTが有効になっているシステムで「Intel(R)Active Management Technology」を含むServer行を含む応答が返されます。 ;同じ行には、使用中のAMTファームウェアのバージョンも含まれます。これは、 Intelの助言 に示されているリストと比較して、脆弱かどうかを判断できます。

上記を自動化するスクリプトへのリンクについては、 CerberusSecの回答 を参照してください。

問題を「適切に」修正する方法は2つあります。

  • システムの製造元がアップデートを提供したら(もしあれば)、ファームウェアをアップグレードします。
  • システムでAMT非対応のネットワークインターフェースを使用するか、USBアダプターを使用して、AMTを提供するネットワークポートの使用を避けます(i210ネットワークポートを備えたC226 Xeon E3システムなどの多くのAMTワークステーションには、AMT-対応ネットワークインターフェース—残りは安全です。AMTは少なくともWindowsではwi-fiを介して機能するため、組み込みのwi-fiを使用すると侵害につながる可能性があることに注意してください。

これらのオプションのどちらも利用できない場合は、緩和領域にいます。 AMT対応システムがAMT用にプロビジョニングされたことがない場合は、かなり安全です。その場合のAMTの有効化は、明らかにローカルでのみ実行でき、私が知る限り、システムのファームウェアまたはWindowsソフトウェアを使用する必要があります。 AMTが有効になっている場合、再起動してファームウェアを使用して無効にすることができます( CtrlP 起動時にAMTメッセージが表示されたとき)。

基本的に、特権の脆弱性はかなり厄介ですが、ほとんどのIntelシステムは実際には影響を受けていないようです。 Linuxまたは別のUnixライクなオペレーティングシステムを実行している独自のシステムの場合、エスカレーションでは、まずAMTを有効にするためにシステムに物理的にアクセスする必要があります。 (Windowsは別の話です。) Rui F Ribeiro で指摘されているように、複数のネットワークインターフェイスを備えたシステムでは、AMT対応のインターフェイスを、管理インターフェイス(IPMI)を扱うのと同じ方法で扱う必要があります。 -capable、またはVMハイパーバイザー)のホストインターフェイスを使用して、管理ネットワーク(物理またはVLAN)に分離します。できませんホストによるホストの保護:iptablesなどはここでは無効です。これは、AMTがオペレーティングシステムより前にパケットを確認するためです(そして、AMTパケット自体を保持します)。

VMは問題を複雑にする可能性がありますが、AMTが有効になっている場合、AMTを混乱させ、混乱するスキャン結果を生成する可能性があるという意味でのみです。 amt-howto(7) は、AMTがDHCPを介してDomUに指定されたアドレスを使用するXenシステムの例を示します。これは、スキャンがDom0ではなくDomUでアクティブなAMTを表示することを意味します...

18
Stephen Kitt

このサービスの開いているポートを検出するだけでは不十分であり、バージョンが影響を受けるかどうかは示されません。私たちのチームは、ターゲットシステムがリモート攻撃に対して脆弱であるかどうかを検出するpython githubで利用可能なスクリプト: CerberusSecurity/CVE-2017-5689 を作成しました。

使用例:

python CVE_2017_5689_detector.py 10.100.33.252-255

これにより、リモートで悪用可能かどうかを確認できます。興味がある場合は、この脆弱性に関する私たちの見解を記した短いブログ投稿 http://cerberussec.org/ も投稿しました。

8
CerberusSec

IntelにはLinux用のツールがあります。 Linuxの検出および軽減ツール

[〜#〜] github [〜#〜] にフォークがあります

3
guest