よくきたはてダ このページをアンテナに追加 RSSフィード Twitter

2007-12-19

補足

http://blog.boreal-kiss.com/2007/12/17113928.html

http://d.hatena.ne.jp/elf/20071217/1197892585#c1198038864

にてコメントを返しました.って下記を付けて書こうとしたらHTMLタグが消えちゃったのではてダにします.

1つ目としての肝心な部分はそもそもreadfile()とかでバッファリングしなくてもいいよってことなんですが(苦笑

2つ目についてはitohさんのおっしゃる通りです.

例えばこういうフォームで踏み台にできますね.

<html>
<head>...</head>
<body>
<form action="http://example.com/path/to/yourpage.html" method="post">
<input type="hidden" name="url_from_flash" value="http://www.yahoo.co.jp/" />
<input type="submit" />
</form>
</body>
</html>

これで重要なのは上記HTMLだとwww.yahoo.co.jpアクセスログに残るのはこのHTMLを踏んだ人ではなく,管理人さんのサーバーからのアクセスが記録されます.

これを利用してむかつくサイトを攻撃したり,隠しファイルを代理で取得させたり夢は広がってしまうわけです.

仮にこれがイントラネット向けでもアクセス制限を回避して盗まれる可能性がでてくるなどの問題がでてくるわけで,「社内だから問題ない」は通用しないケースが出てきます.

補足的にはPHP 5.2のとあるバージョンから蒸気を利用した攻撃がしづらい設定をすることも可能になっていますので,それを調べてみるのもいいかもしれません.

どちらにしろ私はファイル操作関数群でリモートファイルを取得することは控えることを強く勧めますが.