ITパスポート 令和3年度 問56:セキュリティに関する問題
インターネットにおいてドメイン名とIPアドレスの対応付けを行うサービスを提供しているサーバに保管されている管理情報を書き換えることによって,利用者を偽のサイトへ誘導する攻撃はどれか。
- aDDoS攻撃
- bDNSキャッシュポイズニング正答
- cSQLインジェクション
- dフィッシング
AI解説(初心者・標準・上級)
理解度に合わせて3レベルの解説を無料で読めます。
答えは b「DNSキャッシュポイズニング」 です。
DNSとは、「このサイト名は、この住所(IPアドレス)だよ」と教えてくれる“ネットの電話帳”のような仕組み。この電話帳の情報をこっそり書き換えて、本物そっくりのニセサイトに連れて行く攻撃です。
たとえると、電話帳のお店の番号を勝手にニセ店に書き換えて、かけた人をだます感じ。
👉 覚え方:DNS=住所案内係。これを毒(ポイズン)で汚す→ニセサイトへ。
ほかの選択肢:a DDoS攻撃=大量アクセスでパンクさせる/c SQLインジェクション=データベースに悪い命令を打ち込む/d フィッシング=ニセメール等でだまして入力させる。
なぜこれが正解か
正解は b。DNSはドメイン名(例:example.com)とIPアドレスを対応付けるサービス。DNSキャッシュポイズニングは、DNSサーバが一時保持する変換情報(キャッシュ)を不正な内容に書き換え、正しいドメイン名を入力した利用者を偽サイトへ誘導する攻撃。本問の「ドメイン名とIPアドレスの対応付け管理情報を書き換える」がこれに合致する。
各選択肢の解説
- a DDoS攻撃:多数の端末から大量のアクセスを送りつけ、サービスを停止させる攻撃。
- c SQLインジェクション:入力欄に不正なSQL文を注入し、DBを不正操作する攻撃。
- d フィッシング:偽メールや偽サイトで利用者をだまし、ID・パスワード等を盗む手口。
覚え方・ひっかけ注意
「DNSの情報を書き換えて偽サイトへ」=DNSキャッシュポイズニング。dフィッシングも偽サイト誘導だが、人を“だます”手口であり、DNS情報の改ざんではない点が違い。攻撃名と狙う対象(DNS/DB/回線/人)をセットで整理すると区別しやすい。
理論的背景
DNS(Domain Name System)はドメイン名と IP アドレスの相互変換を担う分散型データベースシステムで、インターネットの根幹インフラの一つだ。DNS キャッシュポイズニングの仕組みを理解するには、まず DNS の問い合わせ構造を把握する必要がある。
フルリゾルバ(キャッシュ DNS サーバ)は利用者からの問い合わせを受け、権威 DNS サーバへ再帰的に問い合わせて得た回答を一定時間(TTL: Time to Live)キャッシュする。攻撃者はこのキャッシュ書き込みのタイミングを狙い、正規の権威サーバからの応答より先に偽の DNS 応答を送り込もうとする。成否の鍵は DNS トランザクション ID(16ビット)とソースポート番号の推測精度で、古い実装ではトランザクション ID が予測可能だったため攻撃が容易だった。
2008年の Kaminsky 攻撃(Dan Kaminsky が発見)はこの脆弱性を大規模に悪用する方法を示し、業界全体で緊急パッチ対応が行われた。汚染が成功するとキャッシュの TTL が切れるまで全利用者が偽 IP アドレスへ誘導され続ける「ファーミング(pharming)」状態になる。
実務での使われ方と対策
根本的対策は DNSSEC(DNS Security Extensions) で、DNS レスポンスにデジタル署名(公開鍵暗号)を付与し、リゾルバが署名を検証することで偽応答を排除する。補助対策として次の多層防御が標準:
- ソースポートランダム化: 問い合わせごとに送信元ポートをランダムに変え、攻撃者の推測を困難にする(Kaminsky 攻撃への即時対策として採用)
- TTL の適正管理: 短すぎると攻撃窓口が繰り返し開く、長すぎると汚染が長時間続く
- 再帰問い合わせの制限: キャッシュサーバへの再帰問い合わせを内部ネットワークのみに制限
- 信頼性の高い DNS プロバイダへの切替: パブリック DNS(Google 8.8.8.8 等)の利用
試験での位置づけ
ITパスポートではサイバー攻撃の種類と仕組みの識別が頻出で、「DNS の情報を書き換えて偽サイトへ誘導」=DNSキャッシュポイズニングという対応を確実に定着させることが重要。フィッシング(選択肢 d)との混同が最多誤答パターンで、「人をだます(メール・SNS 等のソーシャル手口)」か「仕組みをだます(DNS・ARP 等の技術的改ざん)」かで判別できる。近年は AI を利用したフィッシングの高度化と DNS 汚染の組み合わせが実際の攻撃で使われており、正規 URL のまま偽サイトに着く高度なファーミングへと発展している。基本情報技術者ではDNS の仕組み(権威サーバ・フルリゾルバ・スタブリゾルバの役割分担)から DNSSEC の署名検証フローまで踏み込む。
選択肢の発展補足
選択肢 a「DDoS 攻撃」 はネットワーク・サービスを過負荷で停止させる可用性攻撃。DNS サーバ自体を標的にする「DNS 水責め攻撃(ランダムなサブドメインへの大量問い合わせで権威サーバを過負荷にする)」もあり、DDoS と DNS が絡むケースもある。
選択肢 c「SQL インジェクション」 はウェブアプリケーションの入力欄に不正な SQL 文を注入し、データベースを操作する攻撃。防御策は入力値の検証・エスケープ処理・プレースホルダ(バインド変数)の使用が標準。
選択肢 d「フィッシング」 は偽メール・偽サイトで認証情報を騙し取るソーシャルエンジニアリング攻撃。DNS キャッシュポイズニングと組み合わせると、正規の URL を入力しても偽サイトに誘導されるため利用者が気づけない最悪パターンとなる。両攻撃の「組み合わせによる相乗効果」を意識することで、上位試験の複合的セキュリティ問題にも対応できる。
出典:IPA(情報処理推進機構)公式 ITパスポート試験 令和3年度 問56/ 公的機関配布資料につき出典明記の上引用。解説は合格ナビによる独自AI解説です。