Войти в систему

Home
    - Создать дневник
    - Написать в дневник
       - Подробный режим

LJ.Rossia.org
    - Новости сайта
    - Общие настройки
    - Sitemap
    - Оплата
    - ljr-fif

Редактировать...
    - Настройки
    - Список друзей
    - Дневник
    - Картинки
    - Пароль
    - Вид дневника

Сообщества

Настроить S2

Помощь
    - Забыли пароль?
    - FAQ
    - Тех. поддержка



Пишет Misha Verbitsky ([info]tiphareth)
@ 2007-03-01 03:24:00


Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Настроение: sick
Музыка:Emperor - EMPEROR
Entry tags:imperium, spam, www

уничтожать спамера и всех, кто солидарен со спамером

Спаммеры
не успокоились, и за месяц насобачили
несколько тысяч спамов в ленинский гестбук, он же форум.
Самых что ни на есть бесмысленных - в поле 90% сообщений
стоит ``Authentication Error You must enter something as
your username.''

Спамер гаже, подлее и отвратительнее любого живого
существа. Надо уничтожать спамера и всех, кто
солидарен со спамером. Родственников, знакомых,
всех, без жалости, без снисхождения. Это война.

Сидел весь вечер, налаживал очередную спамодробилку.
По совету Йобанного Хуя [info]yobanniy_huy,
форму для внесения комментариев теперь пишет
жабий скрип посредством document.write;
также сделал noscript с неправильной формой.
Для борьбы с роботами, которые распознают
функцию document.write, определил функцию zatrudnyayu,
которая делает то же самое, что document.write,
и использовал ее.

Не помогло совершенно - роботы полезли через полчаса
после реформ. Надо думать, они таки парсят жабий скрип.

Добавил ``Authentication Error'' и ``URL'' в список
нецензурных слов.

Привет.



(Добавить комментарий)


[info]blue_slonopotam
2007-03-01 07:09 (ссылка)
А как же высокохудожественные картинки с цифрами ?

(Ответить) (Ветвь дискуссии)


[info]tiphareth
2007-03-01 07:16 (ссылка)
Придется, похоже

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]slider
2007-03-01 10:44 (ссылка)
Капча - простой и действенный способ остановки спамеров.
В гостевую люди уже и не пишут, поди ?

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]tiphareth
2007-03-01 11:08 (ссылка)
Я уже ставил ее туда. Уродски получается.

(Ответить) (Уровень выше)


[info]greyzone
2007-03-01 19:36 (ссылка)
Не всякая. Некоторые неудачные каптчи бьются роботами с вероятностью 0.8 и выше (если интересно, поищу ту статью).
Лучше тогда совмещать каптчу с какими-нибудь другими средствами (установкой кукисов и проверкой по времени?), или вообще чуть-чуть усложнить задачу, предлагая вместо набора цифирей и буков задачки типа «3+15=?»
Если спамер специально срёт, то он научит роботов и этому. Тогда можно будет ещё усложнить, показывая на картинке (или даже в виде текста) предложения выбрать лишнее из списка или указать антоним какого-то слова (можно генерить из тестов IQ).
Простор, в общем.

(Ответить) (Уровень выше)


[info]greyzone
2007-03-01 19:42 (ссылка)
http://www.securitylab.ru/contest/239642.php

(Ответить) (Уровень выше)


[info]rathamahata
2007-03-01 19:52 (ссылка)
Каптчи (любые) отлично ломаются живыми людьми. Сливаешь мусорный, но живой трафик (китайцев, например) на заглушку с текстом вроде:
"Мы думаем, что ты, сука, робот! Докажи, сука, обратное! Взломай капчу!". Капчу, само собой, суешь ту, что хочешь взломать. Китайцы ведутся только так. AJAX в целом очень хорош для подобных вещей Лишь бы ресурс куда хочется запостить баклинк был ценным с точки зрения поисковых машин. Блоггер в своё время наедался на этом.

(Ответить) (Уровень выше)


[info]polter
2007-03-01 07:51 (ссылка)
Скорее всего у робота записаны URL и поля для сабмита сообщения и они постят напрямую, зачем им вообще HTML-форма-то?

(Ответить) (Ветвь дискуссии)


[info]polter
2007-03-01 07:55 (ссылка)
На первый взгляд справиться с таким можно выдавая в форму каждый раз уникальный случайный magic-number, который будет проверяться. Выдавать можно в виде яваскрипта, который будет добавлять к форме нужный hidden с этим номером.
Или как-то так.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]tiphareth
2007-03-01 08:03 (ссылка)
Ну да. Или динамически генерировать
название поля.

Нет, хуй. Они, суки, реально парсят жаваскрип.

Такие дела
Миша

(Ответить) (Уровень выше)


[info]tiphareth
2007-03-01 08:01 (ссылка)
Я тоже так думал. Нет, я переименовал поля, причем
несколько раз (думал настроить динамическое переименование,
но теперь ясно, что не будет).

Такие дела
Миша

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]harmaty
2007-03-02 03:15 (ссылка)
почему не будет?
У меня обычно поля именуются случаюно - помогает на порядок уменьшить спам

(Ответить) (Уровень выше)


[info]olegmi.livejournal.com
2007-04-06 12:05 (ссылка)
1. Генерим таблицу всех случайный чисел длиной n.
2. берем 2 случайных из них
3. отдаем клиенту их произведение и запоминаем кому (можно запомнить на ресурсах самого клиента)
4. принимаем сообщение только если клиент java скриптом разложит на сомножители и вернет с формой.

Велечиной n регулируем проходимость системы.
Можно отдавать несколько произведений.

Так пойдет?

Можно еще сунуть дискретные логорифмы, но это сложнее в реализации. Сомножетели сойдут.

(Ответить) (Уровень выше)


[info]rathamahata
2007-03-01 19:55 (ссылка)
Так и есть, скорее всего. Данные формы наколлектились давно уже. А спам-постинг идёт сейчас и по старым базам. Эти базы ещё наверное и расползлись по разным причинам в разные руки.

(Ответить) (Уровень выше)


[info]yobanniy_huy
2007-03-01 08:32 (ссылка)
никакой яваскрипт никто не парсит (это сложно), вы просто неправильно сделали.

было:

zatrudnyayu('<td><input ... ></td><td width="20"> </td>');

а надо сделать что-то типа:

s1 = "
[Error: Irreparable invalid markup ('<in">') in entry. Owner must fix manually. Raw contents below.]

никакой яваскрипт никто не парсит (это сложно), вы просто неправильно сделали.

было:

zatrudnyayu('<TD><INPUT TYPE="Text" NAME="ubejspam-username" VALUE="" SIZE=12></TD><TD WIDTH=20>&nbsp;</TD>');

а надо сделать что-то типа:

s1 = "<IN" + "PUT " + "TYP" + "E="Text""
s2 = "NAME="ubej"
s3 = "spam-username"
...
zatrudnyayu('<T' + 'D>' + s1 + s2 + s3);

вот в таком духе, чтобы не было <b>plain text</b>, а с тем что сейчас у вас там - эмуляция яваскрипта и не нужна.

(Ответить) (Ветвь дискуссии)


[info]polter
2007-03-01 08:56 (ссылка)
Я не понял, а что сложного в том, чтобы яваскрипт обрабатывать как нужно-то?

(Ответить) (Уровень выше)


[info]tiphareth
2007-03-01 09:00 (ссылка)
подобной говнофотографии терабайты на
софткор-порносайтах самого дурного пошиба.

Спасибо, попробую. У меня было нечто похожее, но
глючило, и я его убрал (первый раз в жизни
нечто пишу на жабьем скрипе). Хотя работать
не будет, я боюсь.

Такие дела
Миша

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]yobanniy_huy
2007-03-01 09:06 (ссылка)
вот еще совет дам.
можно попробовать привязаться к таймеру - даже если спамботы эмулируют яваскрипт (что маловероятно), то они наверняка не эмулируют таймер.
я яваскрипт не знаю, но это можно сделать следующим образом,
если есть ф-ция time() возвращающая время например в миллисекундах,
и ф-ция pause(n) которая задерживает выполнение следующей команды на n миллисекунд,
то код такой:
a = time()
pause(150)
a = time() - a
if (a < 100) spam(); else ok();

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]tiphareth
2007-03-01 09:10 (ссылка)
Интересно... а как на этом механизме спам-фильтр учредить?
Ничего умного сходу в голову не приходит.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]polter
2007-03-01 09:14 (ссылка)
Никак. Если спамеры поддерживают яваскрипт, то делают это, очевидным образом используя gecko или mshtml в виде библиотеки. То есть стратегия на использовании технических отличий браузера от спамера заранее обречена на провал.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]yobanniy_huy
2007-03-01 09:19 (ссылка)
да вы теоретик

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]polter
2007-03-01 18:36 (ссылка)
А практика - это, что ли, тратить силы на методы, которые обходятся если не уже, то через неделю?
Самое полезное, что из таймера можно выжать - это отложенная вставка уникального номера и то, естественно предполагать, что в данный момент какой-нибудь ссаный спамер читает то, о чем здесь сейчас беседуют и вставляет в своего робота нужный таймаут и завтра уже нужно будет придумывать новый метод.
Из более или менее устойчивых методов, пока что, увы остаются лишь картинки и байесовские фильтры и то они могут обходиться.
Правда на распознавание картинок нужен интеллект чуть побольше, чем на задействование mshtml в каком-нибудь Visual Basic.

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]yobanniy_huy
2007-03-01 19:11 (ссылка)
отвечу из жалости: у вас слишком много теории, подойдите к реальности поближе.
спамерам важна массовость, никто не будет специально париться ради мишиной ссаной гостевухи.
чем больше она будет отличаться от среднего (а у тифарета для этого все возможности есть), тем выше вероятность что спамботы пройдут мимо.
чем бессмысленно рассуждать, лучше придумайте 10 фишек вот как с таймером, и посоветуйте человеку - может что-то и сработает.

