X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

2 страниц V   1 2 >
Открыть тему
Тема закрыта
> безопасность формы
Salikhoff_hb
Salikhoff_hb
Topic Starter сообщение 22.4.2011, 17:38; Ответить: Salikhoff_hb
Сообщение #1


в общем кто то бомбанул мой каталог только что, в бд оказалось больше 100 записей, со спамом(не знаю как назвать). Посоветуйте как обезопасить себя от такой ситуации? я думал внедрить капчу подтверждать через мыло, или тайм аут сделать? кто что посоветует?
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Letmetouchyou
Letmetouchyou
сообщение 22.4.2011, 17:46; Ответить: Letmetouchyou
Сообщение #2


FICO-077), капчи хватит
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Salikhoff_hb
Salikhoff_hb
Topic Starter сообщение 22.4.2011, 17:50; Ответить: Salikhoff_hb
Сообщение #3


Letmetouchyou, а если распознавать будут?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Letmetouchyou
Letmetouchyou
сообщение 22.4.2011, 17:55; Ответить: Letmetouchyou
Сообщение #4


FICO-077), если попадутсья те, кто будет распозновать капчи, то они ломанут твой сайт другим способом.


еше как варинат можешь генерировать ключ безопасности, и менять его когда данные из формы добавлены.
ключ передавай через input hidden. если ключи не совпадают то не лей инфу в бд.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Salikhoff_hb
Salikhoff_hb
Topic Starter сообщение 22.4.2011, 18:00; Ответить: Salikhoff_hb
Сообщение #5


Letmetouchyou, можно про последние две строки по подробнее!
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
zabmix
zabmix
сообщение 22.4.2011, 19:08; Ответить: zabmix
Сообщение #6


сам недавно столкнулся со спамом.
[PHP]
if(!isset($_SESSION['sid'])) {
$_SESSION['sid'] = md5(time()); // обновляется при любом пост на эту страницу.
}
$sid = $_SESSION['sid'];

if(!empty($_POST)) {

if($_POST['sid']==$sid) {
/* session_id совпадает */
}
unset($_SESSION['sid']);
}
[/PHP]
В форму вставил <input type="hidden" value="<?=$sid?>" name="sid">
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
r3ntg3n
r3ntg3n
сообщение 22.4.2011, 23:00; Ответить: r3ntg3n
Сообщение #7


Я всегда для пользовательских форм проверял id сессии до отправки формы и после + вешал каптчу. Если id не совпадали - до свидания.

До последнего времени активно юзал reCaptcha, но вот пару недель назад столкнулся с проблемой - все браузеры все отлично показывают, кроме IE - ошибка в .js файле, который грузиться с Google. Причем, на другом сайте, все отлично работало и работает. Начинал грешить на свой js-код или на jquery ui, пытался отключать - не помогло. Потом просто прикрутил каптчу с www.captcha.ru и все - все ок.

Правда, слышал, что у товарищей индусов есть сервис, которому платишь деньги, и тебе сидят и вводят каптчу по 100500 раз :) Не знаю, правда, на сколько этот сервис эффективен :)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
samedi
samedi
сообщение 23.4.2011, 7:40; Ответить: samedi
Сообщение #8


В форму вставил <input type="hidden" value="<?=$sid?>" name="sid">

только написать хотел, да это очень помогает. у меня даже через рекапчу проходили, а тут такое помогло)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Salikhoff_hb
Salikhoff_hb
Topic Starter сообщение 23.4.2011, 8:15; Ответить: Salikhoff_hb
Сообщение #9


чет я не особо догнал, при каких случаях она будет работать, при автоматическом спаме похоже?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
RequIem
RequIem
сообщение 25.4.2011, 0:01; Ответить: RequIem
Сообщение #10


внесу пару заметок, ибо важно предохранятся от спама.

time() обновляется каждую секунду, тоесть md5(time()) не будет менятся ровно 1 секунду, а за 1 секунду с одним и тем же хешем можно послать более мение 10-50 запросов.
важно привязать ещё что нибудь. В полне разумно привязать ещё и microtime вот уже за милисекунды успеть сложно.

По поводу банальности. md5(time()) это очень бонально. Все системы покажут вам одни и теже секунды если выполнить запрос одновременно, плюс md5 и у спаммера готовый хеш просто догодавшись что у вас md5(time()).

Ну и на последок, хеш лучше сравнивать двойным оператором сравнения. "==="
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
2 страниц V   1 2 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыРассылка ваших сообщений в контакт формы!
3 dizaynmaks 1682 18.4.2022, 9:04
автор: dizaynmaks
Открытая тема (нет новых ответов) Нужен копирайт, информационная безопасность
3 Petechka 2769 29.9.2019, 20:08
автор: A_Lika
Открытая тема (нет новых ответов) Делаю простые формы заказов с оплатой
прочитал-оформил-оплатил
3 Taylor 2794 13.6.2018, 0:34
автор: Taylor
Открытая тема (нет новых ответов) Доработка формы вывода фильтра товара и формы заказа. Webasyst ShopScript7
0 rmoto 2726 12.12.2017, 1:13
автор: -Arturrfmoto-
Открытая тема (нет новых ответов) Требуется доработка формы заказа/обратной связи
0 Dinamitt 1796 22.2.2017, 22:02
автор: Dinamitt


 



RSS Текстовая версия Сейчас: 29.3.2024, 11:07
Дизайн