
ファームウェア攻撃は、悪名高いギガバイトUEFIファームウェアバックドアが示すように、ソフトウェアサプライチェーンに対して大きなリスクをもたらします。ファームウェアの脆弱性は通常検出が難しく、ほとんどのエンドポイントセキュリティソリューションのレーダーの下に存在し、OSを再インストールしても持続する可能性があります。この技術ブログ投稿では、ファームウェアバックドアがどのように操作するか、ギガバイト事例が業界を驚かせた理由、最先端のツールがどのようにしてこのような脅威を明らかにするか、セキュリティ専門家がこれらの高度な攻撃に対抗するためにできることについて学びます。初級から上級の概念をカバーし、実際の事例を解剖し、フォレンジックテクニックを実践的に紹介します。スキャンと自動化のための実用的なBashおよびPythonコードサンプルを添えて。
ファームウェアはハードウェアと直接やり取りするソフトウェアの最下層であり、通常はマザーボード、ディスクドライブ、ネットワークカードなどにある書き換え可能なフラッシュメモリチップに保存されています。このため、ファームウェアバックドアは非常に大きなリスクをもたらします。たった1つのファームウェア更新プログラムが侵害されると、秘密の通信経路が作成され、OSレベルの防御を回避し、すべてのドライブを消去しても持続的に存在し続けることが可能です。
最近の注目を集めたケース、特にギガバイトマザーボードのUEFIファームウェアバックドアは、信頼されているベンダーでさえ、脆弱なまたは悪意あるファームウェアを意図せず出荷する可能性があることを示しました。これは、現代のサプライチェーンセキュリティが直面する課題と堅牢なファームウェアフォレンジックの必要性を浮き彫りにしています。
ファームウェアは現代のコンピューティングプラットフォームをブートストラッピングするために重要です。起動時にハードウェアを初期化するだけでなく、ベンダーがサインしたパッケージ経由で安全に自分を更新することもできます。しかし、ファームウェアの遍在性と複雑性は大きなリスクをもたらします。
サプライチェーンは、製品の完成品を一緒に提供するサプライヤー、開発者、統合者のネットワークです。いずれかのリンクが脆弱性を導入すると、その原因が意図的であれ、偶然であれ、すべての下流デバイスが侵害される可能性があります。
2023年5月、EclypsiumとReversingLabsの研究者は驚くべき発見を公表しました: 270以上のモデルのギガバイトマザーボードがリモートで悪用可能な隠れたバックドアを備えて出荷されていました。
ギガバイトバックドアは、通常マザーボードのSPIフラッシュチップにあるUEFIファームウェアバイナリから発生しました。これには以下のロジックが含まれていました。
GigabyteUpdateService.exe または類似のものは、ギガバイトのクラウドサーバーからHTTP(暗号化されていない!)でコードを取得し、SYSTEM特権でホスト上で実行しました。これが全てユーザーの明示的な同意なしに起こり、アップデートエンドポイントは平文のHTTPチャンネルを使用していたことは、現代のセキュリティの想定を覆します。
+-----------------------+
| UEFIファームウェア |----> インストール
+-----------------------+ (OS起動時)
|
v
+--------------------------+
| GigabyteUpdateService.exe|
+--------------------------+
|
v
HTTP経由でアップデートを取得 ---> SYSTEMとして実行
ギガバイトバックドアは我々のソフトウェアサプライチェーンの脆弱性を示しています:
ファームウェアのインプラントを検出し解剖するには、独自のフォレンジックが必要であり、通常のOSベースのマルウェア分析とは異なります。比較からELFの逆解析による実践的な分析を探求します。
デバイスに依存して、ベンダーツールや低レベルツールのflashromを使ってファームウェアを抽出します。
# Linuxで、root権限とサポートされているハードウェア
sudo flashrom -p internal -r gigabyte_spi_dump.bin
悪意のある改変を特定するため、抽出されたファームウェア画像を比較します。
# バイナリレベルでの差分
cmp -l firmware_v1.bin firmware_v2.bin
# hd、xxd、またはradare2を使用した視覚的差分
xxd firmware_v1.bin > f1.hex
xxd firmware_v2.bin > f2.hex
diff f1.hex f2.hex
binwalkを使用してファームウェアセクションをカーヴします。
# UEFIモジュールと圧縮エンティティの抽出
binwalk -e gigabyte_spi_dump.bin
# カーヴされたファイルをリストし、PE/ELFセクションを分析します:
ls _gigabyte_spi_dump.bin.extracted/
file _gigabyte_spi_dump.bin.extracted/*
攻撃者はしばしばモジュールを追加または変更します。ビルトタイムスタンプを抽出し、サプライチェーンイベントを整合させることにより、IRチームは組織のコンテキスト内で疑わしい変更を位置付けることができます。
import pefile
pe = pefile.PE("GigabyteUpdateService.exe")
print("コンパイル時間:", pe.FILE_HEADER.TimeDateStamp)
マニフェストファイルやUEFIカプセルメタデータを比較します。
strings firmware_old.bin | grep -i "Build" > old_buildinfo.txt
strings firmware_new.bin | grep -i "Build" > new_buildinfo.txt
diff old_buildinfo.txt new_buildinfo.txt
多くのUEFIファームウェアコンポーネントは標準のPE32(Windows)またはELF(Linux)バイナリです。
find _extracted_firmware/ -type f | xargs file | grep -E "ELF|PE32"
例えば、疑わしいバイナリの検査:
radare2 -A suspicious_module.efi
# あるいは
ghidraRun
# その後、suspicious_module.efiを読み込み、逆コンパイルします。
strings suspicious_module.efi | grep -i -E "http|socket|connect"
ファームウェアコンテキストでの疑わしいネットワーキングロジックは危険信号です。
ハードコードされたC2 IPまたはHTTPエンドポイントを検出するためのYARAルールを作成します。
rule GigabyteUEFI_HTTP {
strings:
$http = "http://mb.download.gigabyte.com"
condition:
$http
}
ヒットをスキャンします。
yara GigabyteUEFI_HTTP.yara _extracted_firmware/
ボムシェル事例、フレームワークデバイスで発見されたもう一つのサプライチェーンバックドアの例は、今回は署名されたUEFIドライバーにあります。このドライバーは、顧客に直接出荷され、その署名により誤った信頼感がもたらされました。
セキュリティチームはUEFI/BIOS用の専門スキャナーにますます依存するようになっています。
例: CHIPSECを用いたスキャン
# 依存関係をインストール
sudo apt install python3-pip build-essential
pip3 install chipsec
# 基本チェックの実行
sudo chipsec_util uefi decode
sudo chipsec_main -m tools.uefi.find_guids
EclypsiumまたはEDRのログが疑わしい持続性を示した場合、プログラムで出力を解析します。
# サンプル出력
cat eclypsium_scan.log | grep -i suspicious
import re
with open("chipsec_results.txt") as f:
for line in f:
if "suspicious" in line.lower() or re.search(r"http://", line):
print("ALERT:", line.strip())
ls -l /Windows/System32/drivers/ | grep -v "Microsoft"
title: 未承認のファームウェアアップデータを検出
logsource:
product: windows
service: system
detection:
selection:
Image|contains: 'GigabyteUpdateService.exe'
ParentImage|contains: 'wininit.exe'
condition: selection
level: high
ファームウェアレベルのサプライチェーン脅威に対抗するためには、多面的なアプローチが必要です。
された(HTTPS、コード署名済み)チャンネル経由で提供されるべきです。
ギガバイトとボムシェル事件のようなファームウェアのバックドアは、攻撃者と防御者の両方にとって新しいフロンティアを表しています。ファームウェアはハードウェアとソフトウェアの間を見えない架け橋であり、サプライチェーンが侵害されると、どんなにセキュリティ意識が高い組織でも容易に脆弱です。
学んだ主要な教訓:
ファームウェア分析技術をマスターし、サプライチェーン管理のセキュリティファースト文化を採用することにより、組織はこれらの新たな脅威に対抗し、将来のバックドアの潜在的な影響を軽減できます。
もっと実践的なファームウェアフォレンジックやサプライチェーンセキュリティのウォークスルーを見たいですか?コメントを残すかTwitterで接続してください!
このコンテンツが価値あるものだと感じたなら、私たちの包括的な47週間のエリートトレーニングプログラムで何が達成できるか想像してみてください。ユニット8200の技術でキャリアを transformed した1,200人以上の学生に参加しましょう。