Гостевая с защитой от спамеров - реально ли?

Старый mweb

Модератор: [mweb team]

Гостевая с защитой от спамеров - реально ли?

Сообщение Aqua$erg Пн ноя 27, 2006 20:02

Есть сайт. Есть гостевуха (от Sad Raven'а). Спамеры зае..ли! Пишут и пишут, проклятые!!! Аж по 20 постов в день -20-

Как защититься? Может, есть несложные по следующим параметрам:

1. Достаточно понятная привязка к дизайну сайта (желательно, не сложнее, чем у этого форума - на темплейтах и т.п.)

2. Неплохо бы "быстрый ответ" на основной странице Книги (или это как раз и есть приманка для спамеров?..). Если для антиспама лучше на отдельной странице - да будет так

3. Понятный и лёгкий интерфейс для юзеров: не требует регистрации, минимум обязательных полей (только имя, остальные допустимы, но не обязательны)


Есть такие? Верю, что есть, но дают ли они более надёжную защиту от спама? А то я задолбался стирать по 20-30 мессаг (бле, всех ведь баню! но они каждый раз постят под разными айпи!)
Аватара пользователя
Aqua$erg
Хронический Астматик
 
Сообщения: 1804
Зарегистрирован: Пт апр 11, 2003 8:12
Откуда: Питер

Сообщение Aqua$erg Ср ноя 29, 2006 20:05

Что - вариантов нема?!.. -08-
Аватара пользователя
Aqua$erg
Хронический Астматик
 
Сообщения: 1804
Зарегистрирован: Пт апр 11, 2003 8:12
Откуда: Питер

Сообщение ass Чт ноя 30, 2006 17:56

ну если роботы то типа доп поле с вводом циврф.. счас бля забы лпо пьяни как называется.. короче как на http://metoart.ru/blog
егегеей епта!
Аватара пользователя
ass
Заядлый `курильщик`
 
Сообщения: 600
Зарегистрирован: Сб фев 26, 2005 8:06
Откуда: Питер

Сообщение PALOMINO Чт ноя 30, 2006 19:31

Что - вариантов нема?!..


Ну почему же есть : http://forum.mweb.ru/viewtopic.php?t=4729 -05-

А из готовых решений ничего не могу сказать... -17-
Если биться головой о стену, то можно терять 150 калорий в час!
Аватара пользователя
PALOMINO
Редко заходит
 
Сообщения: 104
Зарегистрирован: Ср фев 08, 2006 16:01
Откуда: Днепропетровск

Сообщение Aqua$erg Чт ноя 30, 2006 19:48

Да... с циферками - идея неплоха. Тока боюсь, сей спамер и это победит (он умудрялся слать сообщения вместе с "моими" ответами - от него же). И каждый раз - с разных АйПи

Короче - нах гостевуху...
Аватара пользователя
Aqua$erg
Хронический Астматик
 
Сообщения: 1804
Зарегистрирован: Пт апр 11, 2003 8:12
Откуда: Питер

Сообщение -S- Чт ноя 30, 2006 19:55

Aqua$erg писал(а):Короче - нах гостевуху...
мудро -01-
%^#^&&0,#618*%!~~(хабрахабрить
Аватара пользователя
-S-
Курильщик
 
Сообщения: 346
Зарегистрирован: Пн мар 21, 2005 4:31
Откуда: Спб

Сообщение Aqua$erg Чт ноя 30, 2006 19:58

Взрослеем, мудрости набираемся -09-
Аватара пользователя
Aqua$erg
Хронический Астматик
 
Сообщения: 1804
Зарегистрирован: Пт апр 11, 2003 8:12
Откуда: Питер

Сообщение Egorix Сб дек 02, 2006 15:31

Я вижу выход один: написать свою или заказать...

Просто мне только так думается, наверное потому, что я программист.
Споры в интернете - это как олимпиада для умственно отсталых, даже если ты победил - ты всё равно дебил!
Аватара пользователя
Egorix
Манагер
 
Сообщения: 879
Зарегистрирован: Пн сен 30, 2002 0:01
Откуда: Киев - Украина

Сообщение Vavan Ср дек 06, 2006 22:24

Ставь графический генератор цифр-букв
Я не программист и не дизайнер, НО!!!
Отремонтировать можно всё! Даже если это ещё не сломалось.
Аватара пользователя
Vavan
Редко заходит
 
Сообщения: 171
Зарегистрирован: Вт июн 04, 2002 0:01
Откуда: Жезказган, Казахстан

Сообщение Aqua$erg Пт дек 08, 2006 23:02

Понял, Vavan - уже грохнул нахер!
Аватара пользователя
Aqua$erg
Хронический Астматик
 
Сообщения: 1804
Зарегистрирован: Пт апр 11, 2003 8:12
Откуда: Питер

Сообщение Vavan Сб дек 09, 2006 20:58

Я тоже самое проделал. Но вот что АбЫдно. Делет делается за считанные сек. а всё зачинания ночами и неделями. -09-
Я не программист и не дизайнер, НО!!!
Отремонтировать можно всё! Даже если это ещё не сломалось.
Аватара пользователя
Vavan
Редко заходит
 
Сообщения: 171
Зарегистрирован: Вт июн 04, 2002 0:01
Откуда: Жезказган, Казахстан

Сообщение Muerto Ср дек 13, 2006 16:53

Код генератора:
Код: Выделить всё
// случайные параметры (можно поэкспериментировать с коэффициентами):
// частоты
$rand1 = mt_rand(700000, 1000000) / 15000000;
$rand2 = mt_rand(700000, 1000000) / 15000000;
$rand3 = mt_rand(700000, 1000000) / 15000000;
$rand4 = mt_rand(700000, 1000000) / 15000000;
// фазы
$rand5 = mt_rand(0, 3141592) / 1000000;
$rand6 = mt_rand(0, 3141592) / 1000000;
$rand7 = mt_rand(0, 3141592) / 1000000;
$rand8 = mt_rand(0, 3141592) / 1000000;
// амплитуды
$rand9 = mt_rand(400, 600) / 100;
$rand10 = mt_rand(400, 600) / 100;

for($x = 0; $x < $width; $x++){
  for($y = 0; $y < $height; $y++){
    // координаты пикселя-первообраза.
    $sx = $x + ( sin($x * $rand1 + $rand5) + sin($y * $rand3 + $rand6) ) * $rand9;
    $sy = $y + ( sin($x * $rand2 + $rand7) + sin($y * $rand4 + $rand8) ) * $rand10;

    // первообраз за пределами изображения
    if($sx < 0 || $sy < 0 || $sx >= $width - 1 || $sy >= $height - 1){
      $color = 255;
      $color_x = 255;
      $color_y = 255;
      $color_xy = 255;
    }else{ // цвета основного пикселя и его 3-х соседей для лучшего антиалиасинга
      $color = (imagecolorat($img, $sx, $sy) >> 16) & 0xFF;
      $color_x = (imagecolorat($img, $sx + 1, $sy) >> 16) & 0xFF;
      $color_y = (imagecolorat($img, $sx, $sy + 1) >> 16) & 0xFF;
      $color_xy = (imagecolorat($img, $sx + 1, $sy + 1) >> 16) & 0xFF;
    }



    // сглаживаем только точки, цвета соседей которых отличается
    if($color == $color_x && $color == $color_y && $color == $color_xy){
      $newcolor=$color;
    }else{
      $frsx = $sx - floor($sx); //отклонение координат первообраза от целого
      $frsy = $sy - floor($sy);
      $frsx1 = 1 - $frsx;
      $frsy1 = 1 - $frsy;

      // вычисление цвета нового пикселя как пропорции от цвета основного пикселя и его соседей
      $newcolor = floor( $color    * $frsx1 * $frsy1 +
                         $color_x  * $frsx  * $frsy1 +
                         $color_y  * $frsx1 * $frsy  +
                         $color_xy * $frsx  * $frsy );
    }
    imagesetpixel($img2, $x, $y, imagecolorallocate($img2, $newcolor, $newcolor, $newcolor));
  }
}
Взято отсюда.
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва

Сообщение Aqua$erg Чт дек 14, 2006 17:05

2Muerto: а как прикрутить сей код в тело? Прямо в форму в нужное мне место вставить весь этот код?..
Аватара пользователя
Aqua$erg
Хронический Астматик
 
Сообщения: 1804
Зарегистрирован: Пт апр 11, 2003 8:12
Откуда: Питер

Сообщение Muerto Чт дек 14, 2006 17:29

Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва

Сообщение Aqua$erg Пн дек 18, 2006 19:15

2Muerto: А можешь помочь впихнуть это в готовый скрипт гостевухи (он несложный)? Я сам не допетрю... -08-
Аватара пользователя
Aqua$erg
Хронический Астматик
 
Сообщения: 1804
Зарегистрирован: Пт апр 11, 2003 8:12
Откуда: Питер

Сообщение Muerto Вт дек 19, 2006 11:16

2Aqua$erg: Ближе к выходным спишемся, хорошо!
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва

Сообщение Aqua$erg Чт дек 21, 2006 15:38

2Muerto: Выходные на носу!!! -09-
Аватара пользователя
Aqua$erg
Хронический Астматик
 
Сообщения: 1804
Зарегистрирован: Пт апр 11, 2003 8:12
Откуда: Питер

Сообщение Muerto Чт дек 21, 2006 18:29

2Aqua$erg: В пятницу вечером ЕБЖ (если буду жив) - сделаю.
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва

Сообщение kost Сб дек 23, 2006 17:21

http://www.captcha.ru/kcaptcha/

Ставится за 5 минут (если есть минимальные понятия о PHP).
Аватара пользователя
kost
Заядлый `курильщик`
 
Сообщения: 701
Зарегистрирован: Ср апр 16, 2003 16:56
Откуда: Санкт-Петербург

Сообщение Aqua$erg Пн дек 25, 2006 10:12

нету минимальных понятий -08-
Аватара пользователя
Aqua$erg
Хронический Астматик
 
Сообщения: 1804
Зарегистрирован: Пт апр 11, 2003 8:12
Откуда: Питер

Сообщение Aqua$erg Чт дек 28, 2006 0:46

2Muerto: А слабо продолжить наш разговор и прикрутить код к скрипту Гостевухи уже не просто "ближе к выходным", а ближе к НГ? -02-
Сам скрипт гостевухи (исходник) - здесь
Аватара пользователя
Aqua$erg
Хронический Астматик
 
Сообщения: 1804
Зарегистрирован: Пт апр 11, 2003 8:12
Откуда: Питер

Сообщение Muerto Чт дек 28, 2006 1:12

Уфх... Хорошо, прикручу! Если не сопьюсь за ночь.
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва

Сообщение Muerto Чт дек 28, 2006 12:04

2Aqua$erg: Напиши мне на мейл...
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва

Сообщение Muerto Чт дек 28, 2006 14:17

В общем, скачай (http://www.muerto.ru/for_forum/gbook.rar), потестируй и напиши что не так если что.
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва

Сообщение Aqua$erg Чт дек 28, 2006 22:06

Спасиб, всё работает. Только очень уж мелкие цифирки и сильно зачёркнуты - хрен разберёшь цифры. Можно как-то поменять? (лучше бы просто искажения, а не зачёркивания)
Аватара пользователя
Aqua$erg
Хронический Астматик
 
Сообщения: 1804
Зарегистрирован: Пт апр 11, 2003 8:12
Откуда: Питер

Сообщение Muerto Пт дек 29, 2006 12:59

2Aqua$erg: Доеду до работы - отвечу точно (исходники там лежат). А будет это часа только через два (похмелье сильное). Но, теоретически, там есть в файле code.php генератор помех для канваса, вот там надо уменьшить цикл.
Последний раз редактировалось Muerto Пт дек 29, 2006 16:34, всего редактировалось 1 раз.
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва

Сообщение Muerto Пт дек 29, 2006 14:24

Код: Выделить всё
// Рисуем сетку
for ($i=0;$i<=100;$i+=5) imageline($im,$i,0,$i,25,$g1);
for ($i=0;$i<=25;$i+=5) imageline($im,0,$i,100,$i,$g1);

Это 31-33 строки. Меняй значения 100 и 25 в сторону уменьшения до тех пор пока не удовлетворишься... -06-
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва

Сообщение Aqua$erg Пт дек 29, 2006 23:40

Пробовал - зачёркивание не уходит, размеры цифирок особо не меняются. Вот так -08-
Аватара пользователя
Aqua$erg
Хронический Астматик
 
Сообщения: 1804
Зарегистрирован: Пт апр 11, 2003 8:12
Откуда: Питер

Сообщение Muerto Сб дек 30, 2006 11:53

2Aqua$erg: Размеры цифирок в другом месте. А зачеркивание именно там. Попробуй поставить нули - сам увидишь. А размеры цифирок я все подписал в каментах - поищи. Исходники на работе, а туда я доберусь только 9-го...
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва

Сообщение Aqua$erg Вт янв 02, 2007 23:51

пробовал. Не помогло
Аватара пользователя
Aqua$erg
Хронический Астматик
 
Сообщения: 1804
Зарегистрирован: Пт апр 11, 2003 8:12
Откуда: Питер

Сообщение Muerto Ср янв 10, 2007 11:22

Действительно, соврамши я! Эти циклы сетку рисуют. Тебе нужна строка 44 - там цикл
Код: Выделить всё
for ($i=0;$i<8;$i++) imageline($im,rand(0,100),rand(0,25),rand(0,100),rand(0,25),$g2);
вот он-то и отвечает за линии-помехи. Уменьшай 8 пока результат не удовлетворит.
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва

Сообщение Aqua$erg Чт янв 11, 2007 0:23

2Muerto: Ага, получилось! Тока мне кажется, что код постоянно выдаёт одни и те же цифры -08- Попробуй, напиши что-нить туточки и запомни цифры, что там были и пришли мне в Личку

добавлено через 10 минут впрочем, по-моему, мне так только показалось -06-

Попробую теперь спамеров на вшивость!

P.S. Спасибо!
Аватара пользователя
Aqua$erg
Хронический Астматик
 
Сообщения: 1804
Зарегистрирован: Пт апр 11, 2003 8:12
Откуда: Питер

Сообщение Muerto Чт янв 11, 2007 2:26

3420
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва

Сообщение Aqua$erg Чт янв 11, 2007 9:24

Хм... что характерно - у меня тоже -08- А ведь должен бы каждый раз что-то новенькое сочинять
Аватара пользователя
Aqua$erg
Хронический Астматик
 
Сообщения: 1804
Зарегистрирован: Пт апр 11, 2003 8:12
Откуда: Питер

Сообщение Muerto Чт янв 11, 2007 11:02

Попробуй вместо
Код: Выделить всё
$_SESSION["secret_number"]=rand(1000,9999);

код
Код: Выделить всё
$_SESSION["secret_number"]=mt_rand(1000,9999);

и, соответственно
Код: Выделить всё
srand(doubleval(microtime()));
на
Код: Выделить всё
mt_srand(doubleval(microtime()));

Хотя начиная с PHP 4.2.0, больше нет необходимости производить посев генератора случайных чисел перед его использованием. Честно сказать, я сам в недоумении. И в постах на той странице какой-то пассажир жаловался на подобное поведение скрипта. Где закавырка я не нашёл.
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва

Сообщение Muerto Чт янв 11, 2007 13:20

Кумекал я кумекал, но так и не пришёл к определённому выводу. НО (!), если у меня локально я оставляю такой код:
Код: Выделить всё
/* Код антибота */
session_start();
session_unset();
session_register("secret_number");
if (intval($_SESSION["secret_number"])<1000) {
   //mt_srand(doubleval(microtime()));
   $_SESSION["secret_number"]=mt_rand(1000,9999);
   }
/* Конец кода антибота */

то у меня перестают вылезать повторы. Т. е. закомментируй посев нафиг. Хоть он по идее и не при чём.
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва

Сообщение Aqua$erg Чт янв 11, 2007 21:11

попробую...
Аватара пользователя
Aqua$erg
Хронический Астматик
 
Сообщения: 1804
Зарегистрирован: Пт апр 11, 2003 8:12
Откуда: Питер

Сообщение Олежек Чт янв 11, 2007 22:27

http://pekurev.ru/2006/08/25/print:page ... botki.html

Легко прикручивается к гостевой -06-
Изображение

Україна понад усе! My LiveJournal
Аватара пользователя
Олежек
Заядлый `курильщик`
 
Сообщения: 629
Зарегистрирован: Пн апр 04, 2005 15:28
Откуда: Україна (Київ)

Сообщение Muerto Чт янв 11, 2007 22:44

2Олежек: -09- Его-то и прикручиваем!
Nadie hablara de nosotras cuando hayamos muerto.
www.muerto.ru
Аватара пользователя
Muerto
Растаман
 
Сообщения: 3597
Зарегистрирован: Пн окт 11, 2004 19:09
Откуда: Москва

Сообщение Aqua$erg Чт янв 11, 2007 23:09

2Muerto: Что-то ты не то написал: с твоей последней поправкой (типа как у тебя работает) код не проходит по-любому: меняется, как и хотелось, но при вводе пишет "неправильно введён код...". Пока вернул на старый.
Ты впихнул в исходный код какую-то session_unset(); - может, из-за неё?
Аватара пользователя
Aqua$erg
Хронический Астматик
 
Сообщения: 1804
Зарегистрирован: Пт апр 11, 2003 8:12
Откуда: Питер

След.

Вернуться в Архив

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 39

cron