【ぽりもーふぃっくがたまるうぇあ】

ポリモーフィック型マルウェア とは?

最終更新:
💡 姿を変えて、固定パターンによる検出を難しくするマルウェア

悪意ある機能を保ちながら、暗号化キーや復号コードなどを変えて異なるバイナリを作り、固定したパターンによる検出を難しくするマルウェア。変化の仕方や時点は実装によって異なる。

📌 このページのポイント
姿を変え、固定パターン検出を難しくする 固定パターンの例 変化する例 ABCD バイト列 ABCD バイト列 同じ XYZ9 バイト列 QWE5 バイト列 異なる 暗号化された本体と復号部分を変える例 悪意ある機能は保つ / 検出不能とは限らない 複数の手掛かりで解析 復号後のコード・特徴・動作 メタモーフィック型は本体を書き換える
左右はファイルのバイト列を比較する例で、ABCDなどは実際のマルウェアのコードではない。灰は同じ列、橙は異なる列、青は検知側の解析。変化だけで検出不能になるわけではなく、復号部分が固定とも限らない。感染時以外に変化する例もある。
ひよこ ひよこ
ポリモーフィック型マルウェアって、普通のマルウェアと何が違うの?
ペンギン先生 ペンギン先生
悪意ある機能を保ちながら、ファイルのバイト列などを変えるんだ。登録済みの固定パターンだけで調べると見逃しやすくなる。ただし「普通のマルウェアは必ず同じコード」「ポリモーフィックなら絶対検出できない」と分けられるわけではないよ。
ひよこ ひよこ
どうやってコードを変えるのかな?
ペンギン先生 ペンギン先生
代表的な方式は、異なるキーで本体を暗号化し、復号する部分のコードも変えることだよ。実行時には復号して悪意ある機能を動かす。作成や更新の段階で違うファイルになる例もあり、変化するタイミングを感染のたびと一律には決められないんだ。
ひよこ ひよこ
それじゃウイルス対策ソフトじゃ捕まえられないの?
ペンギン先生 ペンギン先生
復号処理をエミュレートして現れた本体を調べたり、コードの特徴や動作を分析したりできるよ。MicrosoftのDexphot調査でも、ファイルが変化する攻撃に振る舞い検知などを組み合わせて対処している。ただし振る舞い検知だけで必ず検出できるという保証ではないんだ。
ひよこ ひよこ
もっと進化したやつもあるのかな?
ペンギン先生 ペンギン先生
関連する方式にメタモーフィック型があるよ。同じ機能を保ったまま、本体の命令などを書き換える方式なんだ。違いは「ポリモーフィックはエンジンが固定、メタモーフィックだけがエンジンを変える」ではない。復号部分を変える方式と、本体自体を書き換える方式の違いで考えると分かりやすいよ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「ポリモーフィック型マルウェア」って出てきたら「姿を変えて固定パターンの検出を難しくするマルウェア」と思えばだいたいOK!
📖 おまけ:英語の意味
「Polymorphic Malware」 = 多形態型の悪意あるソフトウェア
💬 ギリシャ語のpoly(多くの)とmorphe(形)が語源で、『多くの姿を持つ』という意味だよ

参考資料

← 用語集にもどる