最初に読んでね ダウンロード 検索 ユーザー登録する 連絡 マイストア ログイン  
トピックに返信する [Tips] コメントスパム・登録スパムの対処法 このエントリーを含むはてなブックマーク
ページ直接移動 1, 2, 3  次のページへ≫
コメントスパム・登録スパムの対処法
群青
投稿上級者さん
投稿上級者さん

登録日: 2005.04.17
記事: 75
所在地: 【アダ被の部屋】
引用付きで返信する
phpBBのフォーラムを運営して、しばらくするとほぼ100%の確率でスパムが来るようになります。
大きく分けて二つ。コメントスパムと登録スパムです。
今のところ、手動書き込み以外では英語のものしか見たことありません。

・コメントスパム
文字通りで、書き込みのスパムです。アダルト、ドラッグ、不正ソフト等々のURLを貼り付けるものです。

・登録スパム
プロフィールの「URL」欄に、コメントスパムと同様のURLを貼り付けてクリックを誘うもの。


一旦スパムが来だすと、どんどん増えてくるのは他のスパムと同様です。
なお、MODのインストール方法はこちらをどうぞ

・ phpBB2 MODインストール(導入)のやり方


・対処法

(0) アクティベートを必須にする(基本です)

たしか最新版ではデフォルト設定になっていた記憶がありますが定かではありません。

管理者画面の「一般管理」→「一般設定」の「アカウントのアクティベーション」がもし「無効」になっていれば、これを「有効(ユーザー)」に設定します。「有効(管理者)」でも構いませんが、少々煩雑ですし、登録する側にするとどうしてもタイムラグができるので面白くありません。

これによって、有効なメールを登録していない人を弾けますし、スパマーは100%アクティベートして来ませんのでこれも区別できます。

いろんな意味で、これは基本の必須設定だと思います。


(1) パーミッションによる対応

コメントスパムに関しては、一番確かな方法は「登録者のみ投稿可能」にパーミッションを設定することです。仮に書き込まれてしまっても、登録した後の書き込みであれば一括削除は容易ですし、後で書くアクティベート必須とすればより効果的です。スパマーは、まず100%アクティベートして来ませんので。

ただ、仲間内フォーラムならこれで良いのですが、オープンフォーラムであれば中々登録してもらえませんので、ちょっともの足らない。そこで次の方法


(2) 未登録メンバーの書き込みに、画面認証を必須とする

こちらのMODを導入します。

・Visual Confirmation for Guests(ゲストユーザーは書き込み時に画面認証が必要になるMOD)

ダウンロード

変更が必要なファイル
引 用:
posting.php
templates/subSilver/posting_body.tpl


ボリュームは結構ありますが、作業自体は簡単です。
ウチの場合は、これを導入してほとんどスパム書き込みは無くなりました。


(3) アクティベートするまでは、一切登録情報を表示させなくする

こちらのMODを導入します。

・Active members Only (アクティベートしていないユーザーをメンバーリストに表示させないMOD)

ダウンロード

変更が必要なファイル
引 用:
memberlist.php
includes/functions.php


(0)で書いたとおり、これは非常に有効です。管理者以外には、登録メンバーが増えた以外は、アクティベートされるまでは全く見えません。もちろんURLも。


(4) 管理画面でユーザーリストを出す(補助ツールとして)

何故か、管理画面でユーザーリストを出す機能がデフォルトでは存在しません。
スパマーを纏めて削除したり、不正登録状況をチェックするためにはやはり一覧で見るのが楽です。

こちらのMODを導入します(僕の翻訳も入ってます。お好みで…)

・Admin Userlist (管理画面でユーザーリストを出す)

ダウンロード

変更が必要なファイル
引 用:
language/lang_japanese/lang_admin.php


コード:
#
#-----[ OPEN ]------------------------------------------
#
language/lang_japanese/lang_admin.php


#
#-----[ FIND ]------------------------------------------
#
# Full Line:
#   $lang['Install_No_PCRE'] = 'phpBB2 Requires the Perl-Compatible Regular Expressions Module for PHP which your PHP configuration doesn\'t appear to support!';
#
$lang['Install_No_PCRE'] =


#
#-----[ AFTER, ADD ]------------------------------------------
#

//
// Admin Userlist Start
//
$lang['Userlist'] = 'ユーザーリスト';
$lang['Userlist_description'] = '登録ユーザーのリストをすべて表示して、そこから色々な操作ができます';

$lang['Add_group'] = 'グループに追加';
$lang['Add_group_explain'] = '選択したユーザーをどのグループに追加するか選んでください';

