Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

16.04.2008, 04:31
|
|
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме: 16641028
Репутация:
2371
|
|
Забудем про captcha
[Intro]
С недавнего времени я начал изучать AJAX библиотеку jQuery..
На мой взгляд это лучшая, удобная и легкая либа для AJAX...
Прочитав некоторые статьи, доки по либе я решил сделать так, чтобы пользователям на вашем сайте не пришлось смотреть на закорюченные символы 
[Start]
Имеем форму:
PHP код:
<form method="post" id="xek">
Text: <input type="text" name="text" /><br/>
<input type="submit" name="sub" value="Ok" />
</form>
Ну тут роботу ничего не стоит как отправлять POST запросы text=ss,sub=Ok на наш скрипт...
А если добавить через js некую форму.....
В хидере( Между <head> и </head>) страницы напишем следующее:
Код:
<script src="jquery-1.2.3.pack.js"></script>
<script type="text/javascript">
$(document).ready(function()
{
$.get("md5.php",function(hash)
{
$("#xek").append('<input type="hidden" name="code" value="'+hash+'" />');
});
});
В этом коде мы делаем GET запрос (сразу при загрузке страницы с формой) к файлу md5.php, получаем оттуда данные и jQuery сам вставляет новый инпат в нашу форму на странице, но исходный код страницы при этом не изменяется..
в md5.php мы можем выводить допустим такое:
PHP код:
<?php
echo md5($_SERVER['REMOTE_ADDR']).'xekxek');
?>
Тем самым если робот будет отправять пост запросы через обычную форму, то скрипт его не пропустит, потому что проверить робот это или нет можно след.кодом:
PHP код:
<?php
if(!isset($_POST['hash']) || $_POST['hash'] != md5($_SERVER['REMOTE_ADDR']).'xekxek')) echo 'You are not human';
?>
[End]Вы скажите, а что сложного человеку посмотреть JS код, узнать файл md5.php и ботом сначала парсить инфу оттуда?
Ну так существует ведь http://ru.wikipedia.org/wiki/Обфускация JS кода с помощью которой вам надо обфуцировать небольшой JS код в хидере..
Спросите вы: А разве сложно его раскодировать?
Отвечаю также: А разве сложно его хорошо криптануть??)))
|
|
|

16.04.2008, 04:43
|
|
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме: 16641028
Репутация:
2371
|
|
Либо еще лучше подключить мод реврайт и отправлять запросы на что-то типа
PHP код:
<?php
$_SERVER['REMOTE_ADDR'].time();
?>
/IP_time.jpg
Так уже даже можно название файла не прятать т.к. пока робот зайдет на файл и отправит форму, то значения time() будут разные
|
|
|

16.04.2008, 04:46
|
|
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме: 16641028
Репутация:
2371
|
|
Либо вообще в md5.php создавать сессию с указанным выше содержимым и если форма отправляется без сессии, то робот! 
|
|
|

16.04.2008, 09:03
|
|
наркоман с медалью
Регистрация: 07.05.2005
Сообщений: 3,704
Провел на форуме: 19975136
Репутация:
4536
|
|
ты забыл про безскриптовых людей.. к тому же гораздно проще давать рандомные имена полям формы еще перед генерацией странице, я кстати писал об этом ..
|
|
|

16.04.2008, 14:50
|
|
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме: 16641028
Репутация:
2371
|
|
GreenBear, да, тоже вариант, а безскриптовые люди сделать ничего не смогут если допустим сделать еще проверку по IP 
|
|
|

16.04.2008, 15:04
|
|
Познавший АНТИЧАТ
Регистрация: 13.04.2006
Сообщений: 1,738
Провел на форуме: 5151669
Репутация:
1198
|
|
неее буду лечше на ранмоде(типа капча) сидеть,по мне эфективнее. и некие мои замороченные проверочки.
|
|
|

16.04.2008, 15:30
|
|
наркоман с медалью
Регистрация: 07.05.2005
Сообщений: 3,704
Провел на форуме: 19975136
Репутация:
4536
|
|
исис, в том то и дело что они НИЧЕГО сделать не смогут ....
|
|
|

16.04.2008, 15:49
|
|
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме: 16641028
Репутация:
2371
|
|
GreenBear, с чего ты взял?
Если у них включен javascript, то jquery сделает свое дело...
|
|
|

16.04.2008, 17:00
|
|
наркоман с медалью
Регистрация: 07.05.2005
Сообщений: 3,704
Провел на форуме: 19975136
Репутация:
4536
|
|
)))))))
а если нет ?
|
|
|

16.04.2008, 17:48
|
|
Leaders of Antichat - Level 4
Регистрация: 02.06.2005
Сообщений: 1,411
Провел на форуме: 10605912
Репутация:
4693
|
|
Сообщение от GreenBear
исис, в том то и дело что они НИЧЕГО сделать не смогут ....
Сам факт того что ты юзаешь jQuery, или любую аяксовую либу, говорит о том, что твой сайт заточен под людей с включеным js. (А на людей с выключеным js ты в принципе забил, равно как и на любителей старых или специфических браузеров)
__________________
Я отдал бы немало за пару крыльев,
Я отдал бы немало за третий глаз
За руку на которой четырнадцать пальцев
Мне нужен для дыхания другой газ..
Мой блог: http://qwazar.ru/.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|