Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
-2 / 1 / 0
Регистрация: 10.11.2013
Сообщений: 130

Отправляется спам с сервера, как это становить?

19.12.2024, 10:47. Показов 4026. Ответов 73
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, у меня на сайте есть форма для заполнения и каким то образом бот делает отправку. Вот письмо, которое приходит
[del]

Отправка происходит через файл
libz.lib.rar

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

Как можно это остановить?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
19.12.2024, 10:47
Ответы с готовыми решениями:

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

Отправляется спам с моего сайта
Здравствуйте, у меня проблема, на моем хостинге мне приходят уведомления что с моего сайта отправляются письма, в кол-ве 1000 штук, я не...

Письмо с сайта отправляется в спам
На сайте есть php-скрипт, который по запросу пользователя отправляет ему письмо. Так вот, это письмо автоматически попадает в спам. ...

73
Заблокирован
19.12.2024, 11:00
Цитата Сообщение от madara18 Посмотреть сообщение
Ведь отправка происходит не напрямую через заполнения формы через сайт
Почему же? Чел проверил куда на сайт улетает запрос и с какие параметры находятся в этом запросе. Потом написал скрипт, который имитирует такие запросы. Надо ставить капчу от гугла, что бы это предотвратить. Можно еще устанавливать сессии, токены и так далее. Но всё это можно обойти. Капча от гугла самый надежный вариант.
Цитата Сообщение от madara18 Посмотреть сообщение
иначе бы отправка не прошла с такими параметрами.
А где проходит валидация? Если только в JS, то элементарно пройдет. В php на первый взгляд я ничего такого не нашел.
0
Эксперт PHP
 Аватар для liris
4357 / 1000 / 150
Регистрация: 16.01.2023
Сообщений: 2,465
19.12.2024, 11:08
Как минимум csrf-токен внедрить и запретить прямой доступ к скрипту. Но помогает далеко не всегда. Капча не идеальный вариант - часто отпугивает легитимных пользователей. Обычно проще смириться с некоторым количеством спама.
0
Заблокирован
19.12.2024, 11:19
Можно, как временную меру в самом верху скрипта добавить вот этот код. Но обойти его легко потом.
PHP
1
2
3
4
if(!str_contains($_SERVER['HTTP_REFERER'],$_SERVER['HTTP_HOST']))
{
    die();
}
Добавлено через 3 минуты
Цитата Сообщение от liris Посмотреть сообщение
Капча не идеальный вариант - часто отпугивает легитимных пользователей. Обычно проще смириться с некоторым количеством спама.
У гугла есть капча, которую не видно. А мириться, что с моего сайта улетает спам, я бы не стал.
0
Эксперт PHP
 Аватар для liris
4357 / 1000 / 150
Регистрация: 16.01.2023
Сообщений: 2,465
19.12.2024, 11:27
Цитата Сообщение от barabar Посмотреть сообщение
У гугла есть капча, которую не видно.
И она отображается, если пользователь не похож на человека. Приложу вариант, который я постоянно вижу, когда пытаюсь воспользоваться каким-нибудь сервисом яндекса с чистого браузера (например после чистки истории/куков, или в режиме инкогнито). В данном случае я просто зашел на автору.

Мы на одном сайте, который облюбовал ботовод, довольно долго экспериментировали с защитами от спама. Капча от гугла полностью решила проблему - спам перестал приходить, но и количество заявок с сайта уменьшилось процентов на 70. От клиентов, добравшихся до сервиса окольными путями (например просто позвонив по телефону) слышали, что там ерунда какая-то всплывает и они теряют интерес к отправке формы. Особенно старшее поколение.
Миниатюры
Отправляется спам с сервера, как это становить?  
1
Заблокирован
19.12.2024, 11:38
liris, на этом форуме тоже периодически надо проходить капчу. У меня примерно раз в три дня она выскакивает. Там вроде защита от DDoS атак. Я бы такое себе никогда не поставил. Настраиваю это на уровне nginx. Вот только если атака распределенная, то моя защита может не помочь. Админ этого форума, вероятно, проанализировал плюсы и минусы и выбрал подходящий для него вариант.
0
Эксперт PHP
 Аватар для liris
4357 / 1000 / 150
Регистрация: 16.01.2023
Сообщений: 2,465
19.12.2024, 11:38
Цитата Сообщение от barabar Посмотреть сообщение
с моего сайта улетает спам
Так он не улетает, а прилетает. Владельцу сайта. Мы же не говорим об эксплуатации почтового сервиса для создания массовых рассылок?

Добавлено через 26 секунд
Цитата Сообщение от barabar Посмотреть сообщение
на этом форуме тоже периодически надо проходить капчу
Я ни разу ее не видел. Поверю на слово.
0
-2 / 1 / 0
Регистрация: 10.11.2013
Сообщений: 130
19.12.2024, 11:40  [ТС]
У меня как раз и есть csrf-токен. Как запретить прямой доступ к скрипту?
0
Заблокирован
19.12.2024, 11:42
Цитата Сообщение от liris Посмотреть сообщение
Так он не улетает, а прилетает. Владельцу сайта
Именно улетает. Надо быть внимательнее. В скрипте функция mail()
0
-2 / 1 / 0
Регистрация: 10.11.2013
Сообщений: 130
19.12.2024, 11:45  [ТС]
Проверки происходят в php файлах. Например не получится отправить форму, если какое либо поле не заполнено, но почему то отправка все равно происходит если это делает бот.
0
 Аватар для sad67man
2600 / 1504 / 689
Регистрация: 23.08.2015
Сообщений: 3,804
19.12.2024, 12:25
Цитата Сообщение от madara18 Посмотреть сообщение
У меня как раз и есть csrf-токен.
csrf-токен он против csrf атак, это не от ботов или спама.

Цитата Сообщение от madara18 Посмотреть сообщение
Например не получится отправить форму, если какое либо поле не заполнено, но почему то отправка все равно происходит если это делает бот.
Боты отправляют форму как-бы не через браузер. Поэтому все проверки нужно делать на стороне сервера.

Некоторые боты ходят по всем возможным сайтам и отправляют формы, это самые простые боты, которые не исполняют js. Можно попробовать этим воспользоваться. И поставить самую простую защиту. К примеру.

HTML5
1
2
3
4
<form method="post" onsubmit="this.guard='test'">
<input type="hidden" name="guard">
...
</form>
На сервере проверяете это поле
Это минимальная защита может помочь избавиться от рандомного спама.. Но если спам будет продолжаться, то нужно будет ставить капчу.

Добавлено через 12 минут
Цитата Сообщение от madara18 Посмотреть сообщение
Например не получится отправить форму, если какое либо поле не заполнено, но почему то отправка все равно происходит если это делает бот.
Покажите код, где у вас там стоят проверки?
0
-2 / 1 / 0
Регистрация: 10.11.2013
Сообщений: 130
19.12.2024, 12:26  [ТС]
Ок, поставил выше указанный код на формы. А почему test? Или там любое значение можно поставить?
Еще я закрыл доступы везде где лежать скрипты с помощью htaccess. То есть fobbiden при переходе к каталогу.
Может сработает. Но тем не менее я жду еще варианты
0
 Аватар для sad67man
2600 / 1504 / 689
Регистрация: 23.08.2015
Сообщений: 3,804
19.12.2024, 12:36
madara18, Конкретно данный файл, который вы скинули он уже закрыт и сам по себе ничего не делает, в нем описаны функции, но нет ни одного вызова.
Нужно смотреть код, куда отправляется форма где происходит обработка запроса. Его вы закрыть не сможете иначе и обычный пользователь не сможет отправить форму.
0
Заблокирован
19.12.2024, 12:54
sad67man, вроде я нашел откуда идет отправка данных. Там и токен даже есть. Вот только, как я и говорил, он не помогает.
PHP/HTML
1
2
3
4
5
6
7
8
9
    <div class="modal-body">
        <form name="order" id="order_form" method="post" action="./?order&rand=<?php echo random_int(1000000000, 9999999999); ?>">
        <input type="hidden" name="csrf" value="<?php echo $_SESSION['csrf_token'];?>">
            <div class="input-group inputfields">
            <span class="input-group-addon" style="min-width: 135px;"><i class="glyphicon glyphicon-envelope"></i></span>
        <input type="email" name="email" id="email" pattern="[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,}$" class="form-control" maxlength="100" value="<?php if (isset($_POST['email'])) { safe_echo($_POST['email']); } ?>" placeholder="email@email.ru" title="Введите действующий адрес электронной почты"/>
        </div>
 
