KENT-WEB サポートコーナー 過去ログ [ 0287 ]


記事No: 7809
投稿日: 2010/08/09(Mon) 23:47:07
タイトルJOYFUL NOTE のスパム対策
ID情報: chasuke
投稿者: mebaru
URLhttp://cgi.geocities.jp/chasukechan/joy/joyful.cgi

JOYFUL NOTE v2.73 を利用させて頂いております。
スパム対策として、禁止ワード、アクセス制限、同一IPアドレスからの連続投稿時間=60秒、他サイトから投稿排除時に指定、投稿キーの使用 などを適用した結果、日常的なスパム投稿は無くなりましたが、それでも週に1件程度舞い込んでおります。善意の第三者を装っての投稿ですので手の打ちようが有りませんが、ただ彼等は必ず参照URLを記載してきますので、この参照URLの記載を禁止するか、あるいは記載になんらかの制限を課せば投稿を防止出来ると思います。そこで、まずは禁止する方法が有れば教えて頂きたくお願いします。


記事No: 7810
投稿日: 2010/08/10(Tue) 07:07:07
タイトルRe: JOYFUL NOTE のスパム対策
ID情報: teketen
投稿者: てけてん

> まずは禁止する方法が有れば教えて頂きたくお願いします。

http://www.kent-web.com/support/oldlog/0003/0255.html
過去ログを参考にして下さい。


記事No: 7811
投稿日: 2010/08/11(Wed) 12:11:57
タイトルRe^2: JOYFUL NOTE のスパム対策
ID情報: chasuke
投稿者: mebaru
URLhttp://cgi.geocities.jp/chasukechan/joy/joyful.cgi

> > まずは禁止する方法が有れば教えて頂きたくお願いします。
> http://www.kent-web.com/support/oldlog/0003/0255.html
> 過去ログを参考にして下さい。

参考ログの指示通りに修正した結果、URLの記載枠が無くなり、
URL記載が出来ないようになりました。
その結果、スパムはその後投稿されておりません。
有難うございました。

ところで、スパム投稿はメッセージのコピーを張り付けるだけで
投稿に要する時間が秒単位で短いことから、投稿終了までの時間を制限を課すことで防止することは出来ないでしょうか。


記事No: 7814
投稿日: 2010/08/11(Wed) 19:13:41
タイトルRe^3: JOYFUL NOTE のスパム対策
ID情報: Fuyuki
投稿者: BAL
URLhttp://f43.aaa.livedoor.jp/~sumure/

> 投稿終了までの時間を制限を課すことで防止することは出来ないでしょうか。

以下の修正を行ってください。

