bbs.cgiなどの掲示板スクリプトに関する要望やバグの報告をする
スレッドです。
■注意
・要望に必ずしも応えるとは限りません。
・セキュリティ上の理由から、修正内容や修正があったこと自体が
公表されない場合があります。
・/b>osm.osas.co.jp
fusianasanの応用で以降のレスをすべて太字にしてしまう手口の荒らしが
出ています。中途半端な文字コードをチェックして弾くようにしてください。
たとえばこういうの。なんかまたまったく理解できないとか言われそうです
が。
my $re_sjis_zen = '[\x81-\x9F\xE0-\xFC][\x40-\x7E\x80-\xFC]';
my $re_sjis_han = '[\xA1-\xDF]';
my $re_ascii = '[\x20-\x7E]';
unless ($FORM{'FROM'} =~ /^($re_sjis_zen|$re_sjis_han|$re_ascii)*$/) {
DispError("ERROR!","ERROR:名前欄に不正な文字列があります。");
}
で、同様のチェックをメール欄やサブジェクトに対しても行います。この
チェックは当然fusianasanの置換を終えた後に行う必要があります。
このチェックを行うようにすれば "mailto:$mail " の末尾に空白を入れる
といった小細工も不要になります。
また、スクリプトで直接bbs.cgiを叩くなどの方法を使っても、文字化けし
たパターンを名前欄やメール欄に入れることができなくなります。
sjisチェックよりずっと確実です。