購読中です 読者をやめる 読者になる 読者になる

明日からがんばる

明日からがんばるブログ

XSSがよくわからなかった

php

先日、XSSに関するブログを読み、「そもそもXSSって何だっけ?」と思い、色々調べてみたところ、
よくわかるサイトとよくわからないサイトがありました。
そこで、自分の疑問をまとめておきます。


XSSとは?

クロスサイトスクリプティングXSS)とは、Webサイトへの有名な攻撃(ハッキング)手法になり、簡単にいうと「他人のWebサイトへ、悪意のあるスクリプトを埋め込む」事です。

http://viral-community.com/blog/xss-1835/

だ、そうです。


ためしに書いてみた

簡単な、フォームの値をそのまま出力するページです。

<!DOCTYPE html>
<html>
<?php
if(isset($_REQUEST['in'])):
  echo "あなたが入力したのは「{$_REQUEST['in']}」だよ!!";
else:
?>
入力してね!
<form action="./" method="get">
  <input type="input" name="in">
  <input type="submit">
</form>
<?php
endif;
?>
</html>




できたページがこちら。

[入力画面]
f:id:hatsu_mi:20150506141343p:plain


[結果画面]
f:id:hatsu_mi:20150506141406p:plain

非常に簡単ですね。







また、入力した値をそのまま出力しているだけなので、任意のスクリプトが実行できてしまいます。


[入力画面]
f:id:hatsu_mi:20150506141913p:plain


[結果画面]
f:id:hatsu_mi:20150506141944p:plain





で、何が悪いの?

さて、このページにXSS脆弱性があるのでしょうか?
僕は無いように思えました・・・

任意のコードを実行できるものの、
そのコードを実行できるのは書いた本人だけだからです。

ですが、このような説明を行っている入門書や入門サイトが多い気がします。。。

「任意のスクリプトが実行できる! = 脆弱性だ!」

っていうのは何か違くない?


それとも、僕が気づいていないセキュリティホールがあるのかな?