●registkey.pl
#-------------------------------------------------
# 投稿キーチェック
#-------------------------------------------------
-- 省略 --
# キー一致
if ($input eq $code) {
# 制限時間オーバー
if (time - $time > $pcp_time*60) {
return 0;
} elsif(time - $time < 10) {
return 2;
# 制限時間OK
} else {
return 1;
}

●regist.cgi
#-------------------------------------------------
# 投稿記事受付
#-------------------------------------------------
sub regist {
local($top,$ango,$f,$match,$tail,$W,$H,@lines,@new,@tmp);

# フォーム入力チェック
&form_check;

# 投稿キーチェック
if ($regist_key) {
require $regkeypl;

if ($in{'regikey'} !~ /^\d{4}$/) {
&error("投稿キーが入力不備です。<p>投稿フォームに戻って再読込み後、指定の数字を入力してください");
}
# 投稿キーチェック
# -1 : キー不一致
# 0 : 制限時間オーバー
# 1 : キー一致
local($chk) = &registkey_chk($in{'regikey'}, $in{'str_crypt'});
if ($chk == 0) {
&error("投稿キーが制限時間を超過しました。<br>投稿フォームに戻って再読込み後、指定の数字を再入力してください");
} elsif ($chk == 2) {
&error("投稿フォームを表\示してから10秒以内に投稿されました。<br>投稿フォームに戻って再読込み後、指定の数字を再入力してください");
} elsif ($chk == -1) {
&error("投稿キーが不正です。<br>投稿フォームに戻って再読込み後、指定の数字を入力してください");
}
}


記事No: 7816
投稿日: 2010/08/12(Thu) 11:48:23
タイトルRe^4: JOYFUL NOTE のスパム対策
ID情報: chasuke
投稿者: mebaru
URLhttp://cgi.geocities.jp/chasukechan/joy/joyful.cgi

> > 投稿終了までの時間を制限を課すことで防止することは出来ないでしょうか。
>
> 以下の修正を行ってください。
>
> ●registkey.pl
> #-------------------------------------------------
> # 投稿キーチェック
> #-------------------------------------------------
> -- 省略 --
> # キー一致
> if ($input eq $code) {
> # 制限時間オーバー
> if (time - $time > $pcp_time*60) {
> return 0;
> } elsif(time - $time < 10) {
> return 2;
> # 制限時間OK
> } else {
> return 1;
> }
>
> ●regist.cgi
> #-------------------------------------------------
> # 投稿記事受付
> #-------------------------------------------------
> sub regist {
> local($top,$ango,$f,$match,$tail,$W,$H,@lines,@new,@tmp);
>
> # フォーム入力チェック
> &form_check;
>
> # 投稿キーチェック
> if ($regist_key) {
> require $regkeypl;
>
> if ($in{'regikey'} !~ /^\d{4}$/) {
> &error("投稿キーが入力不備です。<p>投稿フォームに戻って再読込み後、指定の数字を入力してください");
> }
> # 投稿キーチェック
> # -1 : キー不一致
> # 0 : 制限時間オーバー
> # 1 : キー一致
> local($chk) = &registkey_chk($in{'regikey'}, $in{'str_crypt'});
> if ($chk == 0) {
> &error("投稿キーが制限時間を超過しました。<br>投稿フォームに戻って再読込み後、指定の数字を再入力してください");
> } elsif ($chk == 2) {
> &error("投稿フォームを表\示してから10秒以内に投稿されました。<br>投稿フォームに戻って再読込み後、指定の数字を再入力してください");
> } elsif ($chk == -1) {
> &error("投稿キーが不正です。<br>投稿フォームに戻って再読込み後、指定の数字を入力してください");
> }
> }
ご指示に従い修正しましたが、私の修正のしかたにミスが有ったらしく、
掲示板が表示されなくなりました。
修正箇所とその前後を抜粋して下記のテキストファイイルにしましたので、
チェックの上、修正ミスをご指摘頂きたくお願いします。

http://www.geocities.jp/chasukechan/resist.txt
http://www.geocities.jp/chasukechan/resistkey.txt





記事No: 7817
投稿日: 2010/08/12(Thu) 14:17:22
タイトルRe^5: JOYFUL NOTE のスパム対策
ID情報: Fuyuki
投稿者: BAL
URLhttp://f43.aaa.livedoor.jp/~sumure/

> ご指示に従い修正しましたが、私の修正のしかたにミスが有ったらしく、
> 掲示板が表示されなくなりました。
> 修正箇所とその前後を抜粋して下記のテキストファイイルにしましたので、
> チェックの上、修正ミスをご指摘頂きたくお願いします。
>
> http://www.geocities.jp/chasukechan/resist.txt
> http://www.geocities.jp/chasukechan/resistkey.txt

registkey.pl

# キー不一致
} else {
return -1;
}
} ← 最後の”}”が抜けています


記事No: 7818
投稿日: 2010/08/12(Thu) 15:08:01
タイトルRe^6: JOYFUL NOTE のスパム対策
ID情報: chasuke
投稿者: mebaru
URLhttp://cgi.geocities.jp/chasukechan/joy/joyful.cgi

> > ご指示に従い修正しましたが、私の修正のしかたにミスが有ったらしく、
> > 掲示板が表示されなくなりました。
> > 修正箇所とその前後を抜粋して下記のテキストファイイルにしましたので、
> > チェックの上、修正ミスをご指摘頂きたくお願いします。
> >
> > http://www.geocities.jp/chasukechan/resist.txt
> > http://www.geocities.jp/chasukechan/resistkey.txt
>
> registkey.pl
>
> # キー不一致
> } else {
> return -1;
> }
> } ← 最後の”}”が抜けています

ご指示どおり、下記URLのように ”}”を追加しましたが表示されません。重ね重ねお手数をお掛けしますが、もう一度チェック頂きたくお願いします。

http://www.geocities.jp/chasukechan/resistkey.txt


記事No: 7819
投稿日: 2010/08/12(Thu) 15:55:17
タイトルRe^7: JOYFUL NOTE のスパム対策
ID情報: Fuyuki
投稿者: BAL
URLhttp://f43.aaa.livedoor.jp/~sumure/

以下に差し替えてください。


# キー一致
if ($in{'regikey'} == $code) {
# 制限時間オーバー
if (time - $time > $pcp_time*60) {
return 0; }
if(time - $time < $wait_time) {
return 2;
# 制限時間OK
} else {
return 1;
}
# キー不一致
} else {
return -1;
}
}


記事No: 7820
投稿日: 2010/08/12(Thu) 16:36:09
タイトルRe^8: JOYFUL NOTE のスパム対策
ID情報: chasuke
投稿者: mebaru
URLhttp://cgi.geocities.jp/chasukechan/joy/joyful.cgi

> 以下に差し替えてください。
>
>
> # キー一致
> if ($in{'regikey'} == $code) {
> # 制限時間オーバー
> if (time - $time > $pcp_time*60) {
> return 0; }
> if(time - $time < $wait_time) {
> return 2;
> # 制限時間OK
> } else {
> return 1;
> }
> # キー不一致
> } else {
> return -1;
> }
> }

下記URLのように差し替えましたが、表示しません。
http://www.geocities.jp/chasukechan/resistkey.txt


記事No: 7821
投稿日: 2010/08/12(Thu) 20:23:51
タイトルRe^9: JOYFUL NOTE のスパム対策
ID情報: Fuyuki
投稿者: BAL
URLhttp://f43.aaa.livedoor.jp/~sumure/

この箇所の変更を

if(time - $time < $wait_time) {
      ↓
if(time - $time < 10) {


掲示板が表示されないのは
#-------------------------------------------------
# 簡易暗号
#-------------------------------------------------
これから下の部分が抜けているせいです。


記事No: 7822
投稿日: 2010/08/13(Fri) 00:22:48
タイトルRe^10: JOYFUL NOTE のスパム対策
ID情報: chasuke
投稿者: mebaru
URLhttp://cgi.geocities.jp/chasukechan/joy/joyful.cgi

> この箇所の変更を
>
> if(time - $time < $wait_time) {
>       ↓
> if(time - $time < 10) {
>
>
> 掲示板が表示されないのは
> #-------------------------------------------------
> # 簡易暗号
> #-------------------------------------------------
> これから下の部分が抜けているせいです。

ご指示のif(time - $time < $wait_time) {
が見当たりませんの変更でませんでした。
尚、resistkey.txtでは問題となる部分のみクローズアップさせるためにその前後は省略
しており、実際の resistkey.pl では、「# 簡易暗号」以降も存在しております。

また、オリジナルの resistkey.plを上書きアップロードしたところ、掲示板は参照URL
のように正常に表示されましたので、resist.cgiに問題無いことが判っております。
因みに、resistkey.plの全内容を改めて下記URLにしてみました。
http://www.geocities.jp/chasukechan/resistkey.txt

これ以上、お手数を掛けるわけにはいきませんので、今回のお願いを最後として、
resistkey.pl をチェックして頂きたくお願いします。











記事No: 7823
投稿日: 2010/08/13(Fri) 01:05:26
タイトルRe^11: JOYFUL NOTE のスパム対策
ID情報: Fuyuki
投稿者: BAL
URLhttp://f43.aaa.livedoor.jp/~sumure/

これで10秒以内の投稿はエラー処理されます

# キー一致
if ($in{'regikey'} == $code) {
# 制限時間オーバー
if (time - $time > $pcp_time*60) {
return 0; }
if(time - $time < 10) {
return 2;
# 制限時間OK
} else {
return 1;
}
# キー不一致
} else {
return -1;
}
}


記事No: 7825
投稿日: 2010/08/13(Fri) 09:47:50
タイトルRe^12: JOYFUL NOTE のスパム対策
ID情報: chasuke
投稿者: mebaru
URLhttp://cgi.geocities.jp/chasukechan/joy/joyful.cgi

> これで10秒以内の投稿はエラー処理されます
>
> # キー一致
> if ($in{'regikey'} == $code) {
> # 制限時間オーバー
> if (time - $time > $pcp_time*60) {
> return 0; }
> if(time - $time < 10) {
> return 2;
> # 制限時間OK
> } else {
> return 1;
> }
> # キー不一致
> } else {
> return -1;
> }
>

上記処理により、参照URLのように正常に表示されました。
これまで、非表示になっていたのは、「# キー一致」が「キー一致」と #が欠落していたことによるもので私の不注意で、申し訳有りませんでした。

ところで、この10秒以内とは、どの時点からどの時点までを指すのでしょうか、恐縮ですがお教えください。
いろいろと有難うございました。


記事No: 7828
投稿日: 2010/08/17(Tue) 17:33:34
タイトルRe^13: JOYFUL NOTE のスパム対策
ID情報: Fuyuki
投稿者: BAL
URLhttp://f43.aaa.livedoor.jp/~sumure/

> ところで、この10秒以内とは、どの時点からどの時点までを指すのでしょうか、恐縮ですがお教えください。

掲示板にアクセスした時点からです。


記事No: 7907
投稿日: 2010/09/01(Wed) 13:02:46
タイトルRe^14: JOYFUL NOTE のスパム対策
ID情報: chasuke
投稿者: mebaru
URLhttp://cgi.geocities.jp/chasukechan/joy/joyful.cgi

> > ところで、この10秒以内とは、どの時点からどの時点までを指すのでしょうか、恐縮ですがお教えください。
>
> 掲示板にアクセスした時点からです。


記事No: 7991
投稿日: 2010/10/04(Mon) 20:18:43
タイトルRe^15: JOYFUL NOTE のスパム対策
ID情報: chasuke
投稿者: mebaru
URLhttp://cgi.geocities.jp/chasukechan/joy/joyful.cgi

従来からの禁止語句、アクセス制限、投稿キー、参照URLの記載の禁止の設定に加え、今回教えて頂いた
投稿時間の制限を追加することによりスパム投稿は皆無になりましたが、今日下記URLのスパム投稿が舞い込んできました。
(公開を憚る画像が添付されておりましたのでボカシを入れております)
メッセージ中に、「cybersyndrome.info/」の記載が有りましたので、禁止語句の対象にしておきました。
このようなスパム投稿を防ぐには更にどのようなことを注意したらいいのでしょうか。
http://www.geocities.jp/chasukechan/spamtoko.bmp



記事No: 7992
投稿日: 2010/10/04(Mon) 23:45:57
タイトルRe^16: JOYFUL NOTE のスパム対策
ID情報: liberty8
投稿者: KK
URLhttp://www11.atpages.jp/atgamewikibbs/Patio.html

スパムに注意するも何もありません。
マルウェアと違って、削除したら活動が終わるわけではないのです。今のところ防ぐことしかできません。
HTML5の機能を使えば簡単に排除できそうですが、IE8以前ではHTML5には未対応です。

現在、前に紹介したライブラリを"AntiSpam.pm"として対策を強化中です。
JOYFUL NOTEにAntiSpam.pmを適用したものを置いておきます(ブラウザのアドレスバーからアクセス)
http://www11.atpages.jp/atgamewikibbs/joyful.zip

前回の説明が長くなってしまったので今回はこれだけに。


記事No: 7994
投稿日: 2010/10/05(Tue) 22:53:08
タイトルRe^17: JOYFUL NOTE のスパム対策
ID情報: chasuke
投稿者: mebaru
URLhttp://cgi.geocities.jp/chasukechan/joy/joyful.cgi

> 現在、前に紹介したライブラリを"AntiSpam.pm"として対策を強化中です。
> JOYFUL NOTEにAntiSpam.pmを適用したものを置いておきます(ブラウザのアドレスバーからアクセス)
> http://www11.atpages.jp/atgamewikibbs/joyful.zip
>
> 前回の説明が長くなってしまったので今回はこれだけに。

ご指示に従い、AntiSpam.cgi AntiSpam.pm を追加アップロードいたしました。有難うございました。


[検索ページ]