パーシステンスとは?サイバー攻撃者がシステムに居座り続ける手法

システム開発・テクノロジー
パーシステンスとは?ざっくりと3行で
  • サイバー攻撃者やマルウェアがシステムの再起動・ログオフ・パスワード変更などが行われても侵入した状態を維持し続けるための技術・仕組みのこと
  • レジストリの自動起動登録・スケジュールタスクの悪用・サービスへの偽装・スタートアップフォルダへの配置などWindowsの正規機能を悪用して再起動後も自動的に起動する手口が代表的だ
  • MITRE ATT&CKフレームワークでは「Persistence(TA0003)」として200以上のサブテクニックが分類されており、サイバーセキュリティの防御・検出の重要な対象領域だ

【深掘り】これだけ知ってればOK!

パーシステンスの代表的な手法を理解しよう。Windowsレジストリの自動起動キー:HKLM\Software\Microsoft\Windows\CurrentVersion\Runに悪意のあるファイルのパスを登録して起動時に自動実行させる。スケジュールタスク:Windowsのタスクスケジューラに定期実行タスクとして登録する。サービスへの偽装:正規のWindowsサービスに似た名前で悪意のあるサービスを登録する。DLLハイジャック:正規プログラムが読み込むDLLファイルを偽のものに差し替える。

パーシステンスはATT&CK(サイバー攻撃の戦術・技術・手順を体系化したMITREのフレームワーク)において「初期アクセス→実行→パーシステンス→特権昇格→防衛回避…」という攻撃チェーンの中で重要なフェーズだ。攻撃者がシステムに初めて侵入した後、再起動や対策で排除されないよう永続化することが攻撃の長期化につながる。

パーシステンスの検出方法として、自動起動ポイントの定期監査が最も基本的な対策だ。WindowsのAutoruns(Microsoftの無料ツール)はレジストリの自動起動エントリ・サービス・スケジュールタスクを一覧表示して疑わしい項目を検出できる。EDR(Endpoint Detection and Response)も自動起動ポイントへの変更をリアルタイムで検知して警告を発する。

Linuxでのパーシステンスの主な手法として、crontabへの登録(定期実行タスクとして悪意のあるコマンドを登録)・/etc/rc.localへの追記(起動時に実行されるスクリプトへの追記)・sshの公開鍵の追加(攻撃者の公開鍵を~/.ssh/authorized_keysに追加してSSHでいつでもアクセスできるようにする)・PAMモジュールの改ざん(認証機構を乗っ取る)がある。Linuxサーバーの不審なcrontabエントリとSSH公開鍵は定期的に確認することが重要だ。

パーシステンスへの対応としてインシデントレスポンスの文脈では、マルウェアを削除するだけでは不十分で、全てのパーシステンスメカニズムを特定・排除することが完全な封じ込めに不可欠だ。1つでも見落とすと再起動後に感染が再発する。フォレンジック調査でAutoruns・スケジュールタスク・サービス・crontabを徹底的に確認することが重要だ。

よくある誤解

マルウェアを削除すればパーシステンスも消えると思っている

マルウェアの実行ファイルを削除しても、レジストリの自動起動エントリ・スケジュールタスク・偽装サービスが残っていると再起動後に別の場所からマルウェアが再起動する可能性がある。インシデント対応ではパーシステンスメカニズム全体の特定と排除が必要だ。

パーシステンスはWindowsだけの問題だと思っている

LinuxサーバーでもcrontabへのエントリーやSSH公開鍵の追加・PAMモジュールの改ざんなどのパーシステンス手法が多数存在する。特にクラウドのLinuxサーバーでは攻撃者がSSHアクセスを永続化するために公開鍵を追加するケースが多い。

会話での使われ方

ITKAGYO運営者デプロイ太郎のアイコン画像

マルウェアを削除したのに再起動すると元に戻ります。Autorunsで自動起動エントリを確認してください。どこかにパーシステンスが残っています。

セキュリティエンジニアがマルウェア感染後の対応でパーシステンスの確認を担当者に指示している場面。

ITKAGYO運営者デプロイ太郎のアイコン画像

不審なスケジュールタスクが見つかりました。1時間ごとに外部のIPへ接続するタスクが登録されています。これがC2との通信手段で、パーシステンスも兼ねていたようです。

インシデント調査担当者がパーシステンスの発見と攻撃者のC2通信の仕組みを報告している場面。

ITKAGYO運営者デプロイ太郎のアイコン画像

Linuxサーバーに不審なSSH公開鍵が追加されていました。攻撃者がパーシステンスとして自分の公開鍵を仕込んでいたようです。authorized_keysを定期監査する仕組みを入れましょう。

