Deutsch

SPAM через контактный формуляр

601  
Vovan(ator) коренной житель18.01.19 16:41
Vovan(ator)
NEW 18.01.19 16:41 

Привт всем.


Уже наверное с пол года приходят сообщения через некоторые контактные формуляры на сайтах,

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

Я уже установил рекапчу и расширения для отлова спама через роботов.

Но как я уже писал, рассылка похоже ведётся вручную.


Содержание примерно одинаковое во всех сообщениях.


Каким расширением можно закрыть рассылку сообщений с определённым содержанием?

Что-то типа спамфильтра по определённым словам.


В настоящий момент речь идёт о сайтах на Joomla и WordPress.

#1 
gendy Dinosaur18.01.19 17:29
gendy
18.01.19 17:29 
в ответ Vovan(ator) 18.01.19 16:41

У меня тоже было. Но простейшей капчи хватило. Интересно что готовые капча модули тоже не помогли. Там просто кнопка через яваскрипт блокировалась

А проверка по содержанию наверняка не поможет. Они вставляют в текст пару случайных символов, это старый способ обхода антиспам фильтров

Фашизм будет разбит


Человека карают только те боги, в которых он верит

#2 
Vovan(ator) коренной житель18.01.19 17:38
Vovan(ator)
NEW 18.01.19 17:38 
в ответ gendy 18.01.19 17:29

2 Сайта на Joomla и 1 на WordPres.

Во всех случаях установлены и капча и так называемые "медовые горшки".

Всё работает.

Но сообщения всё же приходят. Сейчас значительно реже, чем без этих средств, но всё же есть.

Моё предположение, что их рассылают вручную.

Вот я и хотел исключить рассылку с определённым содержанием.

Хотя бы если в сообщении находится ссылка на сайт, слово "секс" или знак доллара (ну или другие схожие параметры).

#3 
gendy Dinosaur18.01.19 18:19
gendy
NEW 18.01.19 18:19 
в ответ Vovan(ator) 18.01.19 17:38

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

Но вручную считать капчи... Слишком дорогой спам получится.


По поводу ключевых слов это даже не смешно. Спаммеры уже 20 лет как научились их обходить. А ссылки на сайт... А вдруг юзер хочет показать на ошибку или кучу скришотов на дропбоксе

Фашизм будет разбит


Человека карают только те боги, в которых он верит

#4 
Vovan(ator) коренной житель18.01.19 20:30
Vovan(ator)
NEW 18.01.19 20:30 
в ответ gendy 18.01.19 18:19, Последний раз изменено 18.01.19 20:31 (Vovan(ator))

Дело не в том, кто и что научился или нет или сколько это стоит...

Дело в том, что рисунок везде схожий и если поставить простой фильтр, то можно это дело закрыть.


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

толкьо сейчас уже не помню что именно это было. И найти не могу.

#5 
gendy Dinosaur18.01.19 21:31
gendy
NEW 18.01.19 21:31 
в ответ Vovan(ator) 18.01.19 20:30

по мне лучше сделать самому капчу и избегать этого кошмара - рекапчи гугля


фильтр найти не проблема, но он все рано никогда не угонится за всеми возможными комбинациями sex , sеx, s_e_x и так далее, зато благополучно отрежет половину серьёзных запросов

https://www.wordmine.info/de/Search.aspx?slang=de&stype=wo... . это тупиковый путь

Фашизм будет разбит


Человека карают только те боги, в которых он верит

#6 
Sergo2008 коренной житель19.01.19 12:44
Sergo2008
NEW 19.01.19 12:44 
в ответ Vovan(ator) 18.01.19 20:30

Для джумлы, глянь тут, мож что найдётся из готового... А если нет, то можно самому плагин написать, к стандартному компоненту, или допилить готовую нестандартную форму, сделав парсинг сообщения до отправки, по списку указанных слов.


фильтр найти не проблема, но он все рано никогда не угонится за всеми возможными комбинациями sex , sеx, s_e_x и так далее, зато благополучно отрежет половину серьёзных запросов

Ну..., это же можно регуляркой проверить, если скажем обычное слово содержит в себе "sex" и тд., и такие слова пропустить.

Понятное дело что всё возможное будет сложно закрыть, но это хотя бы отсеет основную массу спама. Главное не показывать сообщений спамеру, что майл не отправлен, что бы он не знал, и не мог подстроится.


ПС. Можно к примеру по началу подозрительные на спам мейлы отправлять на отдельный ящик, проверять, и добавлять в базу новые фильтра. Так будет хотя бы разделение на спам и не спам, и меньше вычищать придётся.

#7 
Vovan(ator) коренной житель19.01.19 13:43
Vovan(ator)
NEW 19.01.19 13:43 
в ответ Sergo2008 19.01.19 12:44

Вот это уже лучше :-)

И ход мыслей тоже с моим схож :-)


Спасибо up

#8 
gendy Dinosaur19.01.19 15:06
gendy
NEW 19.01.19 15:06 
в ответ Sergo2008 19.01.19 12:44
Ну..., это же можно регуляркой проверить, если скажем обычное слово содержит в себе "sex" и тд., и такие слова пропустить.

и сколько же правил понравится чтобы все варианты слова секс отфильтровать? да и цель не сильно понятна, если речь идет о том, чтобы сервис не получал спама, то можно у них поставить антиспам фильтр.

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

Фашизм будет разбит


Человека карают только те боги, в которых он верит

#9 
Sergo2008 коренной житель20.01.19 10:15
Sergo2008
NEW 20.01.19 10:15 
в ответ gendy 19.01.19 15:06, Последний раз изменено 20.01.19 10:24 (Sergo2008)
и сколько же правил понравится чтобы все варианты слова секс отфильтровать?

Теоретически одно(я не спец по регуляркам), типа поиск в цикле по словам сообщения, из базы слов - (регулярка).$var.(регулярка), где $var содержит очередное значение - sex и тд..

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


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

Я не спамер, поэтому хз как и что там делается у них, так что понятия не имею как спамер может проверить, на какой мейл ушло, если отправка идёт через серверный скрипт... Я к примеру могу проверить что мейл валидный, если я его знаю, но формы джумлы/вордпрес то в себе не содержат мыло в открытом виде, если на сайте явно не указать, само сообщение отправляется через серверный скрипт, а он может отправить на какой угодно ящик, при этом в сообщении на ящик спамера, подтверждающего отправку, можно подставить правильный мейл, что может заставить спамера думать что всё норм.

Есть конечно возможность проверить дефолтный мейл через уязвимости системы, но это уже задача для хакеров, а спамеры, которые вручную спамят, думаю этого не смогут сделать, как и проверить ушло ли сообщение. Иначе бы они это не в ручную делали бы, а написали бы спамбот. Вручную спамят обычно конкуренты, и всякая школота ради поиграться, которые других вариантов не знают.


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


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


В любом случае, борьба со спамом в том или ином виде всё же лучше, чем тупое игнорирование, и последующее ручное вычищение рабочего ящика от мусора. Хорошо когда в неделю 1-2 спам мейла, а что делать если начнут в день сотню таких присылать? Сидеть и вычищать вручную?


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

Ну так для этого и создаётся отдельный ящик для спама, что бы на него спам отправлять, и оставить главный ящик ток для чистой почты. Пусть себе спамер проверяет, есть он или нет, если он его узнает конечно.


Vovan(ator), ты логи глянь, по дням когда спам приходит, от куда идёт. К примеру если спам идёт примерно с одного и того же айпи, то можно определить страну, и если она к примеру какая банановая республика, то можно просто заблокировать.

У меня к примеру есть один городской сайт, который ток на горожан рассчитан, так его как с начало спамили по чёрному, в день до сотни мейлов(закрыл форму с начало на показ по германии), а потом и вообще поломали, айпишники шли из китая. ХЗ чего китайцам или кто там через их айпи спамил и ломал, нужно было от сайта, но после того как я закрыл доступ к сайту с привязкой чисто на германию, с разрешением индексации его ток основным поисковикам, как спам и попытки взлома прекратились, уже 4 месяца тихо как в танке, иногда(пару раз в месяц) по логам видно что стучатся на сайт из вне, но на этом всё. Я просто отдаю всем кто не из германии страницу ошибки сервера, что бы горе-начинающие хакеристы и спамеры думали что сайт лежит.

Естественно такой экстремализм подходит не для всех сайтов, но как вариант может существовать, если правильно подойти к нему.

#10 
gendy Dinosaur22.01.19 08:18
gendy
NEW 22.01.19 08:18 
в ответ Sergo2008 20.01.19 10:15
Теоретически одно(я не спец по регуляркам), типа поиск в цикле по словам сообщения, из базы слов - (регулярка).$var.(регулярка), где $var содержит очередное значение - sex и тд..

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


Я не спамер, поэтому хз как и что там делается у них, так что понятия не имею как спамер может проверить, на какой мейл ушло, если отправка идёт через серверный скрипт... Я к примеру могу проверить что мейл валидный, если я его знаю, но формы джумлы/вордпрес то в себе не содержат мыло в открытом виде, если на сайте явно не указать, само сообщение отправляется через серверный скрипт, а он может отправить на какой угодно ящик, при этом в сообщении на ящик спамера, подтверждающего отправку, можно подставить правильный мейл, что может заставить спамера думать что всё норм.

Есть конечно возможность проверить дефолтный мейл через уязвимости системы, но это уже задача для хакеров, а спамеры, которые вручную спамят, думаю этого не смогут сделать, как и проверить ушло ли сообщение. Иначе бы они это не в ручную делали бы, а написали бы спамбот. Вручную спамят обычно конкуренты, и всякая школота ради поиграться, которые других вариантов не знают.

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


ты логи глянь, по дням когда спам приходит, от куда идёт. К примеру если спам идёт примерно с одного и того же айпи, то можно определить страну, и если она к примеру какая банановая республика, то можно просто заблокировать.

у меня спамили из москвы и калуги, тоже блокировать? а ведь бывают ещё всякие прокси и анонимизаторы

а китайцы и сингапурцы регулярно пытаются сканировать сайт на уязвимости. я их уже узнаю по гетам на phpmyadmin.

Фашизм будет разбит


Человека карают только те боги, в которых он верит

#11 
Sergo2008 коренной житель22.01.19 11:49
Sergo2008
NEW 22.01.19 11:49 
в ответ gendy 22.01.19 08:18
тогда нужно делать очень широкие и сложные правила, которые легко половину словаря отфильтруют. а в контактформуляре ложные срабатывания куда опаснее спама.

Зачем сложное, достаточно проверить слово на буквы и цифры, что то по принципу - ([A-Za-z0-9_-]).$text.([A-Za-z0-9_-]), и всё. По крайней мере я так думаю, должно работать, не проверял...


а что мы собственно обсуждаем?

Обсуждаем спам само собой. Суть вот в чём, если я к примеру хочу отправить сообщение, то забиваю свой мейл, вставляю текст и отправляю. В качестве подтверждения отправки, форма отдаёт текстовое сообщения прям на странице, и возможно мейл с подтверждением на указанный мной мейл.

Если спамер не знает что на сайте есть фильтр, то всё что он получит, это это сообщение и возможно мейл с подтверждением, в котором можно указать тот же мейл что и на сайте указан, но в реальности скрипт отправит спам сообщение на другой мейл.

Это я и имел в виду. Как спамер может узнать что мейл его ушёл на другой ящик а не на правильный? Думаю не как, если он сайт не сломает и не глянет исходник скрипта.


либо капча

Капчу сегодня обходит любой мало мальски норм бот, плюс для спама вручную капча не защита.


у меня спамили из москвы и калуги, тоже блокировать? а ведь бывают ещё всякие прокси и анонимизаторы

Я писал про случай, когда сайт другие посетители не интересны, как к примеру для городского портала. Ток в этом случае блокировка играет роль. Ну а для проксистов и аномайзеровистов, 100% блок, обычные посетители не скрывают свой айпи, а тот кто срывает, значить что то замышляет так сказать...

В твоём случае с Москвой и вообще всем миром так сказать, данный вариант блокировки не в тему, сайт то не чисто на германию рассчитан...


Ладно, все эти рассуждения не к чему, каждый должен сам знать, что ему делать и как со спамом... Для городского сайта у меня запросили такое решение, я его и сделал.

#12 
miltorg коренной житель06.02.19 22:15
miltorg
NEW 06.02.19 22:15 
в ответ Vovan(ator) 18.01.19 16:41

Я ведь давно рассказывал про мой модуль Антиматерильник. Работает чудненько. Что напишешь - то и фильтрует.

Половина евро в час
#13 
ProstoNik посетитель26.02.19 00:01
ProstoNik
NEW 26.02.19 00:01 
в ответ Vovan(ator) 19.01.19 13:43

Meня эти уроды тоже уже спамом достали , я установил

рекапчу 3 версии на WP и все утихло


#14 
miltorg коренной житель26.02.19 01:31
miltorg
NEW 26.02.19 01:31 
в ответ gendy 19.01.19 15:06
и сколько же правил понравится чтобы все варианты слова секс отфильтровать?

Совсем не много. Вот например:

s/секс//;

Половина евро в час
#15 
miltorg коренной житель26.02.19 01:34
miltorg
NEW 26.02.19 01:34 
в ответ miltorg 26.02.19 01:31

Вот действующий пример:

https://chajnik.ru/antimat

Половина евро в час
#16