なぜPHPアプリにセキュリティホールが多いのか?
第7回 いまさらながらクロスサイトスクリプティングの基礎の基礎
今回はWebアプリケーションを作ったことがない方でも分かるようクロスサイトスクリプティング脆弱性を解説します。
クロスサイトスクリプティングとは?
初めてクロスサイトスクリプティングと聞いて, 例1 簡単な直接攻撃 掲示板サイトに投稿されたデータをエスケープ処理なしに出力し,
Webアプリケーションは,
Webアプリケーションプログラミングに慣れていない方は,
クッキーはHTTPセッション管理に利用されるセッションIDに利用されます。
例えば,
この連載ではSQLインジェクションは簡単に防げると書きました。SQLインジェクションはクエリ実行時にスドアドプロシージャを利用するか,
クロスサイトスクリプティングはSQLインジェクションと異なり, 例2 XSSに脆弱なPHPコード ※$_SERVER['PHP_
ユーザ入力を一旦別の変数に代入すると,
さらに, 例3 脆弱なJavaScriptコード
実際の脆弱性はこの例のほど単純ではありませんが,なぜクロスサイトスクリプティングは危険な脆弱性なのか?
なぜクロスサイトスクリプティングは無くならないのか?
クロスサイトスクリプティングが無くならない理由
<form name="some_form" method="post" action="<?php echo $_SERVER['PHP_SELF'] ?>">
document.write(window.location)
この記事に関連する書籍
-
Webアプリセキュリティ対策入門〜あなたのサイトは大丈夫?
本書は,Webサイトのセキュリティ確保のために必要な基礎知識と,安全なコードを書くために必要な基礎知識を解説しています。Webアプリケーションは比較的簡単に作成で...
-
はじめてのPHP言語プログラミング入門
Webアプリケーション構築ツールとしてPHPを取り上げた書籍は数多くありますが,言語の解説・入門書としての書籍はあまりありません。 本書は,プログラミング言語として...
バックナンバー
なぜPHPアプリにセキュリティホールが多いのか?
- 第46回 セキュリティ対策を考える上で欠かせないコンテクスト
- 第45回 入力バリデーションはセキュリティ対策
- 第44回 セキュリティ対策が確実に実施されない2つの理由
- 第43回 PHP 5.3のcrypt関数の問題
- 第42回 PostgreSQL 9.0に見るSQLインジェクション対策
- 第41回 PHP 5.3.4におけるセキュリティ上重要な仕様変更
- 第40回 MOPS:安全性の高いパスワードハッシュ作成ツール - phpass
- 第39回 MOPS:静的PHPソースコード脆弱性スキャナ RIPS
- 第38回 MOPS:PHPにおけるコード実行(2)
- 第37回 MOPS:PHPにおけるコード実行(1)