• 検索結果がありません。

構文木を作成する

(HTML許可/根本的解決)

• 複雑な処理であり、十分な検討が必要。

html head

title meta

link

body table

thead tbody

p a font

script

入力値チェック

(HTML許可/保険的対策)

• スクリプトを無害な文字列に置換する

<script>

<xscript>

javascript:

xjavascript:

• 完全な対策は困難

java&#09;script:

java

(改行コード)

script:

文字コード指定を行う

(共通/根本的解決)

• ウェブブラウザが、ウェブサイトの意図と反す る文字コード解釈をする場合があり、ウェブ サイト側での対策の効果がなくなる。

• Content-Type: ヘッダでの指定

– Content-Type: text/html; charset=euc-jp

• meta タグでの指定方法

– <meta http-equiv="Content-Type"

content="text/html; charset=euc-jp">

包括的なクロスサイト・スクリプティング対策

• ウェブサイト全体に対策を行き届かせたい、

でもどうすれば?

テンプレートエンジンを利用する方法がある。

: Struts(Java), Smarty(PHP), Ruby on Rails

• テンプレートエンジンの内容を、よく把握して 使う必要がある。

• 漏れが起きる可能性を少なくする設計ができ

る。

まとめ:クロスサイト・スクリプティング

ウェブページを出力する際の配慮を怠ると、クロス サイト・スクリプティングの脆弱性が生じる。

全ての個所に対して、対策を施す必要がある。

詳しくは「安全なウェブサイトの作り方」を参照。

安全なウェブサイトの作り方 改訂第

3

http://www.ipa.go.jp/security/vuln/websecurity.html

安全なウェブ開発のための資料

他の脆弱性への対策も重要

• クロスサイト・スクリプティングや OS コマン ドインジェクションに代表される脆弱性

• SQL インジェクションと同様に、設計時から の対策で防げるものが多い

• 実施する対策の効果や性質を正しく理解する

• 安全なプログラミング知識を身に付ける

安全なウェブサイトの作り方

http://www.ipa.go.jp/security/vuln/websecurity.html

• IPA に届出られた脆弱性関連 情報をもとに、対策をまとめた もの

• 脆弱性ごとに解説と「根本的 解決」「保健的対策」を記載

• 「失敗例」について記載

• ウェブセキュリティの実装状況 のチェックリストつき

書籍 ウェブ

セキュア・プログラミング講座(新版)

http://www.ipa.go.jp/security/awareness/vendor/programmingv2/

• 安全なプログラムについて 要求定義や設計段階からの 対策について記載

– WEB

アプリケーション編

– C/C++

言語編

ウェブ

■まとめ:ウェブアプリケーションの

安全性向上のためのポイント

• 実施する対策の効果や性質を正しく理解する

• 安全なプログラミング知識を身に付ける

参考サイト:

安全なウェブサイトの作り方

http://www.ipa.go.jp/security/vuln/websecurity.html

セキュア・プログラミング講座(新版)

http://www.ipa.go.jp/security/awareness/vendor/programmingv2/index.html

知っていますか?脆弱性

http://www.ipa.go.jp/security/vuln/vuln_contents/