Web・ネットワーク攻撃の仕組みと防ぎ方

SQLインジェクション・XSS・DoS/DDoS・パスワード攻撃の手口と対策をSG試験向けにまとめて解説。

編集・検証: 情報セキュリティマネジメントスタディ編集部 公式情報: IPA 情報セキュリティマネジメント試験公式ページ 制作・検証方針

この回では、WebアプリやネットワークをねらうSQLインジェクション・XSS・DoS/DDoS・パスワード攻撃の仕組みと対策を学ぶよ。

紺野 アキ(普段) 紺野 アキ

Webサイトが攻撃されるって、具体的にどうやるの?

銀城 ナディア 先生(普段) 銀城 ナディア 先生

代表的なのがSQLインジェクションね。
入力欄に不正なSQL文の断片を紛れ込ませて、データベースを不正に操作したり情報を盗み出したりする攻撃よ。

灰原 さや(普段) 灰原 さや

対策は、入力値をそのままSQLに埋め込まず、プレースホルダを使うプリペアドステートメントが有効ですね。

銀城 ナディア 先生(普段) 銀城 ナディア 先生

そう。
入力値のチェック(サニタイジング)と合わせて、想定外の文字を無害化するのが基本よ。

紺野 アキ(普段) 紺野 アキ

XSSってのも聞いたことある!

銀城 ナディア 先生(普段) 銀城 ナディア 先生

クロスサイトスクリプティング、略してXSSね。
掲示板などの入力を悪用し、悪意あるスクリプトを他の利用者のブラウザで実行させて、Cookieやセッション情報を盗む攻撃よ。

灰原 さや(普段) 灰原 さや

対策は、入力された文字列をそのまま表示せず、特殊文字を無害な表記に変換するエスケープ処理が重要です。

薔薇崎 ねむ(普段) 薔薇崎 ねむ

似た名前でCSRFっていうのもありましたよねぇ?

銀城 ナディア 先生(普段) 銀城 ナディア 先生

CSRF(クロスサイトリクエストフォージェリ)ね。
ログイン中の利用者に、本人の意図しないリクエストを勝手に送らせる攻撃。
トークンを使った照合で防ぐのよ。

紺野 アキ(普段) 紺野 アキ

サイトを重くして落とす攻撃もあるよね?

銀城 ナディア 先生(普段) 銀城 ナディア 先生

DoS攻撃ね。
大量のアクセスや処理を送りつけてサーバをパンクさせ、サービスを停止させるの。

灰原 さや(普段) 灰原 さや

多数の乗っ取った端末から一斉に攻撃する分散型がDDoS攻撃です。
発信元が多くて防ぎにくいのが特徴ですね。

銀城 ナディア 先生(普段) 銀城 ナディア 先生

最後にパスワードを狙う攻撃。
総当たりで試すブルートフォース攻撃、よく使われる語を辞書のように試す辞書攻撃、他所で漏れたIDとパスワードの組を使い回すパスワードリスト攻撃があるわ。

薔薇崎 ねむ(普段) 薔薇崎 ねむ

使い回しは危ないってよく言われますねぇ。

銀城 ナディア 先生(笑顔) 銀城 ナディア 先生

その通り。
パスワードは長く複雑にして使い回さない、そして多要素認証を併用する。
一定回数間違えたらロックする仕組みも有効よ。

確認クイズ

Webアプリケーションの入力欄に不正なSQL文の断片を送り込み、データベースを不正に操作したり情報を盗み出したりする攻撃はどれか。

  1. クロスサイトスクリプティング
  2. SQLインジェクション
  3. DDoS攻撃
  4. パスワードリスト攻撃
こたえを見る

正解: 2. SQLインジェクション

SQLインジェクションは入力値に不正なSQL文を紛れ込ませてデータベースを不正操作する攻撃で、プリペアドステートメントの利用が有効な対策。クロスサイトスクリプティングは悪意あるスクリプトを他人のブラウザで実行させる攻撃、DDoS攻撃は多数の端末から大量アクセスを送りサービスを停止させる攻撃、パスワードリスト攻撃は他所で漏れたIDとパスワードの組を使い回してログインを試みる攻撃であり、いずれもデータベースにSQL文を注入する手口とは異なる。

🔖 この記事の関連書籍

Amazonアソシエイトリンクを含みます。他分野は おすすめ書籍ページ へ。