Need help with a spammed forum!

Discussion in 'Forum Management' started by daylight, Aug 18, 2007.

  1. #1
    I have a forum at World Aboard that receives a lot of spam messages of Viagra and adult indecent nature.

    Email verification of new created account is needed, I receive in my administrator's email that the email of members who are able to register does not exist.

    I got the sense that my site was added in some sort of spammer's index and a robot is auto-placing spam messages regardless to the fact that the site has PageRank 0 and no other members.

    As I would delete them daily, only 3 to 4 new (spam) members would appear, then I was a month off, now I see there are over 400 new members created by spammer(s), sometimes 15 new accounts daily.

    It takes too much time to spend all my time deleting spam messages. Is there a way I can stop spammers and their spam messages?

    The forum is phpBB, for the time being I disabled from the administrator's panel members to send messages, some messages still come through, before that there were around 20 spam messages per account, I tried blocking IPs but they differ.
     
    daylight, Aug 18, 2007 IP
  2. explicitzone.com

    explicitzone.com Peon

    Messages:
    96
    Likes Received:
    1
    Best Answers:
    0
    Trophy Points:
    0
  3. daylight

    daylight Peon

    Messages:
    82
    Likes Received:
    3
    Best Answers:
    0
    Trophy Points:
    0
    #3
    Installation says:
    _______________________________________________________
    Find
    Tip: This may be a partial find and not the whole line.
    include($phpbb_root_path . 'includes/usercp_confirm.'.$phpEx);

    Replace With
    Tip: Replace the preceding line(s) to find with the following lines.

    include($phpbb_root_path . 'includes/usercp_captcha.'.$phpEx);
    _______________________________________________________

    The only line I could find is:

    require ($phpbb_root_path . 'includes/usercp_confirm.'.$phpEx);

    Plus, those two lines above seem to be the same, did it mean I should change:

    require ($phpbb_root_path . 'includes/usercp_confirm.'.$phpEx);
    with
    include($phpbb_root_path . 'includes/usercp_captcha.'.$phpEx);

    ? Thank you.

    Update: I tried changing those two line, after I revisited forum I got the message: "Please ensure both the install/ and contrib/ directories are deleted". There is no 'install' directory, maybe it meant install.xml!?
     
    daylight, Aug 18, 2007 IP
  4. explicitzone.com

    explicitzone.com Peon

    Messages:
    96
    Likes Received:
    1
    Best Answers:
    0
    Trophy Points:
    0
    #4
    I do not run a phpbb forum but I would assume that "install directory" means the same as "install.xml".
     
    explicitzone.com, Aug 18, 2007 IP
  5. sawz

    sawz Prominent Member

    Messages:
    8,225
    Likes Received:
    808
    Best Answers:
    0
    Trophy Points:
    360
    #5
    try getting help from the phpb support forums. image verification on a forum should be a standard feature. maybe you can convert to SMF, that has it already installed and it works quite well.
     
    sawz, Aug 18, 2007 IP
  6. Jackuul

    Jackuul Well-Known Member

    Messages:
    2,972
    Likes Received:
    115
    Best Answers:
    0
    Trophy Points:
    180
    #6
    I can install mods >.> Considering I've installed a few thousand...

    Also the user shield mod is pretty darn good on stopping the bots-o-doom.
     
    Jackuul, Aug 18, 2007 IP
  7. daylight

    daylight Peon

    Messages:
    82
    Likes Received:
    3
    Best Answers:
    0
    Trophy Points:
    0
    #7
    Thank you for pointing me out that my forum does not have a captcha function.

    I'll just cut/paste the instruction for installing that captcha and the entire profile.php file from my forum. It's the only profile.php file there is, and as it can be seen, within it, there is no line:

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

    Maybe they meant something else to be changed/replaced, or maybe I'm overseeing something, in case someone get the time to look through the code.

    ------------------------------------------------------------------
    Instruction:

    Open: profile.php

    Find
    Tip: This may be a partial find and not the whole line.

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

    Replace With
    Tip: Replace the preceding line(s) to find with the following lines.

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

    ------------------------------------------------------------------


    This is how profile.php looks like:


    <?php
    /***************************************************************************
    * profile.php
    * -------------------
    * begin : Saturday, Feb 13, 2001
    * copyright : (C) 2001 The phpBB Group
    * email :
    *
    * $Id: profile.php,v 1.193.2.3 2003/03/02 23:16:17 acydburn Exp $
    *
    *
    ***************************************************************************/

    /***************************************************************************
    *
    * This program is free software; you can redistribute it and/or modify
    * it under the terms of the GNU General Public License as published by
    * the Free Software Foundation; either version 2 of the License, or
    * (at your option) any later version.
    *
    ***************************************************************************/

    define('IN_PHPBB', true);
    $phpbb_root_path = './';
    include($phpbb_root_path . 'extension.inc');
    include($phpbb_root_path . 'common.'.$phpEx);

    //
    // Start session management
    //
    $userdata = session_pagestart($user_ip, PAGE_PROFILE);
    init_userprefs($userdata);
    //
    // End session management
    //

    // session id check
    if (!empty($HTTP_POST_VARS['sid']) || !empty($HTTP_GET_VARS['sid']))
    {
    $sid = (!empty($HTTP_POST_VARS['sid'])) ? $HTTP_POST_VARS['sid'] : $HTTP_GET_VARS['sid'];
    }
    else
    {
    $sid = '';
    }

    //
    // Set default email variables
    //
    $script_name = preg_replace('/^\/?(.*?)\/?$/', '\1', trim($board_config['script_path']));
    $script_name = ( $script_name != '' ) ? $script_name . '/profile.'.$phpEx : 'profile.'.$phpEx;
    $server_name = trim($board_config['server_name']);
    $server_protocol = ( $board_config['cookie_secure'] ) ? 'https://' : 'http://';
    $server_port = ( $board_config['server_port'] <> 80 ) ? ':' . trim($board_config['server_port']) . '/' : '/';

    $server_url = $server_protocol . $server_name . $server_port . $script_name;

    // -----------------------
    // Page specific functions
    //
    function gen_rand_string($hash)
    {
    $chars = array( 'a', 'A', 'b', 'B', 'c', 'C', 'd', 'D', 'e', 'E', 'f', 'F', 'g', 'G', 'h', 'H', 'i', 'I', 'j', 'J', 'k', 'K', 'l', 'L', 'm', 'M', 'n', 'N', 'o', 'O', 'p', 'P', 'q', 'Q', 'r', 'R', 's', 'S', 't', 'T', 'u', 'U', 'v', 'V', 'w', 'W', 'x', 'X', 'y', 'Y', 'z', 'Z', '1', '2', '3', '4', '5', '6', '7', '8', '9', '0');

    $max_chars = count($chars) - 1;
    srand( (double) microtime()*1000000);

    $rand_str = '';
    for($i = 0; $i < 8; $i++)
    {
    $rand_str = ( $i == 0 ) ? $chars[rand(0, $max_chars)] : $rand_str . $chars[rand(0, $max_chars)];
    }

    return ( $hash ) ? md5($rand_str) : $rand_str;
    }
    //
    // End page specific functions
    // ---------------------------

    //
    // Start of program proper
    //
    if ( isset($HTTP_GET_VARS['mode']) || isset($HTTP_POST_VARS['mode']) )
    {
    $mode = ( isset($HTTP_GET_VARS['mode']) ) ? $HTTP_GET_VARS['mode'] : $HTTP_POST_VARS['mode'];

    if ( $mode == 'viewprofile' )
    {
    include($phpbb_root_path . 'includes/usercp_viewprofile.'.$phpEx);
    exit;
    }
    else if ( $mode == 'editprofile' || $mode == 'register' )
    {
    if ( !$userdata['session_logged_in'] && $mode == 'editprofile' )
    {
    redirect(append_sid("login.$phpEx?redirect=profile.$phpEx&mode=editprofile", true));
    }

    include($phpbb_root_path . 'includes/usercp_register.'.$phpEx);
    exit;
    }
    else if ( $mode == 'sendpassword' )
    {
    include($phpbb_root_path . 'includes/usercp_sendpasswd.'.$phpEx);
    exit;
    }
    else if ( $mode == 'activate' )
    {
    include($phpbb_root_path . 'includes/usercp_activate.'.$phpEx);
    exit;
    }
    else if ( $mode == 'email' )
    {
    include($phpbb_root_path . 'includes/usercp_email.'.$phpEx);
    exit;
    }
    }

    redirect(append_sid("index.$phpEx", true));

    ?>
     
    daylight, Aug 19, 2007 IP
  8. heatherw_01

    heatherw_01 Well-Known Member

    Messages:
    610
    Likes Received:
    14
    Best Answers:
    0
    Trophy Points:
    108
    #8
    The captcha function is an option under the admin panel.

    PHPBB3 is better at stopping spam.
     
    heatherw_01, Aug 19, 2007 IP
  9. login

    login Notable Member

    Messages:
    8,849
    Likes Received:
    349
    Best Answers:
    0
    Trophy Points:
    280
    #9
    One easy way to get rid of automated spamming is, at registration, to use both captha and a drop down menu where visitors answer yes or no to a question.

    i did this and voila, spam is gone.
     
    login, Aug 19, 2007 IP
  10. daylight

    daylight Peon

    Messages:
    82
    Likes Received:
    3
    Best Answers:
    0
    Trophy Points:
    0
    #10
    An update on the above issue, I used a new installation of PHPBB2 (not the one provided by my web-site host but the latest PHPBB2 release from PHPBB.com directly) which includes 'captcha' function, the same thing happened, since yesterday afternoon 7 'spam' profiles were created. 'Captcha' brought no difference.
     
    daylight, Sep 2, 2007 IP
  11. login

    login Notable Member

    Messages:
    8,849
    Likes Received:
    349
    Best Answers:
    0
    Trophy Points:
    280
    #11
    But both captcha and a drop down menu at the same time will solve your problem.
     
    login, Sep 2, 2007 IP
  12. daylight

    daylight Peon

    Messages:
    82
    Likes Received:
    3
    Best Answers:
    0
    Trophy Points:
    0
    #12
    I will try with drop-down manu as well, it took me time to involve 'captcha'.

    Is PHPBB2 better than PHPBB3 in terms of SEO? I ask that as with WebSites the simpliest HTML is the most SEO friendly and if analogy with Forum codes and their 'simplicity' can be drown. I had Google wondering around my PHPBB2 forum all the time, it seems highly SE friendly. The latest PHPBB3, RC5, while improved, it seems completely different to PHPBB2.
     
    daylight, Sep 2, 2007 IP
  13. tms12

    tms12 Peon

    Messages:
    174
    Likes Received:
    5
    Best Answers:
    0
    Trophy Points:
    0
    #13
    tms12, Sep 12, 2007 IP
  14. Forum-Poster

    Forum-Poster Peon

    Messages:
    15
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #14
    Simply saying, Just upgrade your forum script to the latest one and most of the SPAM will stop there. I had the same issue before and now there isn't any problem.

    If you want me to upgrade than I am available as well.
     
    Forum-Poster, Sep 18, 2007 IP