Zivas
Новичок
Здравствуйте, сделал стандартную форму входа, но с нестандартными названиями полей, для того, чтоб лишить удовольствия хотя бы часть новоиспеченных кульхацкеров, начитавшихся уроков по брутфорсу, начинающийся словами: "Форма входа состоит, как правило, из стандартных полей ввода логина и пароля. Смотрим в коде страницы их название, копируем и в дальнейшем будем напрямую посылать данные обрабатывающему скрипту с помощью прямого POST/GET запроса использую их.". Иначе говоря, скрипт сам формирует названия для этих полей, сохраняет их в сессию, а обработчик потом из сессии достает их и с ними работает, иначе говоря, произвести авторизацию можно только с главной станицы сайта. Да обойти этот метод, вполне, возможно написав брутфорс на JavaScript, но хотя бы часть пакостников он должен отсеять. Дак вот, собственно вопрос: Насколько в реальности данный вид защиты способен выполнить отсеивание хотя бы части нежелательных посетителей? или всё же про данный вариант защиты проще сказать: "Маразм крепчал?". Есть ли более эффективный вариант защиты?
З.Ы. Что уже сделано:
1. Каждому пользователю выдается только автоматически генерированный пароль, состоящий из 6 символов : 2 цифры, 2 латинских буквы разного регистра, и 2 символов из набора("№;%: ит.д.)
2.Допускается 2 попытки ввода пароли без использования капчи, после 2 неверных попыток входа необходимо ввести капчу "recapcha".
3. вот код формы:
З.Ы. Что уже сделано:
1. Каждому пользователю выдается только автоматически генерированный пароль, состоящий из 6 символов : 2 цифры, 2 латинских буквы разного регистра, и 2 символов из набора("№;%: ит.д.)
2.Допускается 2 попытки ввода пароли без использования капчи, после 2 неверных попыток входа необходимо ввести капчу "recapcha".
3. вот код формы:
PHP:
<?php
function gen($name)
{
global $forms;
$simbols=array(1,2,3,4,5,6,7,8,9,0,'a','b','c','d','e','f');
for( $i=0 ; $i<32 ; $i++ )
{
$id=rand(0,16);
$rand_name.=$simbols[$id];
}
$forms[$name]=$rand_name;
return $rand_name;
}
?>
<form action="view.php" method="post" target="_parent">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<thead>
<tr>
<td colspan="2">Вход в систему</td>
</tr>
</thead>
<tbody>
<tr>
<td>Логин:</td>
<td><input type="text" name="<?php echo gen('login'); ?>" size="20" maxlength="50" /></td>
</tr>
<tr>
<td>Пароль:</td>
<td><input type="password" name="<?php echo gen('pass'); ?>" size="20" maxlength="50" /></td>
</tr>
<tr>
<td colspan="2" align="center"><input class="enterBut" type="submit" value="Войти" /></td>
</tr>
</tbody>
</table>
</form>
<?php $_SESSION['forms']=$forms; ?>