Crypto in Malware / Reverse Engineering
Tip
AWSハッキングを学び、実践する:
HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)
Azureハッキングを学び、実践する:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricksをサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。
このサブセクションは、バイナリ内で crypto/compression を見かけたときに、それを素早く認識するための助けになります。
Identifying cryptographic / compression algorithms
Technique-first heuristics
- タイトなループ内で多数の shifts/rotates、XOR、32-bit 演算が見られる。
.dataにある lookup tables (S-boxes) またはランタイムで生成されるテーブル。0x100イテレーションを繰り返すループは RC4 を示唆する。
Windows crypto/compression APIs
CryptDeriveKey / CryptCreateHash
これらが使われている場合、第2引数は ALG_ID です:
.png)
Table: https://learn.microsoft.com/en-us/windows/win32/seccrypto/alg-id
RtlCompressBuffer / RtlDecompressBuffer
しばしば組み込みの Windows 圧縮 (LZNT1, XPRESS, など) を示します。
Constants & tables
時々、定数(またはテーブルの最初の dword)をオンラインで検索することでハッシュ/暗号をフィンガープリントできます。
.png)
AES テーブルの例:
.png)
RC4 recognition notes
RC4 はしばしば以下で認識できます:
- 256 イテレーションのループが2回(init + KSA)
- その後
% 256を使用し、データと keystream を XOR する PRGA ループ
Unpacking binaries
Technique
Packers はバイナリを変形させ、静的解析を誤誘導します(ジャンクコード、暗号化されたセクション、ランタイムでの unpacking)。目標は、次の瞬間を捉えることです:
- メモリに本物のコードを allocate/decrypt する
- それを実行可能にマークする
- そのコードへジャンプする
Identifying packed binaries
- strings がほとんどない(または packer の strings のみ)
- 多くの strings に xrefs がない(商用 packers)
- packer-ID ツールを使用:
- PEiD
- Exeinfo PE
Basic recommendations
- 分析は下から始めて上へ進む;unpackers はしばしば遅い段階でジャンプする。
JMP/CALL regパターンやスタックトリック(push addr; retn)を探す。VirtualAlloc/VirtualProtectにブレークポイントを置き、RWX 領域を追跡する。- ジャンプ後に突然 strings が爆発的に増えるのは、unpacked code に到達したことを示すことが多い。
- メモリをダンプし、PE-bear のようなツールでヘッダを修正する。
Tip
AWSハッキングを学び、実践する:
HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)
Azureハッキングを学び、実践する:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricksをサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。


