情報セキュリティ基礎[1-3 サイバー攻撃手法]

1-3-1 不正アクセス

不正アクセスとは

システムを利用するものがその与えられた権限によって許された以上の行為をネットワークを介して意図的に行うことを不正アクセスとよぶ。 セキュリティホールを突いた攻撃も不正アクセスとみなされる。なお、こうした行為は不正アクセス禁止法によって処罰される。

不正アクセスの方法

対処を考えるためにも不正アクセスの手法を確認しておくことが重要。

ネットワークスキャン

不正アクセスをするために、攻撃対象となるコンピュータを特定する必要がある。そのための準備行動としてネットワークスキャンが行われる。 考えられるあらゆるIPアドレスpingを実施し、相手ノードの存在確認を行うなどの方法がとられる。

ポートスキャン

コンピュータの存在が確認できると、次はコンピュータ内部のアプリケーションの動作確認を行う。コンピュータ内部で動作しているアプリケーションを特定できれば、そのコンピュータがどのような用途で使われているか、管理者はどの程度のスキルをもっているか、などの情報を得ることができる。稼働しているアプリケーションによっては既知の脆弱性がある場合もある。こうした情報を得るために攻撃者はポートスキャンを行う。具体的にはTCPの3ウェイハンドシェイクを利用して、すべてのポートに対して接続要求を行う。

バッファオーバーフロー

稼働しているアプリケーションが判明した場合、次の行動として侵入行為が行われる。その際に使われる典型的な手法がバッファオーバフロー。攻撃者がこの領域(バッファ)を超えるサイズのデータを送信することをバッファオーバーフロー攻撃とよぶ。

パスワードの取得

管理権限を奪うにはバッファオーバーフローが有効な手段となるが、システムに攻撃を許すようなセキュリティホールがない場合もある。その場合、最も簡単に管理権限を取得する方法は管理者のユーザIDとパスワードを得ること。

ブルートフォース攻撃

管理者のユーザIDはデフォルトで運用されることが非常に多く(root、adminなど)、一般に考えられているよりも取得は簡単。また、適切なパスワードで運用されている場合でも、考えられるすべてのパスワードの組み合わせを試すブルートフォース攻撃(総当り攻撃)によってパスワードを特定することができる。

辞書攻撃

パスワードの候補として、利用されがちな簡単な体型化したデータベースを利用する。攻撃対象が明確に定まっている場合は、事前に生年月日はペットの名前、電話番号など入手してこれもデータベースに登録する。 最終的には総当たり方法になるにしても、これらの語を優先的にパスワードとして試すことでパスワードを発見するまでの時間が大幅に短縮される。

パスワードリスト攻撃

あらかじめ何らかの手法で入手したアカウントとパスワードの対を用いて、不正ログインを指向する方法。パスワードを様々なサイトで使い回すとクラッカーがそれを入手したときに、他のサイトでも攻撃を成功させてしまう。

特徴 対策
ブルートフォース攻撃 すべてのパスワードを試す パスワード試行回数を制限する
辞書攻撃 パスワードになりそうな単語や、被攻撃者ゆかりの情報(誕生日など)を試す 安易なパスワードを使わない
パスワードリスト攻撃 他のシステムから流出したIDやパスワードを試す パスワードの使いまわしをしない

侵入後の危機

いったん不正アクセスに成功すると、侵入者はその証拠の隠滅を図ったり、再侵入のための布石を打ったりする。

ログの消去

管理者権限がダッシュされた場合、システムは完全に無防備な状態になる。ほぼ攻撃者の思いのママに情報資産を取得される。この状態で攻撃者が行うのはログの消去。

バックドアの作成

攻撃者が管理者権限を取得した場合、また同じシステムに侵入しようと試みるケースがある。その場合、同じ手順を踏んで再び侵入できるとは限らない。また、侵入にかかる時間と手間を短縮する意味からバックドアとよばれる進入路を確保する。また、パスワードの変更やデータの変更といった事象を攻撃者のもとへ届ける機能や情報を漏洩する機能のプログラムを指す場合もある。

1-3-2 盗聴

