サイバー攻撃手法
サイバー攻撃とは、ネットワークやコンピュータの仕組みを悪用して、情報の窃取・改ざん・破壊やサービスの妨害を行う行為です。攻撃手法は年々多様化しており、ITパスポート試験でも毎年3〜5問が出題される最頻出テーマの1つです。
ここでは、攻撃手法をカテゴリ別に整理して学んでいきます。それぞれの攻撃が「どんな仕組みで」「何を狙って」行われるのかを理解することが、試験対策と実務の両方で役立ちます。
攻撃の準備段階 ── フットプリンティングとポートスキャン
Section titled “攻撃の準備段階 ── フットプリンティングとポートスキャン”攻撃者は、いきなり攻撃を始めるわけではありません。まずターゲットの情報を集め、弱点を探す「偵察」を行います。
フットプリンティングとは、攻撃対象の組織やシステムに関する情報を事前に収集する活動のことです。公開されているWebサイト、SNS、ドメインの登録情報(WHOIS)などから、IPアドレス、使用しているソフトウェアのバージョン、組織の構成などを調べます。
ポートスキャンとは、ターゲットのコンピュータに対して、通信の入口である「ポート」にひとつずつ接続を試み、どのサービスが動作しているか(どのポートが開いているか)を調べる行為です。たとえば、Webサーバー用のポート(80番)やメールサーバー用のポート(25番)が開いていれば、そのサービスの脆弱性を狙った攻撃につなげられます。
試験で出るポイント
パスワード関連の攻撃
Section titled “パスワード関連の攻撃”パスワードは最も基本的な認証手段ですが、それゆえに攻撃の標的にもなりやすい部分です。
辞書攻撃とは、「password」「123456」「admin」など、よく使われる単語やフレーズをリスト化した「辞書」を用意し、片端から試してログインを試みる攻撃です。人間が覚えやすいパスワードを設定しがちな心理を突いています。
総当たり攻撃(ブルートフォース攻撃)
Section titled “総当たり攻撃(ブルートフォース攻撃)”総当たり攻撃(ブルートフォース攻撃)とは、パスワードとして考えられるすべての文字の組み合わせを順番に試す攻撃です。「aaaa」「aaab」「aaac」……のように、力任せに全パターンを試すことから「ブルートフォース(力ずく)」と呼ばれます。パスワードが短いほど短時間で突破されるため、長く複雑なパスワードを設定することが対策になります。
パスワードリスト攻撃
Section titled “パスワードリスト攻撃”パスワードリスト攻撃(クレデンシャルスタッフィング)とは、あるサービスから流出したIDとパスワードの組み合わせリストを使って、別のサービスにログインを試みる攻撃です。多くの人が複数のサービスで同じパスワードを使い回している実態を悪用します。
たとえば、通販サイトAから流出した「メールアドレス+パスワード」の組み合わせを使って、銀行のオンラインバンキングにログインを試みるといったケースです。
| 攻撃手法 | 仕組み | 対策 |
|---|---|---|
| 辞書攻撃 | よく使われる単語を順に試す | 推測されにくいパスワードを設定 |
| 総当たり攻撃 | すべての文字の組み合わせを試す | 長く複雑なパスワードを設定 |
| パスワードリスト攻撃 | 流出したID・パスワードを別サービスで試す | サービスごとに異なるパスワードを使用 |
試験で出るポイント
Web関連の攻撃
Section titled “Web関連の攻撃”Webサイトやアプリケーションの仕組みを悪用する攻撃です。利用者が日常的に使うWebサービスが標的になるため、影響範囲が広いのが特徴です。
SQLインジェクション
Section titled “SQLインジェクション”SQLインジェクションとは、Webサイトの入力欄(検索ボックスやログインフォームなど)に、データベースを操作するSQL文を不正に埋め込む(=注入する)攻撃です。たとえば、ログインフォームのパスワード欄に特殊な文字列を入力することで、認証を回避してデータベースの中身を盗み出したり、データを改ざん・削除したりします。
クロスサイトスクリプティング(XSS)
Section titled “クロスサイトスクリプティング(XSS)”クロスサイトスクリプティング(XSS)とは、Webサイトの掲示板やコメント欄などに悪意のあるスクリプト(プログラム)を埋め込み、そのページを閲覧した利用者のブラウザ上でスクリプトを実行させる攻撃です。これにより、利用者のCookie(ログイン情報を含む)が盗まれたり、偽のページに誘導されたりします。
クロスサイトリクエストフォージェリ(CSRF)
Section titled “クロスサイトリクエストフォージェリ(CSRF)”クロスサイトリクエストフォージェリ(CSRF)とは、利用者がログイン中のWebサービスに対して、利用者の意図しないリクエスト(操作要求)を送信させる攻撃です。たとえば、利用者がSNSにログインした状態で攻撃者の罠ページにアクセスすると、知らないうちにSNSで不正な投稿が行われたり、パスワードが変更されたりします。
XSSが「利用者のブラウザ上で悪意のあるスクリプトを実行させる」のに対し、CSRFは「利用者になりすまして正規のサービスに操作要求を送る」点が異なります。
クリックジャッキング
Section titled “クリックジャッキング”クリックジャッキングとは、Webページの上に透明な別のページを重ねて表示し、利用者が意図したボタンとは異なるボタンをクリックさせる攻撃です。たとえば、「動画を再生する」ボタンの上に透明な「購入する」ボタンを重ねておくことで、利用者が気づかないうちに商品を購入させられるといったケースがあります。
ドライブバイダウンロード
Section titled “ドライブバイダウンロード”ドライブバイダウンロードとは、利用者がWebサイトを閲覧しただけで、利用者の知らないうちにマルウェア(悪意のあるソフトウェア)がダウンロード・実行される攻撃です。改ざんされた正規のWebサイトや、悪意のある広告(マルバタイジング)を通じて行われることがあります。
ディレクトリトラバーサル
Section titled “ディレクトリトラバーサル”ディレクトリトラバーサルとは、Webサーバー上のファイルパスを不正に操作して、本来アクセスできないはずのファイル(パスワードファイルや設定ファイルなど)を読み取る攻撃です。「../」のような相対パスの記号を使って、公開フォルダの外にあるファイルへ移動(トラバーサル=横断)します。
バッファオーバーフロー攻撃
Section titled “バッファオーバーフロー攻撃”バッファオーバーフロー攻撃とは、プログラムが確保したメモリ領域(バッファ)に想定以上の大量のデータを送り込み、メモリの範囲を超えてデータをあふれさせる(オーバーフロー)攻撃です。これにより、プログラムが異常動作を起こしたり、攻撃者が用意した不正なコードが実行されたりします。
| 攻撃手法 | 何を悪用するか | 何が起こるか |
|---|---|---|
| SQLインジェクション | データベースへの入力処理 | データの窃取・改ざん・削除 |
| XSS | Webページの表示処理 | 利用者のブラウザで不正スクリプト実行 |
| CSRF | ログイン中のセッション | 利用者になりすまして不正操作 |
| クリックジャッキング | 透明なページの重ね合わせ | 意図しないクリック操作 |
| ドライブバイダウンロード | Webブラウザの脆弱性 | 閲覧だけでマルウェア感染 |
| ディレクトリトラバーサル | ファイルパスの処理 | 非公開ファイルの読み取り |
| バッファオーバーフロー | メモリ管理の不備 | 不正コード実行・異常動作 |
試験で出るポイント
通信経路上の攻撃
Section titled “通信経路上の攻撃”ネットワーク上の通信を盗聴・改ざん・なりすましする攻撃です。
中間者攻撃(Man-in-the-middle攻撃)
Section titled “中間者攻撃(Man-in-the-middle攻撃)”中間者攻撃(Man-in-the-middle攻撃)とは、通信を行っている2者の間に攻撃者が割り込み、双方になりすまして通信内容を盗聴・改ざんする攻撃です。たとえば、AさんとBさんが暗号化通信を行おうとする際に、攻撃者がAさんには「自分がBさんだ」と、Bさんには「自分がAさんだ」と偽ることで、双方のやり取りをすべて覗き見できます。
MITB攻撃(Man-in-the-browser攻撃)
Section titled “MITB攻撃(Man-in-the-browser攻撃)”MITB攻撃(Man-in-the-browser攻撃)とは、利用者のWebブラウザに侵入したマルウェアが、ブラウザの内部で通信内容を改ざんする攻撃です。中間者攻撃がネットワーク上で行われるのに対し、MITB攻撃はブラウザの中で行われるのが特徴です。たとえば、オンラインバンキングで振込先を正しく入力しても、マルウェアがブラウザ内部で振込先を攻撃者の口座に書き換えるといった被害が起こります。
IPスプーフィング
Section titled “IPスプーフィング”IPスプーフィングとは、送信元のIPアドレスを偽装(スプーフィング)して通信を行う攻撃です。信頼されたIPアドレスになりすますことで、アクセス制限を回避したり、攻撃の発信元を隠したりします。
DNSキャッシュポイズニング
Section titled “DNSキャッシュポイズニング”DNSキャッシュポイズニングとは、DNSサーバーが保持している名前解決の情報(キャッシュ)に偽の情報を注入(ポイズニング=毒を入れる)する攻撃です。これにより、利用者が正しいURLを入力しても、偽のWebサイトに誘導されてしまいます。
セッションハイジャック
Section titled “セッションハイジャック”セッションハイジャックとは、利用者がWebサービスにログインした際に発行される「セッションID」を攻撃者が盗み取り、その利用者になりすましてサービスを利用する攻撃です。セッションIDはログイン状態を維持するための識別情報であり、これを奪われると攻撃者に正規の利用者としてアクセスされてしまいます。
第三者中継(オープンリレー)
Section titled “第三者中継(オープンリレー)”第三者中継(オープンリレー)とは、メールサーバーの設定不備を悪用し、そのサーバーを経由して大量の迷惑メール(スパム)を送信する行為です。攻撃者は自分のメールサーバーを使わず、他者のサーバーを踏み台にすることで、発信元を隠しながらスパムメールをばらまきます。
試験で出るポイント
サービス妨害系の攻撃
Section titled “サービス妨害系の攻撃”システムやサービスを使えなくすることを目的とした攻撃です。
DoS攻撃(Denial of Service攻撃:サービス拒否攻撃)とは、ターゲットのサーバーに大量のリクエストや不正なデータを送りつけて、サーバーの処理能力を超えさせ、正常なサービス提供を妨害する攻撃です。1台の攻撃元から行われます。
DDoS攻撃
Section titled “DDoS攻撃”DDoS攻撃(Distributed Denial of Service攻撃:分散型サービス拒否攻撃)とは、マルウェアに感染させた多数のコンピュータ(ボットネット)を遠隔操作して、ターゲットに一斉に攻撃を仕掛けるDoS攻撃の発展形です。攻撃元が分散しているため、特定の発信元をブロックするだけでは防御しきれません。
たとえば、IoT機器(Webカメラやルーターなど)がマルウェアに感染し、数万台規模でDDoS攻撃に加担させられた事例もあります。
| 攻撃手法 | 攻撃元 | 特徴 |
|---|---|---|
| DoS攻撃 | 1台 | 攻撃元を特定・遮断しやすい |
| DDoS攻撃 | 多数(ボットネット) | 攻撃元が分散し防御が困難 |
クリプトジャッキング
Section titled “クリプトジャッキング”クリプトジャッキングとは、他人のコンピュータのCPU(処理能力)を無断で利用して暗号資産(仮想通貨)のマイニング(採掘)を行う攻撃です。Webサイトに埋め込まれたスクリプトや、マルウェアによって実行されます。利用者のPCの動作が極端に重くなったり、電力を大量に消費したりしますが、一見すると気づきにくいのが特徴です。
試験で出るポイント
標的型・詐欺系の攻撃
Section titled “標的型・詐欺系の攻撃”特定の組織や個人を狙い撃ちにしたり、人間の心理をだまして情報を盗む攻撃です。
標的型攻撃(APT)
Section titled “標的型攻撃(APT)”標的型攻撃(APT: Advanced Persistent Threat)とは、特定の組織や個人をターゲットに定め、長期間にわたって執拗に攻撃を続ける高度なサイバー攻撃です。無差別にばらまくウイルスとは異なり、ターゲットの業務内容や人間関係を事前に調査したうえで、巧妙に偽装したメールなどを送りつけます。
標的型攻撃には、いくつかの手口のバリエーションがあります。
水飲み場型攻撃
Section titled “水飲み場型攻撃”水飲み場型攻撃とは、ターゲットがよくアクセスするWebサイトにマルウェアを仕込んでおき、そのサイトを閲覧したときに感染させる攻撃です。名前の由来は、野生動物が水飲み場に集まるのを待ち伏せする肉食動物の狩りに似ていることからです。
やり取り型攻撃
Section titled “やり取り型攻撃”やり取り型攻撃とは、最初は無害なメールのやり取りをして信頼関係を築き、安心させたところでマルウェア付きのメールを送る攻撃です。たとえば、取引先を装って何度かビジネスメールをやり取りしたあと、「請求書を添付しました」とマルウェア入りのファイルを送りつけるケースがあります。
フィッシング
Section titled “フィッシング”フィッシングとは、銀行や通販サイトなどの有名な企業になりすましたメールを送り、本物そっくりの偽サイトに誘導してIDやパスワード、クレジットカード番号などの個人情報を入力させて盗む攻撃です。「あなたのアカウントが不正利用されています。こちらから確認してください」といった不安をあおる文面が使われます。
スミッシング
Section titled “スミッシング”スミッシングとは、SMS(ショートメッセージサービス)を使ったフィッシングです。「お届けの荷物が届いています」「料金が未払いです」といった短い文面とURLが送られてきて、偽サイトに誘導されます。フィッシングがメールを使うのに対し、スミッシングはSMSを使う点が異なります。
ワンクリック詐欺
Section titled “ワンクリック詐欺”ワンクリック詐欺とは、Webページのリンクやボタンをクリックしただけで「登録完了」「料金が発生しました」などと表示し、不正に金銭を要求する手口です。実際には契約は成立しておらず、支払い義務はありません。
試験で出るポイント
ゼロデイ攻撃
Section titled “ゼロデイ攻撃”ゼロデイ攻撃とは、ソフトウェアの脆弱性(セキュリティ上の欠陥)が発見されてから、修正プログラム(パッチ)が提供されるまでの間に、その脆弱性を悪用する攻撃です。「修正までの猶予日数がゼロ(0 day)」という意味です。開発元がまだ対策を出せていない段階で攻撃されるため、防御が非常に難しい攻撃とされています。
試験で出るポイント
サービス及びソフトウェアの機能の悪用
Section titled “サービス及びソフトウェアの機能の悪用”サービス及びソフトウェアの機能の悪用とは、ソフトウェアやクラウドサービスが本来提供している正規の機能を、攻撃目的に転用する行為です。たとえば、クラウドストレージのファイル共有機能をマルウェアの配布に使ったり、正規の遠隔操作ツールを不正アクセスの手段として利用したりするケースがあります。正規の機能を使っているため、セキュリティソフトによる検知が難しいという特徴があります。
AI関連の攻撃(Ver.6.5 新用語)
Section titled “AI関連の攻撃(Ver.6.5 新用語)”近年のAI(人工知能)の普及に伴い、AIに特有の新しい攻撃手法も注目されています。ITパスポート試験のシラバスVer.6.5で新たに追加されたテーマです。
プロンプトインジェクション攻撃
Section titled “プロンプトインジェクション攻撃”プロンプトインジェクション攻撃とは、AIチャットボットなどの生成AIサービスに対して、巧妙に細工した指示文(プロンプト)を入力することで、本来のルールや制限を回避させ、意図しない動作をさせる攻撃です。たとえば、「〇〇というルールは忘れてください」といった指示を埋め込むことで、機密情報を出力させたり、不適切な内容を生成させたりします。SQLインジェクションが「データベースへの不正な命令の注入」であるのに対し、プロンプトインジェクションは「AIへの不正な指示の注入」と考えると理解しやすいでしょう。
敵対的サンプル(Adversarial Examples)
Section titled “敵対的サンプル(Adversarial Examples)”敵対的サンプル(Adversarial Examples)とは、AIの画像認識や判定を誤らせることを目的として、人間にはわからないごくわずかなノイズ(微小な変化)を加えたデータのことです。たとえば、パンダの画像にほんの少しだけノイズを加えると、人間の目にはパンダに見えるのに、AIは「テナガザル」と誤認識してしまうことがあります。自動運転車の標識認識を狂わせるなど、安全性に関わる深刻なリスクも指摘されています。
試験で出るポイント
まとめ ── サイバー攻撃手法の全体像
Section titled “まとめ ── サイバー攻撃手法の全体像”試験では、具体的な攻撃シナリオが問題文に記述され、「この攻撃の名称は何か?」と問われるパターンが頻出です。各攻撃の「仕組み」と「キーワード」を結びつけて覚えましょう。
試験で出るポイント