...... ну и далее. Я не в праве без разрешения выкладывать код
0
 Аватар для sad67man
2600 / 1504 / 689
Регистрация: 23.08.2015
Сообщений: 3,804
19.12.2024, 13:00
Цитата Сообщение от barabar Посмотреть сообщение
Там и токен даже есть.
Я уже выше писал, что csrf токен - он против csrf атак. Вы должны знать что это такое) Понятное дело, что он не поможет от спама.
0
-2 / 1 / 0
Регистрация: 10.11.2013
Сообщений: 130
19.12.2024, 13:04  [ТС]
А что тогда поможет? Гугл капча не вариант, отправка идет не через форму, а через запросы
0
 Аватар для sad67man
2600 / 1504 / 689
Регистрация: 23.08.2015
Сообщений: 3,804
19.12.2024, 13:12
Цитата Сообщение от madara18 Посмотреть сообщение
Ок, поставил выше указанный код на формы. А почему test? Или там любое значение можно поставить?
Я написал, что нужно еще проверку этого поля добавить на сервере.. Без нее этот код не имеет смысла. А там вы проверяете значение, которое указали.

PHP
1
2
3
4
if (empty($_POST['guard']) || $_POST['guard'] !== 'test') {
    header('Location: /'); // редиректим на главную страницу)
    die();
}
Добавлено через 5 минут
Цитата Сообщение от madara18 Посмотреть сообщение
А что тогда поможет? Гугл капча не вариант, отправка идет не через форму, а через запросы
Как гугл капча работает? Делается запрос со стороны клиента (браузера) к гуглу - получаете токен, который отправляется уже на сервер вместе с формой. Затем на стороне сервера вы делаете запрос к гуглу на проверку этого токена, отправляя еще секретный ключ. Так происходит проверка капчи.
0
-2 / 1 / 0
Регистрация: 10.11.2013
Сообщений: 130
19.12.2024, 13:18  [ТС]
И в какой файл вставлять этот кусок кода? В buy_modal? То есть там где форма?
На сервере это куда?
0
Заблокирован
19.12.2024, 13:19
Цитата Сообщение от madara18 Посмотреть сообщение
А что тогда поможет? Гугл капча не вариант, отправка идет не через форму, а через запросы
Я посмотрел на сайте. Отправка идет через форму в сплывающем (модальном) окне. Идет пост-запрос на страницу /?order&rand=1930695350
Цифры в конце рандомные. На этой форме заказа так же имеется капча. Это в добавок к токену. Валидации в JS нет никакой. Форма отправилась с пустыми полями
0
 Аватар для sad67man
2600 / 1504 / 689
Регистрация: 23.08.2015
Сообщений: 3,804
19.12.2024, 13:31
Цитата Сообщение от madara18 Посмотреть сообщение
А что тогда поможет?
Потом вы говорите, что запрос идет в обход каких-то проверок. Такого может быть только если проверки идут только на стороне клиента (в браузере через js или атрибуты html).

Но браузер лишь предоставляет интерфейс для удобства пользователя.

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

Добавлено через 8 минут
Цитата Сообщение от madara18 Посмотреть сообщение
И в какой файл вставлять этот кусок кода? В buy_modal? То есть там где форма?
На сервере это куда?
А кто код писал? Вы даже не понимаете, куда отправляется форма и где обрабатывается запрос для создания заказа.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.12.2024, 13:31
Помогаю со студенческими работами здесь

Не отправляется письмо на почту из-за подозрения на спам
Здравствуйте! Написал не сложную программу для отправки писем. Но при её выполнении полявляется ошибка: &quot;Дополнительные...

Не отправляется запрос с сервера
Проект имеет API на сервере api.domain.info и сам клиент на domain.info. Клиент написан на Angular 5. Суть вопроса: при запуске приложения...

Не отправляется письма с сервера
Доброго времени суток. Возникла следующая проблема. Имеется два сервера: первый - веб сервер 192.168.50.1 (LAMP) второй -...

Не отправляется форма с локального сервера
Всем привет! Я начинающий в разработке сайтов. Взял свой первый заказ, все сделал, но... Столкнулся с тем, что не могу настроить отправку...

Как становить выполнение потока Thread
Здравствуйте друзья. Я запускаю метод пинга адресов в потоке ()ниже пиведен метод пинга и запуск его в потоке). public...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru