Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Защита от спама через пост форму сайта 
:(
    Опции темы
Deg
Дата 4.10.2006, 09:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 28.9.2006
Где: Dniepropetrovsk, Ukraine

Репутация: нет
Всего: нет



Приветствую,

Граждане! Откликнитесь, кто сталкивался с такими граблями.
есть файл send.php который обрабатывает POST из формы
Код

        $mail = new PHPMailer();//Просто класс работы с почтой
        $mail->SetLanguage("ru", "./language/");                                     
        $mail->From = strip_tags($_POST['EMAIL']);
        $mail->FromName = strip_tags($_POST['NAME']);                                              
        $mail->IsHTML(true);                               
        $mail->Subject = 'Сообщение от посетителя сайта http://'.$_SERVER['SERVER_NAME'];
        $mail->Body    = $_POST['COMMENT'];
        $mail->AltBody = $_POST['COMMENT'];
        $admins = $d->queryallrecords("SELECT `email`,`fio` FROM `users` WHERE `ut`='Администратор'");//возвращает массив
        if (!empty($admins)) foreach($admins as $admin) {
            @$mail->AddAddress($admin['email'], $admin['fio']);   
            if (!$mail->Send()) echo "<script>alert('Бочина с адресом ".$admin['email']."');</script>";
        }
        echo "<script>document.location = '".$g['site_root']."pages/all/confirmed';</script>";


Форма
Код

<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
    <td>
        <FORM name="blog" id="blog" method="POST" action="/lib/plug-ins/navbar/lib/send.php">
        <table width="100%" border="0" cellpadding="0" cellspacing="0">
        <tr>
            <td>Имя<br><input type="text" name="NAME" style="WIDTH: 100%"></td>
        </tr>

        
        <tr>
            <td>Адрес электронной почты<br><input type="text" name="EMAIL" style="WIDTH: 100%"></td>
        </tr>
        
        <tr>
            <td>Сообщение<br><textarea rows="5" name="COMMENT" style="WIDTH: 100%"></textarea></td>
        </tr>
        <tr>

            <td><input type="button" value="Send" onClick="if ((blog.NAME.value == '') || (blog.EMAIL.value == '') || (blog.COMMENT.value == '')) alert('Fill in the data fields first'); else blog.submit();"><input type="reset"></td>
        </tr>
        </table>
        </FORM>
    </td>
</tr>
</table>


Помогите, ребята, как быть?! Спамят, гады! Как защитить лучше этот send.php???
PM MAIL WWW ICQ Skype   Вверх
Vaulter
Дата 4.10.2006, 11:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1724
Регистрация: 30.12.2002
Где: бункер

Репутация: нет
Всего: 22



Deg, самое банальное
не обзывай поля EMAIL, COMMENT и кнопку Send.
обзови хитрее. (fieldofdamnedelectronicm, thiscleverandclearmestome and soon)

сделай проверку по картинке (CAPTCHA)
можно проще по куки.


--------------------
PM MAIL WWW ICQ   Вверх
Garret
Дата 4.10.2006, 15:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 138
Регистрация: 16.9.2006
Где: Киев

Репутация: нет
Всего: 2



Самый просто и довольно надежный вариант, передавать в пост запрос еще один параметр, спрятаное поле содержащее какое то хитрое значение(как оно генерируется знаешь только ты). А потом проверять его.
PM MAIL WWW ICQ   Вверх
MuToGeN
Дата 4.10.2006, 15:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лесник
****


Профиль
Группа: Модератор
Сообщений: 4379
Регистрация: 15.8.2002
Где: Москва

Репутация: 4
Всего: 32



Цитата(Garret @  4.10.2006,  15:29 Найти цитируемый пост)
Самый просто и довольно надежный вариант
Этот "довольно надежный" вариант можно легко обойти.
Обратный тест Тьюринга (CAPTCHA), кстати, тоже обходится (даже без нейросетей итд итп, все гораздо проще).
Как вариант, могу предложить обязательную регистрацию / авторизацию.


--------------------
Three pings for the token rings,
Five pings for the UNIX machines,
Hundred pings for the broken links,
One special ping to check them all
Through Simple Network Management Protocol!
PM MAIL ICQ   Вверх
Garret
Дата 4.10.2006, 16:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 138
Регистрация: 16.9.2006
Где: Киев

Репутация: нет
Всего: 2



Цитата(MuToGeN @  4.10.2006,  15:52 Найти цитируемый пост)
Этот "довольно надежный" вариант можно легко обойти.
Не зная способа генерации доп значения? Раскажи как, мне интересно.

Каптча обходится но далеко не каждая.
PM MAIL WWW ICQ   Вверх
Deg
Дата 9.10.2006, 08:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 28.9.2006
Где: Dniepropetrovsk, Ukraine

Репутация: нет
Всего: нет



Спосибки, ребята, генерирую картинку, так как с регистрацией вариант отпадает...
PM MAIL WWW ICQ Skype   Вверх
MuToGeN
Дата 12.10.2006, 19:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лесник
****


Профиль
Группа: Модератор
Сообщений: 4379
Регистрация: 15.8.2002
Где: Москва

Репутация: 4
Всего: 32



Цитата(Garret @  4.10.2006,  16:07 Найти цитируемый пост)
Каптча обходится но далеко не каждая. 

Допустим, у тебя есть сайт с высокой посещаемостью и есть чужой сайт, на котором тебе надо обойти обратный тест Тьюринга с картинкой.
Сливаешь скриптом страницу, запоминаешь все, по чему ответ к картинке может проверяться (ИД сессии, например), показываешь на своем сайте пользователю. Результат: машина заменяется человеком.


--------------------
Three pings for the token rings,
Five pings for the UNIX machines,
Hundred pings for the broken links,
One special ping to check them all
Through Simple Network Management Protocol!
PM MAIL ICQ   Вверх
Alone
Дата 17.10.2006, 11:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 663
Регистрация: 11.5.2003
Где: Dnepropetrovsk, U A

Репутация: нет
Всего: 6



таки да! smile
такой прием применяют спамеры для генерации новых ящиков на серверах с проверкой по каптчу.
создается порносайт, куда перебрасывается каптча smile и юзер, регистрящийся на псевдопорносайте - подтверждает каптча и регистрится новый ящик спамеру smile


--------------------
web developer/telecommunication specialist.
mailto: [email protected]
ICQ#28442924

PM MAIL WWW ICQ   Вверх
Mystery_of_being
Дата 9.11.2006, 03:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 52
Регистрация: 7.11.2006

Репутация: нет
Всего: нет



ДА чего вы ) Картинка нормальный руль. Ее обходят восновном тогда, когда у спамеров есть цель обойти именно вашу картинку. А когда цели такой нет то можно жить спокойно... ну ладно.. обойдет ее  пару роботов.. но это же не завальный спам... вот у меня например подтверждение регистрации по Имейл обходили на PHP BB  ....   smile   Буду ставить свою картинку  ( Просто делаю 1 регистрацию на весь сайт) и еще я замети, что вот мои формы не спамят совсем... только вот таких движков популярных.... интересно почему? 




PS. Если надо.... то обойдут все что угодно... ведь некоторые челы даже обошли вокруг земли )))) 

Это сообщение отредактировал(а) Mystery_of_being - 9.11.2006, 03:08
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

Внимание: данный раздел предназначен для решения сложных, нестандартных задач.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Для профи | Следующая тема »


 




[ Время генерации скрипта: 0.0492 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.