盗聴とは

盗聴はネットワーク上を流れるデータを取得する行為。盗聴の特徴は特に積極的な攻撃行為を行わなくとも、収集できるデータを集めているだけでほしい情報が得られる可能性がある。

盗聴の種類

盗聴自体は、そのやり方さえわかってしまえば、それほど高度な技術力がなくても可能。それだけに確実に基本的な対策を施しておくことが重要。

スニファ

ネットワーク上を流れるデータ(パケット)を取得(キャプチャ)して、内容を解読する。プロトコルアナライザと呼ばれる機器(専用機や、PCにインストールして使うタイプがある)はネットワーク管理を行うための分析ツールで、パケットの取得と分析がでいる。悪用すれば盗聴になる。もちろん流れていないデータは取得できないので、攻撃者は任意の場所にプロトコルアナライザを設置する必要がある。入退室管理や通信の暗号化で対策する。

電波傍受

無線LANをはじめとする無線通信は、電波が届く範囲であれば誰でも受診できるため、常に盗聴のリスクがある。無線LANの標準的な暗号化方式であるWAP2を使って、暗号化を行う。前世代のWEPは脆弱性が発見されており、容易に盗聴できることが知られている。ケーブルなどから漏れる微弱な電流を取得して盗聴が行われることもある。これに対してはケーブルに電磁波シールとを施すなどの対策が有効。

キーボードロギング

キーロガーと呼ばれる、キーボードからの入力を蓄積して攻撃に送信するタイプのマルウェアが用いられる。キーボードを使って、IDやパスワードなどの重要な情報を入力するとそれがすべて攻撃者に知られてしまう。ウイルス対策ソフト、ソフトウェアキーボード、共有のPCを使わないなどの対策を行う。

DNSキャッシュポイズニング

DNSサーバに保存されている名前解決情報に、偽の情報を記録させ、利用者に意図しないサーバと通信させる方法。 DNSサーバはコンテンツサーバとキャッシュサーバに分類できる。

  • コンテンツサーバ(権威サーバ):オリジナルの名前解決情報をもっている
  • キャッシュサーバ:各サイトに置かれ、名前解決情報のコピーを保存する
通常手段
  1. DNSクライアントが名前解決要求→キャッシュサーバ(知っていれば、そのまま回答。知らなければコンテンツサーバに問い合わせ)
  2. コンテンツサーバ→キャッシュサーバ→DNSクライアント
ディレクトリトラバーサル

管理者が意図していないディレクトリにアクセスを行う攻撃手法。 例えばカレントディレクトリ内のファイルだけにアクセスしてもらうつもりで、利用者にファイル名を入力してもらったとして、

内容 対策
スニファ ネットワーク上のパケットを盗聴する 暗号化
電波傍受 無線LANの傍受、ケーブルなどから漏れる微弱電磁波の傍受 暗号化、ケーブルをシールドする
キーボードロギング キーボードからの入力を傍受 マルウェア対策ソフト、PCの共有をしない
DNSキャッシュポイズニング DNSを偽データで汚染する DNSSECの利用、ポート番号のランダム化
ディレクトリトラバーサル 意図しないディレクトリにアクセスする 不正なデータの無害化

1-3-3 なりすまし

なりすましとは

なりすましは攻撃者が正規のユーザになりすまして、不当な情報資産を利用する権限を得ようとする行為。

なりすましの種類

単純な手段からネットワークを介した技術の必要なものまでさまざまな方法がある。

パスワードリスト攻撃

不正な手段や他のサイトからの流出によって入手したIDやパスワードを利用して、他人になりすます方法。パスワードの使いまわしをやめ、定期的に変更することでリスクを低減できる。

IPスプーフィング

IPパケットのヘッダ情報を偽装することによって、他のマシンになりすまし、本来アクセスを許可されていないシステムにアクセスする方法。ステートフルインクスペクションやIDS/IPSの導入などにより、りすくを低減できる。

踏み台

