和宏クロスサイト・スクリプティングへの対処方法を説明します。フォームを利用してクライアントから送られてきたデータを利用するときには,クロスサイト・スクリプティング(XSS)の問題に注意が必要です。XSSは,悪意のあるスクリプトを書き込むことで,個人ユーザーの情報を奪い取る攻撃のことです。Webブラウザに保存してある個人のCookie情報を奪い取り,その情報を使って他人になりすましてオンライン・ショッピングを行うなどの不正利用のきっかけとなります。XSSを引き起こす原因は主に,ユーザーの入力内容をそのまま出力として利用することにあります。書き込める掲示板があったとしましょう。書き込まれた内容を他のユーザーがWebブラウザで実行して,Cookie情報を奪い取られてしまうということが起こります。危険を身近に感じるために,具体例を示しましょう。図1の「xss_test.cgi」というスクリプトを利用して簡単なテストができます。xss_test.cgiはテキスト・エリアに入力した内容をそのまま表示するスクリプトです。入力したJavaScriptが実行されてしまった。xss_test.cgiを読み出し,テキスト・エリアに図1のような内容を書き込んで,投稿します。すると,結果の画面が表示された際に,入力したJavaScriptが実行され,警告ダイアログが表示されてしまいます(写真1)。無効にする仕組み(サニタイジングという)を設けておく必要があります。簡単な防御方法は,クライアントから入力したデータをHTMLに出力する場合は,タグなどの特殊記号をブラウザで強制的に文字として扱うように変換してしまうことです。タグは必ず「<」と「>」でくくられます。このタグを無効にするには,「<」を「<」,「>」を「>」に置換します。ブラウザ上では文字として「<」および「>」が表示されるようになります。同様に置換しておいた方がよい文字列を表1に示します*1。表1●置換を行うべき文字XSSを防止するために変換をしておくべき文字とその対応文字列。s/対象の文字列/置き換える文字列/g;と記述します。s/</&lt;/g;と記述します。同様に表1で示した文字についても置換します。これで,XSSの影響を受けなくなります。農家が実感した自動飛行ドローンのすごさクラウド現場の負担軽減を!医療界でのAWS活用法SaaSを加速するソリューションとは?クラウドの新形態「aPaaS」のメリットDXを阻むコミュニケーションの壁とは?AWSとSAPの連携強化がもたらす利点は500万社が導入。価値創造型の社内コミュニケーションとは発想を豊かにする有機的な会議ツールとは働き方が変わる。Reserved.このページに掲載されている記事・写真・図表などの無断転載を禁じます。掲載している情報は、記事執筆時点のものです。