· 用語解説 · 11 min read
多要素認証・SQLインジェクション・XSS・ランサムウェアとは?攻撃と対策を1ページで
多要素認証(MFA・パスキー)、SQLインジェクション、クロスサイトスクリプティング(XSS)、ランサムウェア。ITパスポート・情報セキュリティマネジメントで問われる攻撃と対策を、1ページで整理します。

セキュリティの分野には、攻撃の名前と対策の名前が、たくさん並びます。「SQLインジェクションの対策は、サニタイズか、プレースホルダか」「XSSで盗まれるのは何か」と、攻撃と対策の組み合わせが混ざりやすいところです。
この記事では、本人確認(多要素認証)、Webアプリへの攻撃(SQLインジェクション・XSS)、データを人質にする攻撃(ランサムウェア)を、「何を狙われ、どう守るか」でそろえて、1ページに並べます。
全体像
| 分類 | 用語 | 狙われるもの | 主な対策 |
|---|---|---|---|
| 本人確認 | 多要素認証(MFA) | パスワードの漏洩、なりすまし | 異なる種類の要素を2つ以上組み合わせる |
| Webアプリへの攻撃 | SQLインジェクション | データベース | プレースホルダ、サニタイズ |
| Webアプリへの攻撃 | XSS | 閲覧者のブラウザ、Cookie | サニタイジング(エスケープ)、WAF |
| 被害の拡大 | ランサムウェア | データそのもの | 侵入の防止、早期の隔離、バックアップ、EDR |
多要素認証|異なる種類を組み合わせる
パスワードだけの認証は、漏洩や推測で破られます。多要素認証(MFA)は、次の3種類の要素から、異なる種類を2つ以上組み合わせます。
| 要素 | 内容 | 例 |
|---|---|---|
| 知識 | 本人だけが知っている | パスワード、秘密の質問 |
| 所持 | 本人だけが持っている | スマートフォン、ICカード、トークン |
| 生体 | 本人の身体的な特徴 | 指紋、顔、静脈 |
試験では、「どの組み合わせが多要素認証にあたるか」が問われます。パスワードと秘密の質問は、どちらも「知識」なので、多要素認証ではありません。複数のICカードを組み合わせても、どちらも「所持」なので、多要素認証ではありません。一方、指紋認証(生体)とICカード(所持)の組み合わせは、異なる種類なので、二要素認証と呼べます。
パスキーと生体認証の注意点
パスキーは、パスワードを使わない認証技術です。国際標準のFIDO2に基づき、端末の中に作った秘密鍵と公開鍵のペアで認証します。秘密鍵は端末の中に保管され、利用者は生体認証などで端末のロックを解除して、認証を行います。パスワードレス認証の代表として、試験でも問われます。
生体認証は、忘れる心配がありませんが、怪我などで読み取れなくなる可能性があります。つまり、可用性(必要なときに使えること)に注意が必要で、実務では、バックアップの認証手段を用意しておきます。
SQLインジェクション|入力欄からデータベースを操る
SQLインジェクションは、ログインフォームや検索窓のような入力欄に、特殊な文字列を入力して、データベースへの命令(SQL)を、意図しない形に書き換える攻撃です。たとえば、' or 1=1 -- のような文字列で、パスワードを知らなくてもログインできてしまう場合があります。金庫の鍵を盗むのではなく、ドアの鍵そのものを開けっ放しにするようなものです。
| 対策 | 内容 |
|---|---|
| プレースホルダ | あらかじめSQLの雛形を用意し、入力値を後から安全にはめ込む。入力値がSQLの命令として解釈されない。最も推奨される堅牢な対策 |
| サニタイズ | 入力に含まれる ' や ; などの特殊文字を無効化(エスケープ)する |
試験では、「どんな仕組みで攻撃が行われるか」と「その対策」の組み合わせで出ます。
XSS|閲覧者のブラウザで悪意のあるスクリプトを動かす
XSS(クロスサイトスクリプティング)は、掲示板やコメント欄に、悪意のあるスクリプト(JavaScriptなど)を埋め込んだ投稿をして、それを他の利用者が閲覧したとき、ブラウザの中でスクリプトを実行させる攻撃です。ブラウザは、投稿の内容を通常のWebページの一部と見なして、実行してしまいます。
代表的な被害は、Cookieの盗難です。Cookieには、ログイン状態を保つためのセッションIDが含まれ、盗まれると、攻撃者がその利用者になりすませます(セッションハイジャック)。
| 対策 | 内容 |
|---|---|
| サニタイジング(エスケープ) | 入力に含まれる < > & " ' のような、HTMLやJavaScriptで特別な意味を持つ記号を、無害な別の文字列に置き換える |
| WAF(Web Application Firewall) | Webサーバーと利用者の間で通信を監視し、攻撃のコードが含まれていないかを検査して遮断する |
SQLインジェクションの標的はデータベース、XSSの標的は閲覧者のブラウザです。どちらもサニタイズが関わるため混ざりやすいですが、「何を狙っているか」で区別できます。
ランサムウェア|データを人質に取る
ランサムウェアは、感染した端末やサーバーのデータを暗号化して使えなくし、元に戻すことと引き換えに、金銭を要求する不正プログラムです。
| 論点 | 内容 |
|---|---|
| 侵入経路 | 業務を装った標的型メールの添付ファイルやリンク。VPN機器などの脆弱性 |
| 被害の最小化 | 感染が疑われたら、まず感染した端末やサーバーを、ネットワークから物理的に切り離す。感染の拡大を防ぐ |
| EDR/XDR | 端末の不審な挙動を継続的に監視し、異常を検知して、迅速な対応を可能にする。既知のパターンを検出する従来のウイルス対策ソフトを補う |
| 二重脅迫 | データを暗号化するだけでなく、先に機密情報を盗み出し、「払わなければ公開する」と脅す手口 |
二重脅迫があるため、バックアップから復旧できても、情報が流出するリスクは残ります。備えは、侵入の防止(メールの教育、脆弱性の修正)、早期の検知と隔離(EDR)、復旧の手段(バックアップ)の3つを、組み合わせます。
生成AIで攻撃と対策の組み合わせを確かめる
攻撃と対策は、たとえ話にして説明させると、区別がつきます。
指紋認証(生体)とICカード(所持)の組み合わせは、二要素認証と呼べますか?
理由を添えて、100文字以内で答えてください。あるログイン画面で、パスワードを入れなくてもログインできてしまう「SQLインジェクション」の仕組みを、
「ドアの鍵そのものを開けっ放しにする魔法の呪文」にたとえて、100文字以内で説明してください。ある日、会社のPCに「あなたのデータは暗号化されました。元に戻すには指定のアドレスにビットコインを送ってください」
という画面が表示されました。このとき最初にとるべき行動を、優先順位をつけて2つ挙げてください。AIの答えは、あくまで学習用の参考です。実際に被害が疑われるときは、社内の手順と専門の窓口に従ってください。
まとめ
- 多要素認証は、知識・所持・生体の異なる種類を2つ以上組み合わせる。同じ種類の組み合わせは該当しない。パスキーはFIDO2に基づくパスワードレス認証で、生体認証は可用性に注意
- SQLインジェクションの標的はデータベースで、対策はプレースホルダ(最も堅牢)とサニタイズ
- XSSの標的は閲覧者のブラウザ(Cookieの盗難など)で、対策はサニタイジングとWAF
- ランサムウェアは、疑いがあればまずネットワークから切り離す。EDRで検知し、二重脅迫に備えて、バックアップと流出対策を合わせる
次は、暗号やインシデント対応、バックアップまで含めたセキュリティ対策の全体像を、セキュリティ対策の基礎の記事で確かめてください。
最近の情報漏えい事案と、個人・職場でできる対策は、今さら聞けない情報漏えい対策にまとめています。
