カレッヂ |
質問者 しぴ
投稿日 5/4(金) 14:28:55
CGI初心者なのですが、掲示板のデータファイルを意図的に 消すようなことは可能なのでしょうか?また、それを阻止 するには、受けとったフォームデータの個々について、 |や$とかいった記号をカットするだけで100%安全 でしょうか? 言い換えると、フォームにいかなる悪戯目的のコードを書かれて 送信されても、安全(内部データファイルを閲覧されたり、削除さ れたりしないため)にするためにはどうすればいいのでしょうか? perlのプログラムの経験が浅い私自身が考えるに、受け取った フォームデータを正規表現をつかって、\や|をカットすればい いと考えますが、ユニックス等の知識が不足しているため、万 全の対策が思いつきません。 なにか、アドバイスをいただけると幸いに存じます。よろしく お願いいたします。 |
回答者 しあわせのツボ
[削除]
投稿日 5/5(土) 02:56:02
普通に掲示板を立てる程度であれば、それほど神経質にならなくても大丈夫だと思います。 システムコマンドを使わずPerlの関数だけで組めば特殊文字があっても問題ないでしょうし、SSIコマンドを打たれてもCGI経由でログを出力すればSSIは働きません。 むしろ危険なのは、パスワードもかけずにログ編集用のCGIを置いていたり、管理者パスワードに破られやすいものを設定していたり、といった部分です。 どうしても心配であれば、できあいの掲示板スクリプトはまず安全でしょうから、それを改造する所から始めればいいでしょう。 |
質問者 しぴ
[削除]
投稿日 5/15(火) 10:39:52
しあわせのツボ さんから回答いただけるなんて、うれしいです。 こちらの返答が遅れて申し訳ございませんでした。 システムコールの部分がどういった手法なのか、ユニックス初心者 なんで、?なのですが、ちょっとずつ勉強していこうと思います。 とりあえず、システムコールしなければ安全という解釈でいたい と思います。 あとは外部からの情報を引数に代入しないとか、代入する 場合は、やばそうな文字を削除しておくとか、そういうこと で、よろしいでしょうか? パスワードについては、現実にパスワードをやぶるソフトなどを つかったことがないだけに、盲目的になりがちですね、注意した いと思います。 |
返信(回答)する
Web裏技 |