はじめに
◆この記事は何?
セキュリティ分野の攻撃手法と対策をまとめた記事です
◆対象は?
セキュリティを学びたい方、試験対策をしたい方
◆記事のコンセプト
攻撃と対策の目的や流れを抑えておくことで、情報処理試験の午前問題・午後問題が解きやすくなります。
この記事では以下のように整理します。
- 攻撃者側
- 攻撃者の目的
- 攻撃手段
- 結果
- 対策側
- 対策の目的
- 対策手段
- 結果
◆この記事の目的
試験対策として理解や暗記の一助になれば幸いです。
標的型攻撃
攻撃側
◆目的
機密情報を盗むため
◆手法
特定の個人や組織(標的)を狙って、攻撃メールを送付します。
- 攻撃者は情報を収集する
- 標的型攻撃メール送付
- 感染
- 情報の流出
◆結果
情報の漏洩やウイルスの感染
標的型攻撃の例をシーケンス図で示した例です。
対策
◆目的
被害を抑えるため
完全に防ぐことは難しいので、被害を抑える対策を考えるのが現実的です。
◆手法
- 入口対策(攻撃の侵入を防ぐ対策)
- ファイアウォール、IDS/IPSなど
- 出口対策(侵入後の被害の発生を防ぐ対策)
- 通信監視で漏洩防止
- ログの取得
- 社員・職員への教育
- 標的型攻撃の訓練メール
◆結果
- 入り口対策の結果
- 攻撃側は侵入が困難になります
- 出口対策の結果
- 攻撃側は情報を盗み出すのが難しくなります
- 社員・職員への教育の結果
- 訓練メールによって、社員の識別能力の向上や適切な対応の取得が期待されます
【関連】
- APT攻撃(Advanced Persistent Threat)
- 特定の標的に対して高度かつ執拗に行われる攻撃
【参考】
DoS攻撃(Denial of Service attack/サービス拒否攻撃)
攻撃側
◆目的
サービス提供を妨害するため
◆手法
1台のパソコンからターゲットにデータを送る
◆結果
サーバーに過剰な負荷がかかる
対策
◆目的
不正アクセスを遮断するため
◆手法
- IPアドレス制限
- IPアドレスを偽装したり、動的に変更したりするためIPアドレス制限だけでは不十分なことがある
- ツールを利用
- ファイアウォール、IPS/IDS、WAFなど
◆結果
攻撃者はアクセスができなくなる
【関連】
DoS攻撃の種類
- DDoS攻撃(Distributed Denial of Service attack/分散型サービス拒否攻撃)
- 踏み台を利用して、ターゲットに大量のアクセスやデータを送り、負荷をかける
- DRRoS攻撃(Distributed Reflective Denial of Service attack/DoSリフレクション攻撃)
- ターゲットのIPアドレスになりすまし、不必要な応答を送りつける
- EDoS攻撃(Economic Denial of service attack)
- 金銭的な負担をかける攻撃
- Smurf攻撃(DoS攻撃の一つ)
【参考】
図解まるわかり セキュリティのしくみ
Smurf攻撃
攻撃側
◆目的
DoS攻撃と同様に、サービスを妨害するため
◆手法
pingの仕組みを悪用して、相手のコンピュータやネットワークに対象のパケットを送りつける
攻撃者によるICMPエコー要求(ping)
送信元IP:攻撃対象サーバ
宛先IP:ブロードキャストアドレス
◆結果
サーバーに過剰な負荷がかかる
対策
◆目的
攻撃トラフィックを拡散防止するため
◆手法
各機器でブロードキャストアドレス宛のICMPリクエストを破棄
◆結果
攻撃者が意図したように負荷をかけることができなくなる
【参考】
smurf攻撃の中継への対策
中間者攻撃(Man-in-the-Middle attack)
攻撃側
◆目的
盗聴、改ざんのため
◆手法
攻撃者はユーザーとサーバの間に入り込む
典型的なのはプロキシタイプ
◆結果
盗聴や改ざんが可能になる
対策
◆目的
認証を行うことで、接続先が正規のものと確認するため
◆手法
通信相手が発行しているデジタル証明書を使う
◆結果
攻撃者は盗聴したとしても暗号化により解読が難しくなる
署名の検証に失敗するため、受信側は改ざんに気づくことができる
【参考】
イラスト図解式 この一冊で全部わかるセキュリティの基本
MITB攻撃(Man-in-the-browser攻撃)
攻撃側
◆目的
盗聴、改ざんのため
◆手法
マルウェアなどを用いて、攻撃対象のブラウザに悪意のあるソフトウェアを潜り込ませる
中間者攻撃はネットワークに焦点があるが、MITB攻撃はユーザーデバイス(Webブラウザ)に焦点がある
◆結果
WEBブラウザを乗っ取る
通信を監視して、通信内容を改ざんしたり、操作をしたりする
対策
◆目的
通信が改ざんされていないことを確認するため
◆手法
トランザクション認証
トランザクション=取引
◆結果
改ざんを検知して、取引を中止できる
次の1分の動画で処理の流れが理解しやすくなります。
DNSアンプ攻撃(DNSリフレクタ攻撃)
「アンプ」は「増幅」を意味します。
攻撃側
◆目的
攻撃対象のサーバーの負荷を高めるため
◆手法
送信元IPアドレスを攻撃対象に偽装して問い合わせを行う
◆結果
DNSは要求の通信より応答の通信の方が大きいため、攻撃者は小さい要求で大きい応答を攻撃対象のサーバーに送りつけることができる
対策
◆目的
攻撃の機会をなくすため
◆手法
キャッシュDNSサーバーをオープンリゾルバにしない
◆結果
外部からDNS問い合わせを受け付けなくなる
【参考】
DNS水責め攻撃(ランダムサブドメイン攻撃)
攻撃側
◆目的
コンテンツDNSサーバーの負荷を高めるため
◆手法
存在しないサブドメインに対して問い合わせを行う
キャッシュされていないため、コンテンツDNSサーバーへの問い合わせが必要になる
◆結果
コンテンツDNSサーバーの負荷が高まる
対策
DNSアンプ攻撃(DNSリフレクタ攻撃)と同様
【参考】
「ゼロからスタート! 教育系YouTuberまさるの情報処理安全確保支援士1冊目の教科書」
フィッシング・スミッシング
攻撃側
◆目的
機密情報を盗み取るため
◆手法
- フィッシング
- メールでなりすましサイトのリンクを送付して、なりすましサイトに誘導する
- スミッシング
- SMSでなりすましサイトのリンクを送付して、なりすましサイトに誘導する
◆結果
なりすましサイトで情報を入力してしまった場合、攻撃者は個人情報の取得、ログイン情報の取得などが可能になる
対策
◆目的
なりすましサイトにそもそもアクセスしないようにするため
◆手法
メールに記載されているリンクを利用せず、webブラウザの検索経由で目的のwebサイトを使用する
◆結果
機密情報を誤って入力する機会がなくなる
【参考】
「ゼロからスタート! 教育系YouTuberまさるの情報処理安全確保支援士1冊目の教科書」
ARPポイズニング
別名:ARPキャッシュポイズニング、ARPスプーフィング
ARPはAddress Resolution Protocolの略で、IPアドレスからMACアドレスを特定するためのプロトコルです。
攻撃側
◆目的
不正な通信先への誘導するため
◆手法
攻撃者は、正規の応答よりも早く不正な応答を届ける
◆結果
ARPテーブルを不正に作り上げ、不正な通信に誘導する
攻撃者がいない場合のARP応答のシーケンス図です。
下の図はターゲット1がターゲット2への通信を試みる際、攻撃者が改ざんする例です。
対策
◆目的
不正を検出するため
◆手法
DAI(Dynamic ARP Inspection)
ダイナミックARP検査は、LAN上でARPパケットを検査するセキュリティ機能
ARPメッセージの正当性を検証する
◆結果
不正なARP通信を遮断する
DHCPとは、Dynamic Host Configuration Protocolの略で、コンピュータがネットワークに接続して通信する際に必要な設定情報を自動で割り当てる機能です。
【参考】
ARP Spoofing
ARPポイズニング(スプーフィング)攻撃とは 定義と手法、防御と対策
【Cisco】Dynamic ARP Inspection(DAI)の概要と設定方法
クロスサイトスクリプティング
攻撃側
◆目的
サービス利用者を攻撃するため
◆手法
攻撃者は任意のスクリプトをサービスに投稿する
投稿した悪意のあるプログラムを、他の利用者の環境で実行させる
◆結果
Cookie情報等が漏洩
対策
◆目的
攻撃スクリプトを実行防止するため
◆手法
エスケープ処理
エスケープ処理の例
- ウェブページの表示に影響する特別な記号文字(「<」、「>」、「&」等)を、HTMLエンティティ(「<」、「>」、「&」等)に置換
- HTMLタグを出力する場合は、その属性値を必ず「"」(ダブルクォート)で括る
- 「"」で括られた属性値に含まれる「"」を、HTMLエンティティ「"」にエスケープ
◆結果
テキストとして扱われる。結果、スクリプトが実行できなくなる。
参考:
安全なウェブサイトの作り方 - 1.5 クロスサイト・スクリプティング
クロスサイトリクエストフォージェリ
CSRF:Cross Site Request Forgeries
「Forgery」は「偽物」という意味
攻撃側
◆目的
個人情報の盗み出しや権限を悪用するため
◆手法
セッションIDを悪用して、Webサイトにログインしている利用者に意図しない操作をさせる
◆結果
攻撃者が不正操作できる
対策
◆目的
識別するため
◆手法
リクエストにトークン情報を付加する。
IPAでは次のように説明されています。
処理を実行するページをPOSTメソッドでアクセスするようにし、その「hiddenパラメータ」に秘密情報が挿入されるよう、前のページを自動生成して、実行ページではその値が正しい場合のみ処理を実行する。
◆結果
トークンが不一致のため、リクエストが拒否される
参考:
安全なウェブサイトの作り方 - 1.6 CSRF(クロスサイト・リクエスト・フォージェリ)
パスワードクラッキング
攻撃側
◆目的
不正アクセスするため
◆手法
- オンライン攻撃
- ブルートフォース攻撃
- パスワードのすべての組み合わせを試す
- リバースブルートフォース攻撃
- パスワードを固定してユーザIDを変化させる
- 辞書攻撃
- 辞書に記載されている単語からパスワードを推測する
- パスワードリスト攻撃
- 他のサイトで流失したパスワードの組み合わせを試す
- ブルートフォース攻撃
- オフライン攻撃
- ファイルからパスワードを解析
- パスワードをハッシュ化したリストから検索する
- ファイルからパスワードを解析
◆結果
パスワードを取得し、不正ログインなどが可能となる
ブルートフォース攻撃のシーケンス図です。
対策
①ブルートフォース攻撃や辞書攻撃の対策
◆目的
ログインの試行回数を制限するため
◆手法
アカウントロックアウト
◆結果
IDとパスワードの組み合わせを試せなくなる
②リバースブルートフォース攻撃
◆目的
ログインの試行回数を制限するため
◆手法
接続元のIPアドレスなどの情報からログインの試行回数を制限する
◆結果
IDとパスワードの組み合わせを試せなくなる
【参考】
「ゼロからスタート! 教育系YouTuberまさるの情報処理安全確保支援士1冊目の教科書」
おわりに
この記事では、シーケンス図を用いて攻撃と対策について目的を中心に整理しました。
試験勉強の一助になれば幸いです。