Авторизация php

12 3
chemax
На сайте с 07.01.2009
Offline
206
1973

Доброго утра, не подскажете статьи, о безопасной авторизации на php. Если есть какие то уловки, тоже напишите.

P.S. Прочитал не мало статей, но не знаю какая из них поможет сделать безопаснее.

Качественный хостинг, VPS и сервера. (http://ihc.ru/?ref=569)
kxk
На сайте с 30.01.2005
Offline
990
kxk
#1

chemax, Ломаеться всё :) Но от школьнегов спасает обычно:

1) Шифрация пароля в md5+соль

2) Защита форм от sql

3) Автобан фаиром или скриптом после 3-5 неверных попыток ввода пароля :)

Ваш DEVOPS
chemax
На сайте с 07.01.2009
Offline
206
#2
kxk:
chemax, Ломаеться всё :) Но от школьнегов спасает обычно:
1) Шифрация пароля в md5+соль
2) Защита форм от sql
3) Автобан фаиром или скриптом после 3-5 неверных попыток ввода пароля :)

да я не знаю как с кукисами быть. в них сохранять хэш пароля и логин?

LEOnidUKG
На сайте с 25.11.2006
Offline
1774
#3
chemax:
да я не знаю как с кукисами быть. в них сохранять хэш пароля и логин?

Какие кукисы? Вы вообще какие статьи читали?

В кукисах только номер сессии храниться и всё.

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
Николай В.
На сайте с 07.09.2006
Offline
62
#4

Возьмите готовую авторизацию из Zend Framework. Лучше вы не напишите.

По поводу теории: PHP5 для профессионалов, глава «Безопасность сеанса».

P2
На сайте с 31.12.2008
Offline
35
#5

вот вроде неплохая авторизация

http://pyha.ru/articles/php/auth/

kxk
На сайте с 30.01.2005
Offline
990
kxk
#6

pasha220992, Дерьмовый пример нет защиты от брута и проверки входящих данных

chemax
На сайте с 07.01.2009
Offline
206
#7

вопрос еще.

у меня в индекс.пхп я подключаю файл логин.пхп/ каждый раз при обновление страницы делать запрос к бд и проверять данные?

T.R.O.N
На сайте с 18.05.2004
Offline
314
#8
chemax:
вопрос еще.
у меня в индекс.пхп я подключаю файл логин.пхп/ каждый раз при обновление страницы делать запрос к бд и проверять данные?

Вам же уже ответили! Вы знаете что такое сессия?

От воздержания пока никто не умер. Хотя никто и не родился! Prototype.js был написан теми, кто не знает JavaScript, для тех, кто не знает JavaScript (Richard Cornford)
denex
На сайте с 29.04.2009
Offline
7
#9

Уважаемый ТС, советую почитать Вам следующее:

http://ru.php.net/manual/ru/book.session.php — непосредственно по сессиям (необходимо для нормальной авторизации).

Прочитайте стандартную информацию, а не статьи.

Создание Интернет-проектов любой сложности (социальные сети, медиа-порталы, сайты-визитки, Интернет-магазины, CMS и т.д.) (http://www.tyurin.net)
chemax
На сайте с 07.01.2009
Offline
206
#10

вот что получилось. с позиции безопасности конечно фигово. но это все добавится. пока не использовал md5, тк пока только тестил. хотел бы узнать нормальна ли сама логика?

Форма входа и приветствия всякие


$login='
<form action="'.$_SERVER['PHP_SELF'].'?do=login" method="post">
Имя посетителя:<br/>
<input type=text name="name" value="'.$_SESSION['user'].'"><br/>
Пароль:<br/>
<input type=password name=password value="'.$_SESSION['password'].'"><br/>
<input type=submit value="Отправить">
<input type=hidden name=session_id value='.session_id().'>
</form>';

if(isset($_SESSION['user']))
{$login='Здравствуйте, '.$_SESSION['user'].'!';}

Обработка формы логина


if($_POST['session_id'] != session_id()){exit("Попытка взлома.");}

$sql = @mysql_query("SELECT * FROM `users` WHERE `password` = '$_POST[password]' AND name='$_POST[name]'");

if(!$sql) $content='Ошибка выполнения запроса';

if (mysql_num_rows ($sql) > 0){

if(session_start()){
$_SESSION['user'] = $_POST['name'];
$_SESSION['password'] = $_POST['pass'];}
else $content='Ошибка идентификации: неправильный пароль';}
else $content='Ошибка идентификации: посетитель не зарегистрирован';

chemax добавил 03.07.2009 в 13:10

LEOnidUKG:
Какие кукисы? Вы вообще какие статьи читали?
В кукисах только номер сессии храниться и всё.

а как же вконтакте? там в кукисах пароль и логин

12 3

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий