Zazelです。
=== 藤岡和夫 <kazuf@...> さんが書かれた
=== <20060606221750.4F99.KAZUF@...> にて
> 毎度お世話になります。やはり入力のチェックというのは重要なんですね。僕
> は自分で書いて自分で使うので、そういう習慣がまったくないのですが、まずい
> ですね(^^;)
例えば藤岡さんのCodeZineの記事はCGIを置くディレクトリの設定を
Order allow,deny
Allow from all
と書いてありますが、このままインストールした機器をファイヤー
ウォール無しでインターネットに接続すれば、彼方からCGIを叩ける
状態で公開されてしまいます。読者の雑多な環境のことを考えれば、
Order allow,deny
Allow from 127.0.0.1
または
Listen 127.0.0.1:80
あたりの設定を例示すべきと、私ならば考えます。
つまりCGIの脆弱性のみならず、Apacheの将来発見されるかもしれない
脆弱性もアクセスフリーで公開している可能性もあります。
このあたりは気をつかったほうがいいと思いますよ。
# 実はOptions ExecCGI がなくて動いているのかも気になるけど…。
> プログラミングPerl第3版のセキュリティの章にsysopenの話が出ていますね。
> 使ったことがないので、よくわからないですけど、既存のファイルを上書きしな
> いようにO_EXCLを使うことがポイントらしいですね。Windowsの場合、既存のファ
> イルの上書きをしないことにどの程度意味があるのかは興味がありますけど。
例えば %windir%\system32\driver\etc\hosts を上書きできれば
いろいろなことができますね。(^_^)
ただ私がsysopen()を好んで使っていたのは、Bruce.さんが書かれた
パイプなどを使えないようにすることが主目的でした。
(* SEKI Masatoshi // Zazel *)
(* Would you hold my hand? Softly, let's linger. *)