三者のコンピュータを踏み台にすることで、踏み台にしたコンピュータからアクセスしているように見せかける技術。アクセスログの監査などでも、踏み台のIPアドレスが残り犯罪を隠蔽できる。脆弱性のあるマシンや公開プロキシなどが踏み台に利用される。公開しているサーバのセキュリティ水準を上げることで、踏み台にされにくくし、またIDSやIPSなどで踏み台攻撃を識別する。

ARPスプーフィング

ARPIPアドレスからMACアドレスを知るためのプロトコルだが、ARP要求に対する偽の返答を攻撃者が用意することで、不正なマシンに通信を誘導する技術。ARPテーブルの監視などで対応する。

セッションハイジャック

二者間で行われる通信を攻撃者が乗っ取る方法。サーバになりすまして個人情報やパスワードを入手したり、サーバとクラアンとの間に割って入って通信を中継(中間者攻撃)したりする。 通信内容がすべて攻撃者に筒抜けになる。セッションを管理しているセッションIDや通信用のポート番号をランダムにするなどして、攻撃者に攻撃の手がかりを与えないようにする。

リプレイ攻撃

ネットワークに送信されるログイン情報を取得して、そのコピーを使って不正ログインする。ワンタイムパスワードなどで対策する。

MITB

マン・イン・ザ・ブラウザ(Man in the Browser)の略称。MITBはマルウェアがブラウザとサーバの間に介入することによって、ブラウザの通信を乗っ取る攻撃で、利用者は正規のサーバと通信しているつもりだが、不正なサーバなどに情報を送信してしまう。スマホを使ったトランザクション認証によって対応する。 似た名前の用語として、MITM(マン・イン・ザ・ミドアタック)がある。MITMは「中間者攻撃」の意で、通信を行っている二者間に割り込んで、通信の中継を行う。割り込まれている二者は中継されていることに気づかず、すべての通信内容を盗聴されている。PKIを用いて、認証局が発行したデジタル証明書を使うことで攻撃を回避できる。

フィッシング

正規のサイトになりすますことで個人情報の入手や詐欺を行う手法。ぱっと見では本文のURLと判別しにくいURLをスパムメールで送ったり、本物のURLと打ち間違えやすいURLで、間違えて訪れる利用者を待ったりする。判別しにくい短縮URLも利用される。リンクは利用せず、検索エンジンを使って目的サイトに到達するなどの対策をする。

標的型攻撃

十分な準備を行って、特定の組織や人を攻撃する方法。標的企業の正規の書類フォーマットや組織図、人間関係を把握して行われるので、見破りにくいのが特徴。顧客のふりをして取引をしながら攻撃することもある。高度な技術を用いて執拗な攻撃が行われる場合を得にAPT (Advanced Persistent Threat) と呼ぶ。また、標的企業がよく利用するサイトを改ざんして、そこからマルウェアを感染させるような攻撃方法を水飲み場攻撃という。社員の情報セキュリティリテラシを向上するなどして対策する。

内容 対策
パスワードリスト攻撃 不正な手段で入手したIDとパスワードでログインする パスワードの使いまわしをしない。定期的に変更する
IPスプーフィング IPパケットのヘッダを偽装して、他のマシンが送信しているようになりすます 一連の通信の矛盾を見つけるステートフルインスペクションなど
踏み台 三者のPCを経由して攻撃する IDS/IPSの導入、自分が踏み台にされないことも重要
ARPスプーフィング ARPに偽の名前解決情報を記憶させる ARPテーブルの監視
セッションハイジャック 二者間で行われる通信を、クラッカーが乗っ取る 通信の認証と暗号化、セッション番号の乱数化
リプレイ攻撃 ネットワーク上を流れるログイン情報を取得し、そのまま使う ワンタイムパスワード
MITB ブラウザとサーバの間に介入して、ブラウザの通信を乗っ取る スマホなどを使ったトランザクション認証
フィッシング 偽URLなどにより、詐欺サイトへ誘導する URLの確認、リンクを踏まず検索エンジンから目的Webサイトへ、セキュリティ対策ソフトの利用
標的型攻撃 ターゲットを絞り、周到な準備のもとに攻撃する セキュリティ教育

1-3-4 サービス妨害

サービス妨害とは

