静的解析:文字列、ハッシュ、PEヘッダー
マルウェアを実行せずに、文字列を抽出し、ハッシュを計算し、PEヘッダーを解析して特徴を把握します。
「静的解析:文字列、ハッシュ、PEヘッダー」はCoddyKit上の無料Cyber Security Academyレッスンです。 これはレッスン1/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはCyber Security Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Cyber Security Academyコースには全4レッスンが含まれています。
静的解析とは
静的解析では、マルウェアを実行せずに調査します。実行のリスクを負う前に、ファイル自体から文字列、インポート、ヘッダー、メタデータなどの情報を抽出し、その機能を把握します。
ファイルハッシュの計算
サンプルをMD5、SHA-1、SHA-256でハッシュ化し、一意のフィンガープリントを作成します。ハッシュをVirusTotalに送信すると、ファイルを実行せずに検知率を確認し、関連するサンプルを見つけられます。
sha256sum malware.exe
md5sum malware.exe文字列の抽出
stringsユーティリティは、バイナリに埋め込まれた印字可能なASCIIおよびUnicodeのテキストを抽出します。意図を明らかにするURL、ファイルパス、レジストリキー、ミューテックス名、エラーメッセージを探してください。
strings -n 8 malware.exe | grep -iE "(http|reg|cmd|pass)"PEファイル形式の概要
Windowsの実行ファイルはPortable Executable形式を使用します。MZヘッダー、DOSスタブ、PEシグネチャ、COFFヘッダー、オプショナルヘッダー、セクションテーブルによって、OSがファイルをメモリにマッピングする方法が記述されています。
セクションの解析
.text(コード)、.data(初期化済みデータ)、.rdata(読み取り専用)、.rsrc(リソース)などのPEセクションから、ファイルの構造が分かります。.textのエントロピーが高い場合は、パッキングまたは暗号化を示している可能性があります。
# Using pefile Python library
import pefile
pe = pefile.PE("malware.exe")
for section in pe.sections:
print(section.Name, section.get_entropy())インポートアドレステーブル(IAT)
IATには、バイナリがインポートするすべてのWindows API関数が一覧表示されます。VirtualAlloc、WriteProcessMemory、CreateRemoteThreadが見つかる場合は、プロセスインジェクションが示唆されます。WinINetのインポートはC2通信を示唆します。
ツール:PEStudioとCFF Explorer
PEStudioは、ハッシュチェック、文字列抽出、IAT解析、VirusTotal検索を1つのGUIに統合しています。CFF Explorerでは、PEヘッダーを編集し、リソースを調査できます。どちらも無料で、マルウェア解析に不可欠なツールです。
パッカーの検知
パックされたマルウェアは、実行時にアンパックするスタブによって実際のインポートを隠します。兆候には、少数のインポート(LoadLibrary + GetProcAddress)、.textの高いエントロピー、UPX0のような通常とは異なるセクション名、逆アセンブラーで認識可能なコードパターンが見つからないことなどがあります。
難読化された文字列のためのFLOSS
MandiantのFLOSS(FLARE Obfuscated String Solver)は、stringsでは見逃されるスタックベース、デコード済み、タイトなループでデコードされる文字列を自動的に抽出し、難読化されたサンプルの静的解析範囲を大幅に広げます。
リソースセクションの解析
マルウェアは、ペイロード、設定ファイル、またはPEファイルを.rsrcセクション内に保存することがよくあります。Resource Hackerまたはpecheckを使用して埋め込まれたリソースを抽出し、二次ペイロードを解析してください。
静的解析レポートの作成
サンプルのハッシュ値、コンパイル日時、リンカーのバージョン、注目すべきインポート、疑わしい文字列、検出されたパッカー、リソースの異常、VirusTotalのスコアを記録します。このベースラインを動的解析に役立てます。
理解度チェック
プログラムの実行可能コードを通常含む PE セクションはどれですか?
まとめ
静的解析では、マルウェアを実行せずに詳細な全体像を把握します。ハッシュ値、文字列、PE ヘッダー解析、IAT の検査、パッカーの検出を組み合わせることで、マルウェアの機能を明らかにし、より深い調査の方針を立てられます。
よくある質問
「静的解析:文字列、ハッシュ、PEヘッダー」レッスンは無料ですか?
はい。「静的解析:文字列、ハッシュ、PEヘッダー」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Cyber Security Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Cyber Security Academyコースには全4レッスンが含まれています。
「静的解析:文字列、ハッシュ、PEヘッダー」で何を学びますか?
マルウェアを実行せずに、文字列を抽出し、ハッシュを計算し、PEヘッダーを解析して特徴を把握します。 ブラウザで直接実行するハンズオンコードでCyber Security Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Cyber Security Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのCyber Security Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/4です。
「静的解析:文字列、ハッシュ、PEヘッダー」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このCyber Security Academyレッスンでコードを書いて実行できますか?
はい。すべてのCyber Security Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- 静的解析:文字列、ハッシュ、PEヘッダー
- サンドボックスでの動的解析
- 振る舞いに基づくIOC:レジストリ、ネットワーク、ファイルの痕跡
- マルウェア検知のためのYARAルール