Естественно способы защиты от ботов и от людей разные
вот простейший вариант от ботов:
в файде скриптп регистрации
стока 110 (usercp_register.php)
Код:
$strip_var_list = array('email' => 'email', 'icq' => 'icq', 'aim' => 'aim', 'msn' => 'msn', 'yim' => 'yim', 'website' => 'website', 'location' => 'location', 'occupation' => 'occupation', 'interests' => 'interests', 'confirm_code_777' => 'confirm_code_777');
строка 300
Код:
if ($row['code'] != $confirm_code_777)
в файле шаблона (profile_add_body.tpl)
строка 65
Код:
<td class="row2"><input type="text" class="post" style="width: 200px" name="confirm_code_777" size="6" maxlength="6" value="" /></td>
те меняем название одного поля в регистрационной форме
Чтобы это обойти надо настраивать бота, обычно спамерам лениво.
Если они настроят делаем текстовый поиск 777 (добавочка к имени поля) и меняем например на 888.
Естественно это надо проделывать при обновлении темы, например при смене версии.