サービス妨害(DoS)は、サーバに負荷を集中させるなどしてサーバを使用不能に陥れる攻撃。盗聴などと異なり、重要な情報を盗み出す、といった要素はないが、営業妨害などに利用される。  DoS攻撃の扱いで苦慮するのは、通常のアクセスと区別しにくい点。チケット販売サイトや重要な告知が行われるサイトでは、ユーザに悪意がなくても、アクセス要求の集中によるサービスのダウンなどが日常的に発生しており、DoS攻撃をこれらと完全に区別することは困難。

サービス妨害の種類

TCP SYN Flood

 TCPの通信がスタートするときの3ウェイハンドシェイクは、SYN→SYN/ACK→ACKの3つのやり取りで行われるが、3つめのACKを行わないことで待ちぼうけを食らわせる攻撃方法。通信の要求があるとサーバ側は通信用にCPUやメモリを割り当てるので、これを無駄遣いさせる。繰り返すことで性能低下やシステムダウンを狙うことができる。この他にも大量の通信を送信して相手の処理能力を飽和させる、xxFlood系の攻撃方法は多数存在する。TCP SYN Floodの場合は一定時間経過したコネクションを切断することで対処する。

Ping of Death

 セキュリティホールのあるOSでは、許容範囲を超えるサイズのpingを送ると意図しない動作を引き起こすことが可能。この脆弱性を突いた攻撃方法。セキュリティパッチを適用することで対応する。

DDoS攻撃

 大規模分散型のDoS攻撃DoS攻撃では、攻撃用の大量のパケットをどう作るかが攻撃者の悩みどころだが、ボットネットなどを使って多数のマシンを動員するのがDDoS攻撃。多数のマシンが関わるため、特定のIPアドレスからの通信を遮断するなどで対処しにくい特徴がある。IDSの導入や通信事業者との連携で対応する。

ランダムサブドメイン攻撃

 あるドメインにランダムなサブドメインを付けて、オープンリゾルバに問い合わせをする攻撃方法。例えば、gihyo.co.jp を攻撃するなら、uhauha.gihyo.co.jp のようにする。ランダムであるため、オープンリゾルバのキャッシュには名前解決情報が存在せず、コンテンツサーバへの問い合わせを大量に発生させられる。

ICMP Flood

 通信の疎通確認用プロトコルであるICMPを大量に送信する攻撃方法。基本的なプロトコルであるため、多くのマシンが攻撃対象となり得るのが特徴。ICMPに返答しないことで対応する。

smurf

 疎通確認コマンドであるpingをブロードキャストアドレスに対して行い、返信先に攻撃対象のIPアドレスを設定する。攻撃者側のPCが1台でも、多数のマシンから攻撃用のパケットを送ることができる。ブロードキャストアドレスを使ったpingを禁止することで対応する。

特徴 対策
TCP SYN Flood TCPのコネクションを多数はって妨害 一定期間経過したコネクションの切断
Ping of Death 巨大なパケットを送信して妨害 セキュリティパッチの適用、ICMPへの応答の禁止
DDoS攻撃 膨大な数のPCから攻撃パケットを送信する 効果的な対策が難しい。IDSの導入やキャリアとの連携など
ICMP Flood 大量のpingを送信して妨害 ICMPへの応答の禁止
smurf pingの返信アドレスを標的PCにして、大量んも通信を発生させる ブロードキャストpingの禁止

サービス妨害の法的根拠

 サービス妨害では、個々の通信は特に違法性がない。一般的に伝統的な刑法はコンピュータ犯罪を裁くことが困難だった。  例えば情報の窃視(盗み見ること)は電子計算機損壊等妨害罪や電子計算機使用詐欺罪などの罪には該当しない。刑法では盗難とは有体物を盗むことであり、メモリ上のデータをコピーしても罪には問えないため。そこで不正アクセス禁止法などの行政法規が登場して、アクセス制御しているコンピュータへの攻撃やセキュリティホールを突いた攻撃への罪科を規定した。  しかし、アクセス制御されていないコンピュータは対象外のため、正規のアクセスと区別がしにくいサービス妨害攻撃への適用も困難。サービス妨害攻撃への適用も困難であるという課題は以前として残っている。

