忍者ブログ
[15] [14] [13] [12] [11] [10] [9] [8] [7] [6] [5]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

脆弱性のあるログインフォーム の解説です。ソースコードをまだ見られていない方は、まず、脆弱性のあるログインフォーム をご覧ください。



すでにコメントでほぼ明らかになっていますが、このコードの二つ目の脆弱性は、


<form method="POST" action="<?php echo $_SERVER['PHP_SELF']; ?>">


の $_SERVER['PHP_SELF'] をそのまま表示していることです。$_SERVER['PHP_SELF'] は 現在実行しているスクリプトのファイル名ですが、この値には PATH_INFO も含まれます。

例えば、URL に「http://localhost/this.php/%22%3E%3Cscript%3Ealert('xss')%3C/script%3E%3Ca%20name=%22a」と入力すると、この form タグは、


<form method="POST" action="/this.php/"><script>alert('xss')</script><a name="a">


となります。

実際にやってみるとすぐにわかりますが、この時、警告ダイアログがブラウザの画面に表示されます。入力した JavaScript のコードがブラウザで実行されていることがわかります。

これで、ユーザが自由に JavaScript コードをページに埋め込むことができることがわかります。これも、クロスサイトスクリプティング(XSS)脆弱性です。

ログインフォームの脆弱性(3) へ続く。

PR

コメント


コメントフォーム
お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード
  Vodafone絵文字 i-mode絵文字 Ezweb絵文字


トラックバック
この記事にトラックバックする:


忍者ブログ [PR]
カレンダー
04 2024/05 06
S M T W T F S
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
最新コメント
[02/18 ryu]
[11/21 ぴろ]
[11/07 NONAME]
[11/02 NONAME]
[11/02 NONAME]
最新トラックバック
プロフィール
HN:
Kenji
性別:
非公開
ブログ内検索