Как НЕ стоит делать формы заявок и обратного звонка на сайте


Доброго времени суток всем читателям, на связи [CPAGANG]

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

В данном примере имеются обе формы.

Искав сайты для написания очередной статьи, нашел вот такой вот сайт - https://eservo.ru/

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

Открыв Debug'ер гугла в коде формы, я обнаружил следующее:

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

Идем в REQBIN создаем запрос отправляем и сервер успешно выдает 200 код.

Проверяем почту и видим, что письмо не в инбоксе, а в спаме (т.к. отправляется от хостинга Beget, для него это нормальное явление).

Как мы видим, все данные формы пришли к нам на почту.

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

Чем это грозит?

1) Ваш сервер/хостинг могут использовать как донора для рассылки.

2) Конкуренты могут попросту заспамить ваш почтовик каким-либо текстом.

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

4) Если у данной формы или же у самого сайта есть база данных и сайт работает с ней через форму, или же с какой-то иной частью, то можно проверить его на SQL инъекцию и получить доступ к базе данных сайта, далее несколько веток разветвления событий.

  • Перенаправление заявок конкурентам
  • Полный дамп покупателей и их информации
  • Замена каких либо элементов сайта которые отстукивают с БД

Как обезопасить себя и свой сайт от подобных уязвимостей?

Все предельно просто.

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

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

  • Сделайте ограничение по длине в полях ввода, к примеру: для поля имени 12 символов, для почты 32 символа с проверкой почта ли это вообще, в поле ввода телефона сделайте ограничение только на ввод цифр.
  • И, конечно же, поставьте ReCaptcha на обработку запроса, это усложнит автоматизацию проверки данной формы на уязвимость, а также ее использования для рассылок.

Если у вас остались какие либо вопросы вы можете задать их в нашем чате телеграм - Перейти

А так же, больше похожего и иного материала вы сможете найти в нашем канале - Перейти


Комментарии