$lang['Open_close'] = '詳細/閉じる';
$lang['Active'] = '承認済';
$lang['Group'] = 'グループ';
$lang['Rank'] = 'ランク';
$lang['Last_activity'] = '最後にアクセスした日';
$lang['Never'] = 'Never';
$lang['User_manage'] = '管理';
$lang['Find_all_posts'] = 'すべての記事を表示';

$lang['Select_one'] = '一つを選択';
$lang['Ban'] = '停止';
$lang['Activate_deactivate'] = '承認/取消';

$lang['User_id'] = 'ユーザーID';
$lang['User_level'] = 'ユーザーレベル';
$lang['Ascending'] = '昇順';
$lang['Descending'] = '降順';
$lang['Show'] = '表示';
$lang['All'] = 'All';

$lang['Member'] = 'メンバー';
$lang['Pending'] = '停止中';

$lang['Confirm_user_ban'] = '本当に選択したユーザーを停止にしますか?';
$lang['Confirm_user_deleted'] = '本当に選択したユーザーを削除しますか?';

$lang['User_status_updated'] = 'ユーザー情報が更新されました';
$lang['User_banned_successfully'] = 'ユーザーが禁止されました';
$lang['User_deleted_successfully'] = 'ユーザーが削除されました';
$lang['User_add_group_successfully'] = 'グループにユーザーが追加されました';

$lang['Click_return_userlist'] = 'ユーザーリストに戻る場合は%sこちら%sをクリックしてください';
//
// Admin Userlist End
//



*注: MOD導入の際、「変更が必要なファイル」は変更するファイル群のみで、多くの場合はそれ以外にアップロードが必要な追加ファイル群があります。MOD文書を良く読んで下さい。
ユーザーのプロフィールを表示群青 の記事をすべて検索プライベートメッセージを送信投稿者のウェブサイトに移動
JAM
投稿入門者さん
投稿入門者さん

登録日: 2006.05.27
記事: 2
引用付きで返信する
はじめまして。JAMと申します。

確かに、phpBBを運用し始めると、海外からのスパム的登録&スパム的投稿に悩まされますね。
私のサイトは、スパムの問題、重要なアップデートの頻繁さなどの問題で、最近はphpBBの運用からは離れていますが、
過去phpBBを運用していた名残で(?)今も時々spam投稿用のボットが流れ着いてくるようです。

このスパム、「だれがどのようにして」と言う点について、昔から興味があったのですが、自身のサイトのapacheログを見ていて最近のphpBB Spamの仕組みの一端らしきものをキャッチしましたので、スレの主旨に沿って投稿してみます。


最近、あるホストから昔設置していたphpBBのURLを呼び出され404になったのですが、そのホストのユーザーエージェントが
“Forum Poster - fp.icontool.com”
でした。
気になったので、上のサイトを見て見た所、いろんなサイトのフォーラム式掲示板に、自動で登録し任意のメッセージを書き込むと言うプログラムとの事です。しかも、phpBB,invision power board など複数の掲示板に対応。
お値段$200弱。

”Forum Poster”でググって見ると結構餌食になったサイトが出てきますので、このエージェントを弾くだけでも相当大きな効果が得られるものと思います。

そこで、.htaccessなどで

SetEnvIf User-Agent "^Forum Poster" BadRobot
order allow,deny
allow from all
deny from env=BadRobot

てな感じで、弾いてみると言うのも手段ではないかと思います。
ユーザーのプロフィールを表示JAM の記事をすべて検索プライベートメッセージを送信投稿者のウェブサイトに移動
Forum Poster
群青
投稿上級者さん
投稿上級者さん

登録日: 2005.04.17
記事: 75
所在地: 【アダ被の部屋】
引用付きで返信する
ウチのログ見てみましたが、とりあえず今のところそれらしきアクセスは無いみたいでした。


にしてもこの「Forum Poster」、ファイルサイズ1.85kBで$199.5とは…
えげつない商売ですねえ。


# オフトピすいません。


## 画像アップロードしようとすると、なにやらゴチャゴチャエラーが出た後404ページに飛ぶ様です>hiikun
ユーザーのプロフィールを表示群青 の記事をすべて検索プライベートメッセージを送信投稿者のウェブサイトに移動
“//”および“/phpBB2/”を含むアクセスを拒否する
hiikun
あどみん
あどみん

登録日: 2005.03.16
記事: 830
所在地: 大阪府
引用付きで返信する
“//”および“/phpBB2/”を含むアクセスを拒否する

ウチのサイトだけではないと思いますが、上記の文字を URI に含ませてアクセスし、登録スパム or 投稿スパムを試みる輩が、毎日毎日懲りもせずにやってきていました。 Arrow ログ一部
ログに記録されたそれらしき輩の IP.htaccess で列挙していってはじくのもめんどうなので、SetEnvIf REQUEST_URI を使って拒否した方が利巧のような気がしたので考えてみました。

.htaccess
コード:
SetEnvIf REQUEST_URI "//" keepout1
SetEnvIf REQUEST_URI "/phpBB2/" keepout1
deny from env=keepout1


//”および“/phpBB2/”を含む URI にアクセス(アタック)してきたら、403 エラー(403 Forbidden)を返します。



独り言。
ひさびさに .htaccess を勉強しました。 Laughing

_________________

Arrow 【ニューリリース】2.0.23/3.0.0

マイホームノートアイテム探索小都市
ユーザーのプロフィールを表示hiikun の記事をすべて検索プライベートメッセージを送信投稿者のウェブサイトに移動
登録スパム 対策のMOD
UTA
投稿中級者さん
投稿中級者さん

登録日: 2005.11.10
記事: 52
引用付きで返信する
「URL」「署名」欄を、登録時には非表示。
それでも、強引にPOSTしてくるのは、排除してくれます。

Anti-spam bots registration
http://www.phpbb.com/phpBB/viewtopic.php?t=396855

私は、e-mailではなく、
下に書かれてる(Thu Jun 08, 2006)
MOD Adds IP Ban to Anti-Spam bot registration MOD.
を入れてます
注)REMOTE_ADDの取得は環境によって違うかもしれません。
コード:
 $ban_this=encode_ip(getenv('REMOTE_ADDR'));
は、
コード:
   $ban_this=encode_ip($_SERVER['REMOTE_ADDR']);
ユーザーのプロフィールを表示UTA の記事をすべて検索プライベートメッセージを送信
バリュードメイン
ここのところ
群青
投稿上級者さん
投稿上級者さん

登録日: 2005.04.17
記事: 75
所在地: 【アダ被の部屋】
引用付きで返信する
立て続けにアクティベートしてくるスパム登録が。


何故かそのURLは404なのが不思議。
ユーザーのプロフィールを表示群青 の記事をすべて検索プライベートメッセージを送信投稿者のウェブサイトに移動
JAM
投稿入門者さん
投稿入門者さん

登録日: 2006.05.27
記事: 2
引用付きで返信する
罠を仕掛けて、spamerからの機械的なアクセスをログってみました。
時期は、前回このスレに記事投稿したくらい~今日です。

IP 日付 メソッド リファラ ユーザーエージェント HTTP_POSTの文字列

コード:
218.136.182.62 - - [Wed Jun 14 17:37:04 JST 2006] "POST /x/old-phpbb/login.php HTTP/1.0"  "" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)" USERNAME=Aaron Zapashniy PASSWORD=
69.50.175.91 - - [Wed Jun 21 6:13:13 JST 2006] "POST /x/old-phpbb/login.php HTTP/1.1"  "" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)" USERNAME=Aaron Zapashniy PASSWORD=
69.50.175.91 - - [Fri Jun 30 1:53:36 JST 2006] "POST /x/old-phpbb/login.php HTTP/1.1"  "" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)" USERNAME=Aarishka Bratello PASSWORD=


六月に3件の登録投稿型スパムボットが訪れ、悪さをしようと試みたようです。
3件中2件は同一IPで、異なる二件のIPから同一の名前を登録しようとしたことから、この悪さを仕掛けた人間は同一人物という見方ができなくもないです。
ユーザーのプロフィールを表示JAM の記事をすべて検索プライベートメッセージを送信投稿者のウェブサイトに移動
画面認証(確認コード入力義務化)でダメでした。
ranker
投稿入門者さん
投稿入門者さん

登録日: 2006.08.04
記事: 1
引用付きで返信する
私のところも薬品通販のコメントスパムが毎日来るようになってしまい、こうも毎日来るならロボットだろうと判断し3日前に(2) 未登録メンバーの書き込みに、画面認証を必須とする MODを導入しましたが、コメントスパムが止まりません。
MOD導入失敗かも知れないと思って、一応別のパソコンから確認しましたが、正しく機能していました。

登録制(アクティベーション義務化)にすれば止まりそうなのですが、それでは遊びに来てくれている普通のお客さんの”気軽さ”を損なってしまうので、登録制にするなら別の板を探すしかないか・・・・・と、考えていますが、今までの書き込みログを破棄するのはもったいないのでできればPHPBBのまま行きたいのです。