1-3-5 ソーシャルエンジニアリング

ソーシャルエンジニアリングとは

 ソーシャルエンジニアリングIT技術によらず、人的な脆弱性を利用して情報を窃取する手法。

ショルダーハッキング

 ショルダーハッキングはその中でも典型的な事例で、ユーザIDやパスワードをタイプしているユーザの肩口からその様子を盗み見て、情報を取得する。  攻撃者が社内の要因で信頼されている場合や、キーボードのタイプが遅いユーザに対して用いられると非常に効果的。攻撃者にしてみれば特にリスクを負うことなく情報を収集することができる。

スキャビンジング

 ゴミ箱あさりのこと。ゴミ箱に捨てられた情報をつなぎ合わせて本来の重要な情報を復元する作業を指す。情報は廃棄段階で扱いがぞんざいになることが多く、意外に重要な情報がエられる場合がある。シュレッダされた情報を復元されるケースもあり、情報の廃棄段階での処理も重要。

会話

 業務担当者同士の会話などは、重要情報の宝庫。ホテルのロビーや喫茶店などで打ち合わせをする場合、周囲の環境や会話の内容に注意する。重要な打ち合わせの場合は、公共の場所を利用しないなどの配慮が必要。  また、不慣れたユーザや権力のあるユーザを装って管理者にユーザIDやパスワードを聞く方法もある。

BEC

 Business E-mail Compromise (「ビジネスメール 詐欺」と訳されることが多い)の略。上司や取引先など、自分にとって逆らいにくい相手からのメールに偽装して、偽の振込などをさせる手法。他のソーシャルエンジニアリング手法を併用して、その会社の標準的な文書フォーマットを攻撃に用いることで、攻撃の成功率を高める。

共連れ

 ICカードや顔認証などのしくみによって、許可された者しか建物や部屋に入れないようなセキュリティシステムを構築していてで、ICカードをかざした者の直後に関係のない人が続くという実にアナログなやり方で、セキュリティシステムが突破されてしまうことがある。これを共連れという。

1-3-6 その他の攻撃方法

スパスメール

 スパムメールとは、無断で送りつけられてくる報告メールや意味のない大量のメール(ネズミ講チェーンメールなど)を指す。スパムメールはプログラムによって自動生成され、大量に送信されるため、メールサーバに大きな負荷をかける。

クリスサイトスクリプティング

 クロスサイトスクリプティング(XSS)は、スクリプト攻撃の一種。スクリプト攻撃はホームページ記述言語であるHTMLにスクリプトを埋め込める性質を利用した攻撃方法。  HTMLへのスクリプトの埋め込みは、動的なコンテンツを作成するためによく利用される技術。しかし、スクリプトに悪意のあるコードを埋め込んでおくことでユーザのコンピュータに被害を与えることも可能。

[クロスサイトスクリプティングの手順]

  1. クラッカーは悪意のあるスクリプトを埋め込んだホームページを作成し、ユーザの利用を待つ。
  2. ユーザが偶然や誘導によりそのホームページを閲覧する。
  3. スクリプト実行に関する脆弱性のあるサイトに要求が転送される(ユーザが信頼しているサイトであればさらによい)
  4. 脆弱性のあるサイトは転送された悪意のあるスクリプトを埋め込んだ形でホームページデータを返信する。
  5. ユーザのブラウザで悪意のあるスクリプトが実行される。

クロスサイトリクエストフォージェリ

 利用者が何らかのサービス(例えば掲示板)を見ている最中に、クラッカーの不正サイトを訪れると、クラッカーから不正スクリプトが送信され、掲示板に意図しない書き込みを行ってしまうような攻撃手法。

ゼロデイ攻撃

 ゼロデイ攻撃は、脆弱性が見つかっているのに、それに対応する手段がない状態での攻撃を指す用語。セキュリティパッチが公開されるまで、ベンダが脆弱性を公表しないなどの措置をとることがあるのは、ゼロデイ攻撃の牽制。