セキュリティエンジニアがLinuxサーバーのパーシステンス発見と再発防止策を提案している場面。

【まとめ】3つのポイント

  • 再起動後も攻撃者の侵入状態を維持するために使われる技術の総称:レジストリ・スケジュールタスク・サービス・crontabなどOSの正規機能を悪用して自動起動を確保するパーシステンスは、攻撃の長期化と隠蔽を可能にする重要な攻撃フェーズだ
  • Autorunsと定期監査でパーシステンスメカニズムを検出する:MicrosoftのAutorunsツールや定期的な自動起動ポイントの監査、EDRによるリアルタイム検知を組み合わせることでパーシステンスの設置と検出の両面を強化できる
  • インシデント対応ではパーシステンス全体の排除まで完了させる:マルウェアの実行ファイル削除だけでは不十分で、全ての自動起動エントリ・偽装サービス・スケジュールタスクを特定・排除するまでインシデント対応は完了しない

よくある質問

Q
MITRE ATT&CKとは何ですか?
A

Mitre CorporationがサイバーセキュリティのためにまとめたサイバーADVERSARYの戦術(Tactics)・技術(Techniques)・手順(Procedures)のフレームワークです。攻撃者が実際に使う手法を体系化したもので、セキュリティ製品の評価・脅威ハンティング・インシデント対応に活用されています。

Q
WindowsのAutorunsはどこから入手できますか?
A

MicrosoftのSysinternalsツールスイートの一部として無料で提供されています。「Microsoft Sysinternals Autoruns」で検索してMicrosoftの公式サイトからダウンロードできます。管理者権限で実行するとレジストリの自動起動エントリ・スケジュールタスク・サービス・ブラウザ拡張など全ての自動起動ポイントを一覧表示できます。

Q
パーシステンスとラテラルムーブメントはどう違いますか?
A

パーシステンスは「侵入した場所に居座り続けるための技術」です。ラテラルムーブメントは「最初に侵入した端末から組織内の他の端末・システムへ横移動する技術」です。どちらもサイバーキルチェーン・MITRE ATT&CKの重要なフェーズで、攻撃の深化と長期化に関わります。

Q
クラウドのIaaSでのパーシステンスはどんな手法がありますか?
A

AWSであれば、不正なIAMユーザーの作成・既存IAMロールへの権限追加・EC2インスタンスのユーザーデータへの悪意のあるスクリプト追加・CloudWatchのイベントルールでの定期実行などが主な手法です。クラウドのパーシステンスはCloudTrailのログ監査とIAM権限の定期棚卸しで検出・防止できます。

この用語と一緒に知っておきたい用語

用語 この記事との関連
マルウェア マルウェアとの関係を知ると全体像がつかみやすくなります。Malicious Softwareの略(読み:マルウェア)。コンピュータやネットワークに害を与える悪意あるソフトウェアすべての総称だ
公開鍵 本記事のテーマと実務上セットで使われることが多い用語です。公開鍵の主要な特徴と用途を理解することで、関連する技術・制度・概念を正確に把握できるようになる
インシデント インシデントを押さえると本記事の理解がさらに深まります。インシデントの主要な特徴と用途を理解することで、関連する技術・制度・概念を正確に把握できるようになる
サーバー サーバーを押さえると本記事の理解がさらに深まります。ネットワークを通じて情報やサービスを提供する側のコンピューターのこと。レストランで料理を運んでくれる給仕係(server)をイメージするとわかりやすいよ
サイバー攻撃 次のステップとしてサイバー攻撃を学ぶと知識が広がります。ネットワークを通じてコンピュータ・システム・データに対して情報の窃取・破壊・改ざん・妨害を行う悪意ある行為のこと

【出典】参考URL

https://attack.mitre.org/tactics/TA0003/ :MITRE ATT&CK「Persistence」のページ
https://docs.microsoft.com/ja-jp/sysinternals/downloads/autoruns :Microsoft Sysinternals Autorunsのダウンロードページ
https://www.crowdstrike.com/cybersecurity-101/persistence-mechanism/ :CrowdStrikeによるパーシステンスの解説

コメント

「IT用語、難しすぎて心が折れそう……」という方のための、ハードル低めな用語辞典です。

情報レベルは「基礎中の基礎」。会話を止めないためのエッセンスだけを抽出しています。分かりやすさを追求するあまり、時々例え話が暴走しているかもしれませんが、そこは「ほどよく」聞き流していただけると幸いです。
ほどよくIT用語辞典システム開発・テクノロジー
デプロイ太郎のSNSを見てみる!!