うちの場合は、板の使用者が日本人限定で
コメントスパムは、いつも英語の文字列のみなので、ひらがなが一文字も使われていない投稿は受け付けないMOD
があれば止められると思うのですが、そんなのないですよね。
ユーザーのプロフィールを表示ranker の記事をすべて検索プライベートメッセージを送信
SpamWordsMOD
UTA
投稿中級者さん
投稿中級者さん

登録日: 2005.11.10
記事: 52
引用付きで返信する
・全角文字を組み込んだコメントスパムも出始めていますよ。(あの手、コノ手で攻めてきます..)
・既に組み込んでいらっしゃるかもしれませんが、
 Spam_Words_MOD
 http://www.phpbb.com/phpBB/viewtopic.php?t=354376
 いわゆる禁止ワードの設定です。

 ただ私(日本語UTF-8)の場合 function_check_spamの
コード:
if ( preg_match('#\b(' . str_replace('\*', '\w*?', phpbb_preg_quote($row['spam_word'], '#')) . ')\b#i', $message)
|| preg_match('#\b(' . str_replace('\*', '\w*?', phpbb_preg_quote($row['spam_word'], '#')) . ')\b#i', $subject) )
コード:
if ( preg_match('#\b(' . str_replace('\*', '\w*?', phpbb_preg_quote($row['spam_word'], '#')) . ')\b#i', $message)
|| preg_match('#\b(' . str_replace('\*', '\w*?', phpbb_preg_quote($row['spam_word'], '#')) . ')\b#i', $subject)
|| preg_match('#' . phpbb_preg_quote($row['spam_word'], '#').'#i', $message)
|| preg_match('#' . phpbb_preg_quote($row['spam_word'], '#').'#i', $subject))
 または
コード:
if ( preg_match('#' . phpbb_preg_quote($row['spam_word'], '#').'#i', $message)
|| preg_match('#' . phpbb_preg_quote($row['spam_word'], '#').'#i', $subject))

 最初の1文字が大文字の場合がありますから
 例えば cialis なら、 cialis とCialis の2つ 、または ialis の一つを禁止ワードに設定すると効果があります。

 ログインユーザーと非ログインユーザーで区別したいのであれば
 $userdata['session_logged_in'] を判定に使うといいです。
ユーザーのプロフィールを表示UTA の記事をすべて検索プライベートメッセージを送信
ついでに...SpamWordModの続き
UTA
投稿中級者さん
投稿中級者さん

登録日: 2005.11.10
記事: 52
引用付きで返信する
ACP>ユーザー管理>掲示板の使用禁止 で設定できるのは、 IPアドレス(REMOTE_ADDR)で
 .net.ru や、.net.pl 等の ホスト名(の一部)でアクセス禁止にはできないようです。...できるのでしょうか??
 で、私のトコは、このSpamWordMod で ホスト名(の一部)で禁止にするようにもしています。

 SpamWordModは、$message に対してチェックするので、$messageにホスト情報をくっ付けます

例えば
引 用:
posting.php
#
#-----[ FIND ]------------------------------------------
#
if ( $error_msg == '' )
{
#
#-----[ AFTER, ADD ]------------------------------------------
#
//
// Check spam words....
//
if ( !$post_info['allow_spam_words'] )
{
$message_su = $message; #元メッセージ保存
$message = $message . "_" . $_SERVER['REMOTE_HOST'];#チェック用メッセージ


include($phpbb_root_path . 'includes/spamwords.'.$phpEx);

$message = $message_su ;#メッセージを戻す
}
#
 *)禁止ワードに .net.ru とか .net.pl とかで設定します。 
 他に例えばauのサブスクライバ情報等・・を付加するなどすれば、いろいろな応用もできます。
*)環境によっては $_SERVER['REMOTE_HOST'] は、getenv('REMOTE_HOST') かもしれません
ユーザーのプロフィールを表示UTA の記事をすべて検索プライベートメッセージを送信
[Tips] コメントスパム・登録スパムの対処法
新規投稿: 不可
返信投稿: 不可
記事編集: 不可
記事削除: 不可
投票参加: 不可
添付アップロード: 不可
添付ダウンロード: 不可
All times are GMT + 9 Hours (JST)  
Page 1 of 3  

  
  
 トピックに返信する    

Board Security

3028 Attacks blocked

Powered by phpBB © phpBB Group
Design by phpBBStyles.com | Styles Database.
Traduction par : PHPBB JAPAN / UTF-8 i18n Edition : JP Support Forum
Content © phpBB2 日本語サポートフォーラム
[ Debug on | page generation = 0.23317 seconds | sql queries = 18 ]
Feed RSS 2.0
JP Support Forum
SourceForge.jp