Trusted Design

T1116 - Code Signing

概要

Code signing provides a level of authenticity on a binary from the developer and a guarantee that the binary has not been tampered with. (Citation: Wikipedia Code Signing) However, adversaries are known to use code signing certificates to masquerade malware and tools as legitimate binaries (Citation: Janicab). The certificates used during an operation may be created, forged, or stolen by the adversary. (Citation: Securelist Digital Certificates) (Citation: Symantec Digital Certificates)

Code signing to verify software on first run can be used on modern Windows and macOS/OS X systems. It is not used on Linux due to the decentralized nature of the platform. (Citation: Wikipedia Code Signing)

Code signing certificates may be used to bypass security policies that require signed code to execute on a system.

管理者によるコメント

T1116は「Code Signing(コード署名)」として定義されていた、主に「防御回避(Defense Evasion)」戦術に分類される非常に重要なテクニックです。

現在は、アクセストークンや証明書といった暗号資産(クレデンシャル)を悪用する大きな分類である T1553.002「Subvert Trust Controls: Code Signing(信頼制御の覆滅:コード署名)」 にサブテクニックとして整理・統合されています。

WindowsやmacOSなどの現代のOSが持つ「正規の証明書でサイン(署名)されているプログラムは安全である」という信頼チェーンの仕組みを逆手に取り、マルウェアに不正なデジタル署名を施すことで、セキュリティ製品の検知をすり抜けて実行させる手法です。

1. 概要(攻撃者は何を実現できるのか?)

この手法で攻撃者は、「ウイルス対策ソフトやOSの強力なブロック機能を『正規の安全なソフトウェア』のふりをして完全に無力化し、標的のパソコンでマルウェアを確実に起動させること」を実現します。

2. 攻撃の仕組みと流れ(悪用の3大パターン)

攻撃者がマルウェアにデジタル署名を持たせるアプローチには、主に以下の3つの手口があります。

パターンA:正規の証明書(秘密鍵)の窃取

  1. 開発企業への侵入:
    攻撃者はまず、正規のソフトウェア開発企業やゲーム会社などのネットワークに侵入します。

  2. 証明書の盗み出し:
    開発環境やビルドサーバーから、アプリに署名するための「コード署名証明書(PFXファイルなど)」と、それに紐づく秘密鍵を窃取します。

  3. マルウェアへの署名:
    自陣に戻り、盗んだ本物の証明書を使ってマルウェアに署名を施します。これにより、世界中のOSやセキュリティソフトから見て「その有名企業が作った本物のソフト」と区別がつかない凶悪なマルウェアが完成します。

パターンB:不正な認証局(CA)の悪用や自己署名

  1. ダミー企業の設立:
    攻撃者が架空のソフトウェア会社を設立し、正規の認証局(DigiCertやSectigoなど)から合法的にコード署名証明書を購入・取得します。

  2. ルート証明書の強制インストール:
    あるいは、ターゲットの端末に一度侵入した後に、攻撃者自身が作成した「オレオレ認証局(自己署名)」のルート証明書を、OSの信頼された証明書ストアに強制的に登録(インジェクション)します。これにより、以降はその偽の認証局で署名したマルウェアがすべてシステム上で「公式」として認められるようになります。

3. 防御・対策

「署名があるから安全」という盲信を捨て、発行元の信頼性やプロセスの挙動を多層的に検証する必要があります。

4. 重要ポイント

5. 関連する主なCWE

6. 関連する代表的な事例

歴史に名を残す大規模なサイバー攻撃やサプライチェーン攻撃において、このT1116(現T1553.002)は決定打として使われています。

実務上のアドバイス

インシデント分析において、「未知の不審なファイルが見つかったが、有効なデジタル署名がついているからこれは白(安全)だろう」と即断するのは現代の脅威環境では致命傷になり得ます。

特に、署名の日時(タイムスタンプ)が数日前のものだったり、発行元の企業名が自社の業務と全く関係のない海外の零細企業だったりした場合は、本手法(T1116)による署名の悪用や、証明書発行プロセスの悪用を強く疑う必要があります。

分析

この攻撃手法を利用する脅威アクター

関連する CVE

この攻撃手法に関連する CVE は登録されていません。

攻撃手法 – 脅威アクター Graph


← Technique一覧に戻る ← Tactics一覧に戻る