WEB業界で働く人や興味がある人に役立つ情報サイト“qam(カム)”

コロ

2016/06/17

ディレクターが知っておくべき代表的な3つのセキュリティ対策

投稿者: コロ
カテゴリー: プログラム >セキュリティ

「御社では何かセキュリティ対策をしていますか?」とお客様から聞かれた時にどのように返事をしていますか?ディレクターだからといって「知りません」「分かりません」ではいけません。今回は代表的な3つの攻撃手法とその対策についてディレクターが知っておいた方が良い最低限のことを解説していこうと思います。

よく聞く攻撃手法

まずはよく聞く攻撃手法について名前だけでも知っておきましょう。

  • クロスサイトスクリプティング(XSS)
  • クロスサイトリクエストフォージュエリ(CSRF)
  • SQLインジェクション
  • セッションハイジャック
  • ディレクトリ・トラバーサル
  • HTTPヘッダ・インジェクション
  • メールヘッダ・インジェクション

代表的なものでもこんなにたくさんあるのですね。

その中でもセキュリティ診断をかけて指摘の多い代表的な3つの攻撃について詳しくみていきましょう。

クロスサイトスクリプティング(XSS)

悪意のあるHTMLやスクリプトが埋め込んであるWEBサイトにユーザーがアクセスし、フォームなどに情報を入力して完了したとします。その情報が別のWEBサイトに送信されていてユーザーの情報が流出してしまう攻撃のことです。WEBサイトの一部に不正なコードを挿入するため、WEBサイトが改ざんされたことに気づきにくく、また閲覧したユーザーも気づかないため、気づいたときには被害を受けていることがあります。

対策

代表的な対策は、サニタイジングと呼ばれる、テキストデータ上の「&」や「>」など特殊文字を一般的な文字列に変換する処理を行うことです。HTMLの中には、特別な意味を持つ文字として定義されている文字があります。例えば「&」「<」「>」「“」「‘」などです。それらは本来適切な方法で変換(エスケープ処理)しなくてはいけません。対策の詳細については、IPAのWEBサイトに掲載されているためこちらを基に対策を行うことをお勧めします。

クロスサイトリクエストフォージュエリ(CSRF)

WEBサイトやフォームからの投稿や登録を、本来の手順を経ずに他のWEBサイトからユーザーになりすましてしまう行う攻撃のことです。インターネットショッピングの最終決済や退会時など重要な処理の時に誘導しようとします。
日本語にすると・・・
他のWEBに移動し(クロス)、ユーザの要求を偽って(フォージェリ)、悪意を持って細工された要求(リクエスト)が送られる

攻撃例の詳細

  1. 攻撃者が罠を仕掛けたWebサイトを用意する
  2. 被害者が罠サイトを閲覧する
  3. 罠サイトを閲覧した被害者のPCから、被害者がそのときアクセスするつもりのないWEBサイトの掲示板などに強制的にアクセスさせられ、コメントなどが書き込まれる
  4. 結果、意図しない情報が公開されていたり、情報が書き代わる

※参照元:CSRF (クロスサイト・リクエスト・フォージェリ)の具体的な攻撃例

対策

代金決済やコミュニティ脱退等の重要な場面において、第三者が用意した偽のコンテンツであるということを区別できるようにしなければいけません。そのためcookieで判別するのではなく、攻撃者に推測されにくい情報を照合しないといけません。照合に使う情報については、自社のエンジニアの判断に任せるとして、ディレクターとしては、「やっていますか?」と確認ができるようにしておきましょう。

SQLインジェクション

ディレクターならよく聞く「SQL」。SQLでデータベースに不正にアクセスし、データベース内の機密情報の漏洩やデータ改ざんを行います。
日本語にすると・・・
SQLを使って注入(インジェクション)する

対策

入力値及びパラメータを適切にエスケープするかプレースホルダーを使うのがよいと言われています。が正直な話ここからはかなり専門分野になるので、作業は自社のエンジニアに任せることとします。しかし担当ディレクターとして「やっていますか?」と確認ができるようになりましょう。また、定期的にWEBサイト全体の脆性性チェックを行うことも対策の1つとして有効です。運用時のメンテナンスとして追加しておきましょう。

上記の3つが代表的な攻撃手法です。しかし本格的なセキュリティ対策をしようと思ったら、WEBサイトだけでなく、サーバーやデータベースやアプリケーションなど多岐に渡ります。担当している案件がECサイトなのかコーポレートサイトなのかログイン情報が必要なクローズドなコミュニティサイトなのかによって対策する攻撃やそのレベルも異なりますが、お客様から「セキュリティ対策やっておいた方がいいって聞くけど」と尋ねられた際にさらっと単語が出てくるようになるといいですね。

コーディング業務のご依頼、ご相談の詳細についてはこちらから

最後までお読みいただき、ありがとうございました。

よろしければシェアしていただければ幸いです。

  • このエントリーをはてなブックマークに追加

関連記事

よろしければこちらの記事もお読みください。

WEB業界ならqam!qam(カム)はWEB業界で働く人や興味がある人に役立つ情報サイトです。
マーケティングやデザイン、マークアップ(コーディング)、プログラム、トレンドなどの情報をqamライター陣が執筆。噛めば噛むほど(読めば読むほど)制作・開発や運営・運用、業界知識やノウハウを学ぶことができます。

トップへ