更新 [2021 年 3 月 16 日] : Microsoft は、IT 担当者とインシデント対応チームが関連する攻撃を特定、修復、防御するのに役立つ更新されたツールと調査ガイダンスをリリースしました: 対応者向けのガイダンス: オンプレミスの Exchange Server の脆弱性の調査と修復。
更新 [2021 年 3 月 15 日] : Microsoft は、専用のセキュリティ チームや IT チームを持たないお客様が Microsoft Exchange Server のセキュリティ更新プログラムを適用できるように、新しいワンクリック軽減ツールであるMicrosoft Exchange On-Premises Mitigation Toolをリリースしました。
更新 [2021 年 3 月 8 日] : Microsoft は、パッチが適用されていないシステムを利用してオンプレミスの Exchange Server を使用する組織を攻撃する複数のアクターを引き続き確認しています。 Microsoft のセキュリティ製品とツールが展開されていない可能性があるこれらの攻撃を防御者が調査するのを支援するために、観察された侵害の兆候 (IOC) のフィードをリリースしています。関連する攻撃で観測されたマルウェア ハッシュと既知の悪意のあるファイル パスのフィードは、以下の GitHub リンクで JSON と CSV の両方の形式で入手できます。この情報は、TLP:WHITE: CSV 形式|として共有されています。 JSON 形式
更新 [2021 年 3 月 5 日] : マイクロソフトは、HAFNIUM 以外の複数の悪意のあるアクターによる、パッチが適用されていないシステムを標的とする攻撃で、これらの脆弱性の使用が増加していることを確認しています。お客様がこれらの攻撃を調査するのを支援するために、 Microsoft セキュリティ レスポンス センター (MSRC) は、新しい軽減策のガイダンスを含む追加のリソースを提供しています: Microsoft Exchange Server の脆弱性の軽減策 – 2021 年 3 月
更新 [2021 年 3 月 4 日] : Exchange Server チームは、HAFNIUM の侵害の痕跡 (IOC) をチェックするためのスクリプトをリリースしました。 Exchange ログ ファイルをスキャンして侵害の痕跡を確認する を参照してください。
マイクロソフトは、限定的な標的型攻撃でオンプレミス バージョンの Microsoft Exchange Server を攻撃するために使用されている複数のゼロデイ エクスプロイトを検出しました。観測された攻撃では、攻撃者はこれらの脆弱性を利用してオンプレミスの Exchange サーバーにアクセスし、電子メール アカウントへのアクセスを可能にし、追加のマルウェアのインストールを許可して、被害者の環境への長期的なアクセスを容易にしました。 Microsoft Threat Intelligence Center (MSTIC) は、観察された被害者学、戦術、および手順に基づいて、このキャンペーンは、国家が後援し、中国国外で活動していると評価されたグループであるHAFNIUM によるものであると確信しています。
最近悪用された脆弱性は、CVE-2021-26855、CVE-2021-26857、CVE-2021-26858、および CVE-2021-27065 であり、これらはすべて、本日のMicrosoft Security Response Center (MSRC) リリース – 複数のセキュリティ更新プログラムで対処されました。 Exchange Server 用にリリースされました。お客様には、オンプレミス システムをすぐに更新することを強くお勧めします。 Exchange Online は影響を受けません。 https://aka.ms/ExchangeVulnsでより多くの情報が入手可能になると、常に更新されるリソース センターが確立されました。
この情報をお客様およびセキュリティ コミュニティと共有して、これらの脆弱性の重大な性質と、これらのエクスプロイトから保護し、エコシステム全体での将来の悪用を防ぐために、影響を受けるすべてのシステムに直ちにパッチを適用することの重要性を強調しています。このブログは、悪意のあるアクターに光を当て、顧客を標的にするために使用される高度な戦術と手法の認識を高めるという私たちの使命も続けています.このブログで共有されている、関連する IOC、 Azure Sentinelの高度な検索クエリ、 Microsoft Defender for Endpoint製品の検出とクエリは、SOC が環境内の関連するアクティビティをプロアクティブに検索し、修復のためにアラートを上げるのに役立ちます。
Microsoft は、攻撃チェーンのさまざまな部分と調査への協力を報告してくれた Volexity と Dubex の業界の同僚に感謝します。 Volexity は、分析を含むブログ投稿も公開しています。このレベルのプロアクティブなコミュニケーションとインテリジェンスの共有により、コミュニティが団結して、攻撃が拡散する前に先回りし、すべてのセキュリティを向上させることができます。
ハフニウムとは?
HAFNIUM は主に、感染症研究者、法律事務所、高等教育機関、防衛請負業者、政策シンクタンク、NGO など、さまざまな業界の米国内の組織を標的にしています。
HAFNIUM は以前、インターネットに接続されたサーバーの脆弱性を悪用して被害者を侵害し、コマンド アンド コントロールにCovenantなどの正当なオープンソース フレームワークを使用していました。被害者のネットワークにアクセスできるようになると、HAFNIUM は通常、 MEGAなどのファイル共有サイトにデータを盗み出します。
これらの脆弱性とは無関係のキャンペーンで、Microsoft は HAFNIUM が被害者の Office 365 テナントとやり取りしていることを確認しています。多くの場合、顧客アカウントの侵害に失敗しますが、この偵察活動は、攻撃者が標的の環境に関する詳細を特定するのに役立ちます。
HAFNIUM は、主に米国のリースされた仮想プライベート サーバー (VPS) から運用されます。
技術的な詳細
マイクロソフトは、HAFNIUM がこれらの脆弱性を悪用し、パッチが適用されていないシステムに対する将来の攻撃に対してより効果的な防御を可能にするために使用する手法をお客様が理解できるように、次の詳細を提供しています。
CVE-2021-26855は Exchange のサーバー側リクエスト フォージェリ (SSRF) の脆弱性で、攻撃者が任意の HTTP リクエストを送信し、Exchange サーバーとして認証することを可能にしました。
CVE-2021-26857は、ユニファイド メッセージング サービスにおける安全でない逆シリアル化の脆弱性です。安全でないデシリアライゼーションは、信頼されていないユーザー制御可能なデータがプログラムによってデシリアライズされる場所です。この脆弱性を悪用することで、HAFNIUM は Exchange サーバー上でシステムとしてコードを実行できるようになりました。これを悪用するには、管理者の許可または別の脆弱性が必要です。
CVE-2021-26858は、Exchange における認証後の任意のファイル書き込みの脆弱性です。 HAFNIUM が Exchange サーバーで認証できる場合、この脆弱性を利用してサーバー上の任意のパスにファイルを書き込むことができます。彼らは、CVE-2021-26855 SSRF の脆弱性を悪用するか、正当な管理者の資格情報を侵害することによって認証できます。
CVE-2021-27065は、Exchange における認証後の任意のファイル書き込みの脆弱性です。 HAFNIUM が Exchange サーバーで認証できる場合、この脆弱性を利用してサーバー上の任意のパスにファイルを書き込むことができます。彼らは、CVE-2021-26855 SSRF の脆弱性を悪用するか、正当な管理者の資格情報を侵害することによって認証できます。
攻撃の詳細
これらの脆弱性を悪用して初期アクセスを取得した後、HAFNIUM のオペレーターは侵害されたサーバーに Web シェルを展開しました。 Web シェルは、攻撃者がデータを盗み、さらなる侵害につながる追加の悪意のあるアクションを実行できるようにする可能性があります。 HAFNIUM によってデプロイされ、ASP で記述された Web シェルの一例を以下に示します。
Web シェルの展開に続いて、HAFNIUM オペレーターは次の悪用後のアクティビティを実行しました。
- Procdump を使用して LSASS プロセス メモリをダンプします。
- 7-Zip を使用して、盗んだデータを ZIP ファイルに圧縮して抽出します。
- メールボックス データをエクスポートするための Exchange PowerShell スナップインの追加と使用:
- Nishang Invoke-PowerShellTcpOneLine リバース シェルの使用:
- GitHub から PowerCat をダウンロードし、それを使用してリモート サーバーへの接続を開きます。
HAFNIUM のオペレーターは、侵害されたシステムから Exchange のオフライン アドレス帳をダウンロードすることもできました。これには、組織とそのユーザーに関する情報が含まれています。
私たちのブログ、 Defending Exchange servers under attackでは、Exchange サーバーの侵害に対する防御を強化するためのアドバイスを提供しています。お客様は、Web シェル攻撃に関する追加のガイダンスもブログで見つけることができます。 Web シェル攻撃は引き続き増加しています。
この活動によって侵害されたかどうかを判断できますか?
以下のセクションでは、侵害の兆候 (IOC)、検出ガイダンス、および高度な検索クエリを提供し、お客様が Exchange サーバー ログ、Azure Sentinel、Microsoft Defender for Endpoint、および Microsoft 365 Defender を使用してこのアクティビティを調査できるようにします。以前のキャンペーンの可能性を特定し、システムを標的とする可能性のある将来のキャンペーンを防ぐために、調査を実施し、プロアクティブな検出を実装することをお勧めします。
Exchange Server のパッチ レベルを確認する
Microsoft Exchange Server チームは、これらの新しいセキュリティ更新プログラムに関するブログ投稿を公開しており、オンプレミスの Exchange サーバーのパッチ レベルの状態のクイック インベントリを取得し、これらのパッチのインストールに関するいくつかの基本的な質問に答えるスクリプトを提供しています。
Exchange ログ ファイルをスキャンして侵害の痕跡を探す
Exchange Server チームは、パフォーマンスとメモリの問題に対処するために、HAFNIUM IOC のチェックを実行するスクリプトを作成しました。そのスクリプトは、 https ://github.com/microsoft/CSS-Exchange/tree/main/Security から入手できます。
- CVE-2021-26855 のエクスプロイトは、次の Exchange HttpProxy ログを介して検出できます。
- これらのログは次のディレクトリにあります: %PROGRAMFILES%MicrosoftExchange ServerV15LoggingHttpProxy
- エクスプロイトは、AuthenticatedUser が空で、AnchorMailbox に ServerInfo~*/* のパターンが含まれているログ エントリを検索することで特定できます。
- これらのログ エントリを検索する PowerShell コマンドの例を次に示します。
Import-Csv -Path (Get-ChildItem -Recurse -Path "$env:PROGRAMFILESMicrosoftExchange ServerV15LoggingHttpProxy" -Filter '*.log').FullName | Where-Object { $_.AnchorMailbox -like 'ServerInfo~*/*' -or $_.BackEndCookie -like 'Server~*/*~*'} | select DateTime, AnchorMailbox, UrlStem, RoutingHint, ErrorCode, TargetServerVersion, BackEndCookie, GenericInfo, GenericErrors, UrlHost, Protocol, Method, RoutingType, AuthenticationType, ServerHostName, HttpStatus, BackEndStatus, UserAgent
-
- アクティビティが検出された場合、AnchorMailbox パスで指定されたアプリケーションに固有のログを使用して、実行されたアクションを特定できます。
- これらのログは、%PROGRAMFILES%MicrosoftExchange ServerV15Logging ディレクトリにあります。
- アクティビティが検出された場合、AnchorMailbox パスで指定されたアプリケーションに固有のログを使用して、実行されたアクションを特定できます。
- CVE-2021-26858 のエクスプロイトは、Exchange ログ ファイルを介して検出できます。
- C:Program FilesMicrosoftExchange ServerV15LoggingOABGeneratorLog
- ファイルは %PROGRAMFILES%MicrosoftExchange ServerV15ClientAccessOABTemp ディレクトリにのみダウンロードする必要があります
- 悪用された場合、ファイルは他のディレクトリ (UNC またはローカル パス) にダウンロードされます。
- 潜在的なエクスプロイトを検索する Windows コマンド:
findstr /snip /c:"Download failed and temporary file" "%PROGRAMFILES%MicrosoftExchange ServerV15LoggingOABGeneratorLog*.log"
- CVE-2021-26857 のエクスプロイトは、Windows アプリケーション イベント ログを介して検出できます。
- この逆シリアル化のバグを悪用すると、次のプロパティを持つアプリケーション イベントが作成されます。
- 出典: MSExchange ユニファイド メッセージング
- EntryType: エラー
- イベント メッセージの内容: System.InvalidCastException
- 以下は、これらのログ エントリのアプリケーション イベント ログを照会する PowerShell コマンドです。
- この逆シリアル化のバグを悪用すると、次のプロパティを持つアプリケーション イベントが作成されます。
Get-EventLog -LogName Application -Source "MSExchange Unified Messaging" -EntryType Error | Where-Object { $_.Message -like "*System.InvalidCastException*" }
- CVE-2021-27065 のエクスプロイトは、次の Exchange ログ ファイルで検出できます。
- C:Program FilesMicrosoftExchange ServerV15LoggingECPServer
すべての Set-<AppName>VirtualDirectory プロパティにスクリプトを含めないでください。 InternalUrl と ExternalUrl は、有効な Uris のみである必要があります。
-
- 以下は、潜在的な悪用を検索する PowerShell コマンドです。
Select-String -Path "$env:PROGRAMFILESMicrosoftExchange ServerV15LoggingECPServer*.log" -Pattern 'Set-.+VirtualDirectory'
ホスト IOC
Microsoft は、関連する攻撃で観察された侵害の痕跡 (IOC) のフィードをリリースしています。このフィードは、 CSVとJSONの両方の形式で利用できます。この情報は TLP:WHITE として共有されています。
ハッシュ
Web シェル ハッシュ
- b75f163ca9b9240bf4b37ad92bc7556b40a17e27c2b8ed5c8991385fe07d17d0
- 097549cf7d0f76f0d99edf8b2d91c60977fd6a96e4b8c3c94b0b1733dc026d3e
- 2b6f1ebb2208e93ade4a6424555d6a8341fd6d9f60c25e44afe11008f5c1aad1
- 65149e036fff06026d80ac9ad4d156332822dc93142cf1a122b1841ec8de34b5
- 511df0e2df9bfa5521b588cc4bb5f8c5a321801b803394ebc493db1ef3c78fa1
- 4edc7770464a14f54d17f36dc9d0fe854f68b346b27b35a6f5839adf1f13f8ea
- 811157f9c7003ba8d17b45eb3cf09bef2cecd2701cedb675274949296a6a183d
- 1631a90eb5395c4e19c7dbcbf611bbe6444ff312eb7937e286e4637cb9e72944
パス
次のパスで Web シェルを確認しました。
- C:inetpubwwwrootaspnet_client
- C:inetpubwwwrootaspnet_clientsystem_web
- 次のような Microsoft Exchange Server のインストール パス:
- %PROGRAMFILES%MicrosoftExchange ServerV15FrontEndHttpProxyowaauth
- C:ExchangeFrontEndHttpProxyowaauth
検出された Web シェルのファイル名は次のとおりです。
- web.aspx
- ヘルプ.aspx
- ドキュメント.aspx
- エラーEE.aspx
- エラーEEE.aspx
- errorEW.aspx
- errorFF.aspx
- healthcheck.aspx
- aspnet_www.aspx
- aspnet_client.aspx
- xx.aspx
- shell.aspx
- aspnet_iisstart.aspx
- one.aspx
C:ProgramDataに疑わしい .zip、.rar、および .7z ファイルがないか確認してください。これは、データの流出の可能性を示している可能性があります。
お客様は、LSASS ダンプの次のパスを監視する必要があります。
- C:windowstemp
- C:ルート
ツール
以下の検出の多くは、HAFNIUM が使用する侵害後の技術に関するものです。したがって、これらは Microsoft が観察した現在の特定の攻撃の一部を検出するのに役立ちますが、最近リリースされた CVE-2021-26855、CVE-2021-26857、CVE-2021-27065、および CVE-2021-26858 の更新プログラムを適用することは依然として非常に重要です。
Microsoft Defender ウイルス対策の検出
これらの検出の一部は一般的な検出であり、このキャンペーンやこれらのエクスプロイトに固有のものではないことに注意してください。
- エクスプロイト:Script/Exmann.A!dha
- 動作:Win32/Exmann.A
- バックドア:ASP/SecChecker.A
- バックドア:JS/Webshell (固有ではない)
- Trojan:JS/Chopper!dha (一意ではない)
- 動作:Win32/DumpLsass.A!attk (一意ではない)
- バックドア:HTML/TwoFaceVar.B (一意ではない)
エンドポイント検出用の Microsoft Defender
- 疑わしい Exchange UM プロセスの作成
- 疑わしい Exchange UM ファイルの作成
- Web シェルのインストールの可能性(固有ではない)
- プロセス メモリ ダンプ(一意ではない)
Azure Sentinel の検出
- HAFNIUM 疑わしい交換リクエスト
- HAFNIUM UM サービスが疑わしいファイルを書き込んでいます
- HAFNIUM 新しい UM サービスの子プロセス
- HAFNIUM 疑わしい UM サービス エラー
- HAFNIUM 疑わしいファイルのダウンロード
高度なハンティング クエリ
このブログのコンテンツに関連する可能性のある悪用活動を見つけるには、Microsoft Defender for Endpoint と Azure Sentinel を介して次の高度な検索クエリを実行できます。
Microsoft Defender for Endpoint の高度な検索クエリ
Microsoft 365 Defender のお客様は、以下またはこの GitHub の場所で、関連するハンティング クエリを見つけることができます: https://github.com/microsoft/Microsoft-365-Defender-Hunting-Queries/
追加のクエリと情報は、Microsoft Defender のお客様向けの脅威分析ポータルから入手できます。
Exchange の UMWorkerProcess.exe が異常なコンテンツを作成する
CVE-2021-26858 の脆弱性の悪用を示唆する、Web シェルまたはその他の悪意のあるコンテンツを示す可能性のある非標準のコンテンツをディスク上に作成する Microsoft Exchange Server のユニファイド メッセージング サービスを探します。
DeviceFileEvents | where InitiatingProcessFileName == "UMWorkerProcess.exe" | where FileName != "CacheCleanup.bin" | where FileName !endswith ".txt" | where FileName !endswith ".LOG" | where FileName !endswith ".cfg" | where FileName != "cleanup.bin"
UMWorkerProcess.exe の生成
CVE-2021-26857 脆弱性の悪用を示唆する異常なサブプロセスを生成する Microsoft Exchange Server のユニファイド メッセージング サービスを探します。
DeviceProcessEvents | where InitiatingProcessFileName == "UMWorkerProcess.exe" | where FileName != "wermgr.exe" | where FileName != "WerFault.exe"
逆シリアル化中にサービスがクラッシュするため、wermgr.exe と WerFault.exe の過度の生成は侵害の兆候である可能性があることに注意してください。
Azure Sentinel の高度な検索クエリ
Azure Sentinel のお客様は、Azure Sentinel ポータルまたは GitHub の場所 ( https://github.com/Azure/Azure-Sentinel/tree/master/Detections/MultipleDataSources/ ) で、これらのインジケーターを含む Sentinel クエリを見つけることができます。
Windows イベント ログで Nishang Invoke-PowerShellTcpOneLine を探します。
SecurityEvent | where EventID == 4688 | where Process has_any ("powershell.exe", "PowerShell_ISE.exe") | where CommandLine has "$client = New-Object System.Net.Sockets.TCPClient"
cmd で PowerCat のダウンロードを探し、Windows イベント ログで Powershell コマンド ライン ログを探します。
SecurityEvent | where EventID == 4688 | where Process has_any ("cmd.exe", "powershell.exe", "PowerShell_ISE.exe") | where CommandLine has "https://raw.githubusercontent.com/besimorhino/powercat/master/powercat.ps1"
読み込まれている Exchange PowerShell Snapin を探します。これは、メールボックス データのエクスポートに使用できます。その後のコマンド ラインを調べて、使用法を確認する必要があります。
SecurityEvent | where EventID == 4688 | where Process has_any ("cmd.exe", "powershell.exe", "PowerShell_ISE.exe") | where isnotempty(CommandLine) | where CommandLine contains "Add-PSSnapin Microsoft.Exchange.Powershell.Snapin" | summarize FirstSeen = min(TimeGenerated), LastSeen = max(TimeGenerated) by Computer, Account, CommandLine
参考: https ://www.microsoft.com/en-us/security/blog/2021/03/02/hafnium-targeting-exchange-servers/
Comments