「ウイルス対策ソフトを入れているから大丈夫」。少し前まではそれで通じましたが、最近は「EDRは入っていますか」と聞かれる場面が増えました。ゼロトラストの話の中でも、EDRはほぼ必ず登場します。
この記事では、従来のウイルス対策ソフト(EPP)とEDRは何が違うのかを、たとえと図で整理します。そのうえで、EDRがどんな情報を集め、どういう考え方(ロジック)で「怪しい」と判断しているのかを、実際の攻撃の流れに沿って説明します。特定の製品の使い方ではなく、EDRに共通する仕組みを中心に書いています。
- ゼロトラストの中でEDRが担う役割
- EPP(従来のウイルス対策)が見ているものと、すり抜けられる理由
- EDRが不審な動きを見つける仕組み(記録 → つなげる → 判定 → 知らせる → 止める)
- 実際の攻撃の流れで見る、EPPとEDRの守る範囲の違い
- EDRを入れた後に必要な運用
ゼロトラストとEDR:入られる前提で考える
ゼロトラストには、「すべてのアクセスを毎回確かめる」「必要最小限の権限だけを与える」「侵入されている前提で備える」という3つの考え方があります。EDRが受け持つのは、3つ目の「侵入されている前提で備える」です。
どれだけ入口を固めても、攻撃者が社内のPCに入り込む可能性はゼロにはなりません。だからこそ、「入られたらすぐに気づき、被害が広がる前に止める」仕組みが必要になります。それが、PCやサーバなどの端末(エンドポイント)の中を見張るEDR(Endpoint Detection and Response)です。
建物の警備でたとえると、EPPとEDRの違いは次の図のようになります。
EPPは建物の入口にいる門番です。手配書(既知のマルウェアの特徴)と照らし合わせ、怪しいものを入れないようにします。EDRは建物の中の防犯カメラと警備員です。門番をすり抜けた人がどこへ行き、何をしたかを記録し続け、怪しい動きに気づいたら駆けつけてその部屋を閉め切ります。
EPP(従来のウイルス対策)は何を見ているのか
EPP(Endpoint Protection Platform)は、いわゆるウイルス対策ソフトの発展形です。ファイルが入ってきたとき、または実行されようとしたときに、それが悪いものかどうかを判定し、悪ければ止めます。判定は、おおむね次の順番で行われます。
| 判定の方式 | 見ているもの | たとえ |
|---|---|---|
| シグネチャ(パターン) | 既知のマルウェアのハッシュ値やコードの特徴と一致するか | 手配書の顔写真と照合する |
| ヒューリスティック・機械学習 | 未知のファイルでも、マルウェアによくある特徴を持っているか | 「手配書にはないが、いかにも怪しい格好」を見分ける |
| 振る舞い検知 | 実行されたプログラムが、その場で明らかに危険な動きをしないか | 入館後すぐに暴れ出した人を取り押さえる |
最近のEPPは機械学習や振る舞い検知も備えており、「次世代アンチウイルス(NGAV)」とも呼ばれます。ただし基本は、1つのファイル、1つの動きを見て、その場で白か黒かを決める「点の判断」です。
EPPがすり抜けられる理由
今の攻撃は、点の判断では黒と言い切れないように作られています。代表的なのは次のような手口です。
| 手口 | 内容 | 点の判断で止めにくい理由 |
|---|---|---|
| 正規ツールの悪用 | PowerShellやコマンドプロンプトなど、Windowsに最初から入っているツールで攻撃する | ツール自体は正規のもので、管理者も普段使っている |
| ファイルレス攻撃 | 攻撃用のプログラムをディスクに保存せず、メモリ上だけで動かす | スキャンするファイルが残らない |
| 盗んだIDでのログイン | フィッシングなどで盗んだIDとパスワードで、正規の利用者として入る | ログインそのものは正しい手順で行われる |
| 未知の攻撃 | まだ誰も知らない脆弱性や、新しく作られたマルウェアを使う | 手配書(シグネチャ)がまだない |
どれも、1つ1つの動きだけを見ると「普通の操作」に見えます。ここで必要になるのが、動きを記録して、前後をつなげて判断するEDRです。
EPPとEDRの違い
| EPP(従来のウイルス対策) | EDR | |
|---|---|---|
| 目的 | 侵入を防ぐ(予防) | 侵入に気づき、調べて、止める(検知と対応) |
| 見るタイミング | ファイルが入ってくる・実行される瞬間 | 常に。過去の記録もさかのぼって見る |
| 見るもの | ファイルとその場の動き | プロセス、通信、ファイル、レジストリ、ログオンなど端末で起きたことすべて |
| 判断の単位 | 点(1つのファイル・1つの動き) | 線(つながった一連の動き) |
| 結果 | 自動でブロック・隔離して終わり | アラートと調査材料(いつ、どこから、何をしたか)を出し、隔離などで対応する |
| 使う人 | 基本は自動で動き、人はあまり触らない | アラートを見て判断する人(情シス、SOC など)が必要 |
EPPとEDRはどちらかを選ぶものではなく、組み合わせて使います。入口のEPPで大半のマルウェアを止め、すり抜けたものをEDRで見つける、という二段構えです。最近は、1つのエージェント(端末に入れるソフト)でEPPとEDRの両方を提供する製品が多くなっています。
EDRが不審な動きを見つける仕組み
ここからがEDRの中身です。EDRの処理は、大きく5つの段階に分けられます。
端末の動きを細かく記録する
EDRのエージェントは、端末の中で起きたことを、ドライブレコーダーのように記録し続けます。悪いかどうかに関係なく、まず記録するのがポイントです。記録する主な情報は次のとおりです。
| 記録するもの | 具体的な中身 |
|---|---|
| プロセスの起動 | どのプログラムが、どのプログラムから(親子関係)、どんなコマンドライン引数で起動されたか、ファイルのハッシュ値 |
| ファイル | 作成・変更・削除・名前の変更 |
| レジストリ | 自動起動の設定などの書き換え |
| ネットワーク | どのプロセスが、どのIPアドレス・ドメインと通信したか |
| ログオン | 誰が、いつ、どこから、どの方法でログオンしたか |
| スクリプト・メモリ | PowerShellなどで実行されたスクリプトの中身、ほかのプロセスのメモリへの読み書き |
Windowsには、PowerShellのスクリプトやOfficeのマクロの内容を、ウイルス対策製品に検査させるAMSI(Antimalware Scan Interface)という仕組みがあります。ファイルを保存しないファイルレス攻撃でも、実行される中身を確認できる手がかりの1つです。
動きをつなげて「流れ」にする
集めた記録は、管理サーバやクラウドに送られ、プロセスの親子関係や時刻でつなぎ合わされます。これで「何が、何を起動して、その後何をしたか」という一連の流れ(プロセスツリー)が見えるようになります。EDRの判定の多くは、この流れを材料にしています。
図4の例では、メールの添付ファイルを開いたことをきっかけに、WordがPowerShellを起動し、PowerShellが外部からファイルを取ってきて実行し、最後にパスワード情報が置かれたLSASS(Windowsのログオン情報を扱うプロセス)のメモリを読もうとしています。PowerShellの起動も、外部との通信も、それだけなら普段の業務でも起こります。しかし、この順番でつながると、典型的な攻撃の流れになります。
いくつかの見方で怪しさを判定する
EDRは、つながった記録をいくつかの見方で調べ、怪しさを判定します。製品によって呼び方は違いますが、考え方はおおむね次の3つと、それらをまとめる「相関」です。
| 見方 | どう判断するか | 得意なもの |
|---|---|---|
| IOCとの照合 | IOC(Indicator of Compromise、侵害の痕跡)は、既知の攻撃で使われたファイルのハッシュ値、IPアドレス、ドメインなどです。記録の中にこれらと一致するものがあれば怪しいと判断します。過去の記録にさかのぼって照合できるのがEPPとの違いです。 | すでに知られている攻撃。「先週から同じ攻撃が来ていなかったか」の確認 |
| 振る舞いのルール | 「Officeが文書を開いた直後にPowerShellを起動した」のように、攻撃者がよくやる動きやその組み合わせをルールにしておき、一致したら検知します。製品によってはIOA(Indicator of Attack、攻撃の兆候)とも呼びます。 | 正規ツールの悪用、ファイルレス攻撃、未知のマルウェア |
| 機械学習・普段との違い | 大量の攻撃データから学んだモデルや、その端末・ユーザーの普段の動きと比べて、「いつもと違う」「見たことがない」ものを見つけます。 | いつもと違う時間・場所からのログオン、組織内で初めて見るプログラム |
| 相関 | 上の3つで見つけた小さな怪しさを、同じ流れ・同じ端末・同じユーザーでまとめ、1つのインシデントとして重要度を付けます。 | 1つ1つは弱い兆候の組み合わせ |
振る舞いのルールの具体例を挙げます。左端の列は、攻撃者の手口を整理した MITRE ATT&CK という枠組みでの分類です。多くのEDRは、アラートにこの分類を表示します。
| MITRE ATT&CK の例 | 記録に残った動き | なぜ怪しいか |
|---|---|---|
| T1566.001 添付ファイルによるフィッシング T1059.001 PowerShell | WordやExcelがPowerShellやコマンドプロンプトを起動した | 文書を開いただけでコマンドが動くことは、普段の業務ではほとんどない |
| T1059.001 PowerShell | PowerShellが、エンコード(変換)された長いコマンドを実行し、外部からファイルを取得した | 中身を隠して外部から攻撃ツールを持ち込む、よくある手口 |
| T1003.001 認証情報の取得(LSASS) | ほかのプロセスがLSASSのメモリを読み取った | ログオン中のユーザーの認証情報を盗む典型的な手口 |
| T1490 システム回復の妨害 | vssadmin delete shadows でシャドウコピーを消した | バックアップからの復元を妨げる。ランサムウェアが暗号化の前によく行う |
| T1486 データの暗号化 | 短い時間に大量のファイルが書き換えられ、拡張子が変わった | ファイルを暗号化している可能性がある |
| T1021 リモートサービス | 普段使わないPCへ、管理者のアカウントでリモートログオンした | 盗んだIDで、ほかの端末に広がろうとしている可能性がある |
アラートと調査材料を出す
判定の結果、怪しいと判断したものはアラートになります。EDRのアラートは「ウイルスを見つけました」で終わらず、図4のようなプロセスツリー、時系列の記録、関係する端末やユーザー、ATT&CKの分類、重要度などがまとめて表示されます。担当者は、これを見て「どこから入り、何をして、どこまで広がったか」を調べます。
隔離・停止で被害を止める
攻撃と判断したら、EDRの管理画面から端末に指示を出して、被害の広がりを止めます。主な対応は次のとおりです。製品やライセンスによって、使える機能は異なります。
| 対応 | 内容 |
|---|---|
| 端末の隔離 | 端末をネットワークから切り離します。EDRの管理サーバとの通信だけは残すので、隔離したまま調査や復旧を続けられます。 |
| プロセスの停止・ファイルの隔離 | 悪いプロセスを止め、悪いファイルを隔離します。 |
| アプリの実行制限 | 許可したプログラム以外を動かせないようにします。 |
| リモートでの調査 | 担当者がリモートで端末に入り、ファイルやログを集めたり、コマンドを実行したりします。 |
| 自動調査・自動対応 | 設定したルールに沿って、調査や隔離をEDRが自動で行います。 |
| IOCの登録 | 見つけたファイルのハッシュ値や通信先を登録し、ほかの端末でも検知・ブロックします。 |
実際の攻撃の流れで見るEPPとEDRの範囲
ランサムウェア攻撃のよくある流れに沿って、EPPとEDRがそれぞれどこを受け持つのかを見てみます。
| 攻撃の段階 | 攻撃者の動き | EPPから見ると | EDRから見ると |
|---|---|---|---|
| ① 侵入 | マクロ付きの文書をメールで送る | 既知のマルウェアなら止められる | どのメールの、どの添付から始まったかを記録 |
| ② 実行 | マクロからPowerShellを起動する | PowerShellは正規のツールなので止めにくい | 「OfficeがPowerShellを起動」というルールに一致 |
| ③ 取得 | メモリ上で攻撃ツールを動かす | ファイルが残らないと見えにくい | スクリプトの中身や外部との通信を記録 |
| ④ 窃取 | LSASSのメモリから認証情報を盗む | 既知のツールなら止められることもある | LSASSへのアクセスとして検知 |
| ⑤ 横展開 | 盗んだIDでほかのPCにログオンする | 正規のログオンなので見えない | 普段と違うログオンとして検知。どの端末に広がったかがわかる |
| ⑥ 目的達成 | シャドウコピーを消し、ファイルを暗号化する | ランサムウェア本体が既知なら止められる | シャドウコピーの削除や大量の書き換えで検知し、端末を隔離 |
ポイントは、EDRなら②や③の段階、つまり被害が出る前に気づける可能性があることです。仮に⑥まで進んでも、記録が残っているので「最初にどこから入ったか」「ほかにどの端末が触られたか」を後から調べられます。
EDRを入れた後に必要なこと
EDRは「入れれば自動で全部守ってくれる」ものではありません。アラートを見て、本当に攻撃なのか、業務で使っている正規の操作なのかを判断する人が必要です。たとえば、管理者が保守のためにPowerShellのスクリプトを実行しただけでも、アラートが出ることがあります。
| 運用で必要なこと | 内容 |
|---|---|
| アラートの確認と判断 | アラートを見て、攻撃か誤検知かを判断し、必要なら隔離などの対応をします。夜間・休日の体制も決めておきます。 |
| 誤検知の調整(チューニング) | 業務で使う正規のツールや操作が何度も検知される場合は、除外の設定を見直します。除外しすぎると見逃しにつながるので、範囲は絞ります。 |
| 外部サービスの活用 | 社内で24時間見るのが難しい場合は、SOCやMDR(EDRの監視・対応を代行するサービス)を使う方法があります。 |
| ほかのログとの連携 | メール、ID、ネットワーク機器のログと組み合わせて見ると、攻撃の全体像がつかみやすくなります。EDRを端末以外の情報にまで広げたものはXDRと呼ばれます。 |
代表的なEDR製品には、CrowdStrike Falcon や Microsoft Defender for Endpoint などがあります。画面や機能の名前は製品ごとに違いますが、ここで説明した「記録 → つなげる → 判定 → 知らせる → 止める」という流れは共通です。
まとめ
EPPは入口でファイルや動きを1つずつ判定して止める門番、EDRは端末の中の動きを記録し続け、つなげて判定し、見つけたら止める防犯カメラと警備員です。ゼロトラストの「侵入されている前提で備える」を、端末の上で実現するのがEDRの役割です。
| 項目 | ポイント |
|---|---|
| EPP | 入口での予防。シグネチャ・機械学習・振る舞い検知で、1つのファイル・1つの動きを判定する(点) |
| EDR | 侵入後の検知と対応。端末の動きを記録し、つなげて判定する(線) |
| EPPをすり抜ける手口 | 正規ツールの悪用、ファイルレス攻撃、盗んだIDでのログイン、未知の攻撃 |
| EDRの処理 | ① 記録 → ② 集めてつなげる → ③ 判定 → ④ アラート → ⑤ 隔離・停止 |
| 判定の見方 | IOCとの照合、振る舞いのルール(IOA)、機械学習・普段との違い、それらの相関 |
| ゼロトラストとの関係 | 「侵入されている前提で備える(Assume breach)」を端末で実現する |
| 運用 | アラートを判断する人と体制、誤検知の調整が必要。難しければSOC・MDRを使う |
コメント