(Ответить) (Уровень выше)


[info]yobanniy_huy
2007-03-01 09:17 (ссылка)
<script language=javascript>

x = 0;
is_spam = 1;
setTimeout(OnTimer1, 300);
setTimeout(OnTimer2, 200);
setTimeout(OnTimer3, 100);

function OnTimer1()
{
if (x == 6) is_spam = 0;
document.write(is_spam);
}
function OnTimer2()
{
x *= 3;
}
function OnTimer3()
{
x = 2;
}

</script>

(Ответить) (Уровень выше) (Ветвь дискуссии)


[info]syarzhuk
2007-03-02 01:31 (ссылка)
Ух ты, классная ідея

(Ответить) (Уровень выше)


[info]yobanniy_huy
2007-03-01 09:25 (ссылка)
а вот еще неплохой вариант: через несколько секунд яваскриптом заменять элемент страницы, так чтобы до замены там был урл по которому пойдут спамеры, а после замены - урл по которому пойдут нормальные комментарии

(Ответить) (Уровень выше)


[info]tiphareth
2007-03-01 09:08 (ссылка)

Про говнофотографию - это из другого коммента приклеилось.

(Ответить) (Уровень выше) (Ветвь дискуссии)

сделать капчу нормальную
(Анонимно)
2007-03-01 11:31 (ссылка)
написать словами - "скажите сколько будет три плюс два" и ответ должен быть "пять". "плюс" и "минус" подставлять случайно.



===
deadj

(Ответить) (Уровень выше)

Когда в мою вики стали ломится спамеры...
[info]belonesox
2007-03-01 12:01 (ссылка)
Когда в мою вики стали ломится спамеры, я сделал при регистрации
микротест на вменяемость. Помогло. Но в вашем случае, "капча" более чем достаточно.

(Ответить)


[info]valshooter
2007-03-01 12:11 (ссылка)
У меня на вордпрессе (который есть самое натуральное гавно) используется spam karma

пока что ни одной ошибки не было

самое полезное:
- считать количество урлов в тексте сообщения
- засекать паузу между загрузкой формы и сабмиттом коммента (нормальному человеку надо время чтоб прочитать/написать свой)

(Ответить) (Ветвь дискуссии)


(Анонимно)
2007-03-01 13:19 (ссылка)
реально хорошая весчь

(Ответить) (Уровень выше)


[info]polit_extremist
2007-03-01 14:05 (ссылка)
Миша, прозаку скушайте.

(Ответить)


[info]polit_extremist
2007-03-01 14:09 (ссылка)
И это, по теме:
С месяц назад на слашдоте предложили очень дельное: взять input type="text" name="чего-нибудь обычное, например, email", засунуть его в span id="blah", этому спану elsewhere сделать visibility: hide. Простой человек его не увидит, спамбот - увидит и чего-нибудь введет. Роботы идут лесом, люди - well, пусть все равно идут лесом, ибо кому нах их мнение сдалось.

(Ответить)

!
[info]yobanniy_huy
2007-03-02 14:46 (ссылка)
а вот ещё гениальная идея:

вместо кнопки SEND сделать (а лучше все время генерировать) картинку, такую, что для отсылки нужно будёт кликнуть на её элемент.

например, Ленин держащий в руке табличку "послать", или там тётка с сиськами (т.е. можно ещё и креативно выебнуцца).

таким образом распознавание совмещается с отсылкой (1 клик),
и лишних действий от юзера (да и особенных умственных затрат на распознавание) не потребуется.

(Ответить)


[info]gobzavr
2007-03-04 16:34 (ссылка)
А если они ваш журнал читают (что не так уж невероятно), то вы им значительно облегчаете задачу.

(Ответить)