Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Легкая авторизация в администраторскую [2]

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): « 1 [2]   

> Без описания
illy
Отправлено: 28 Января, 2012 - 10:41:37
Post Id



Участник


Покинул форум
Сообщений всего: 1117
Дата рег-ции: Июль 2011  
Откуда: от верблюда)


Помог: 28 раз(а)




а я сам себя учил Ха-ха
event ещё не помешала бы защита от взлома


-----
Всё гениальное - просто
И ещё проще, если ты - индиго
 
 Top
event
Отправлено: 28 Января, 2012 - 15:54:45
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




Что-то мне не верится что на целом форуме разработчиков, никто никогда не делал легенькую авторизацию в админку.
 
 Top
n1k86
Отправлено: 28 Января, 2012 - 16:15:07
Post Id


Частый гость


Покинул форум
Сообщений всего: 160
Дата рег-ции: Март 2011  


Помог: 0 раз(а)




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

PHP:
скопировать код в буфер обмена
  1.  
  2. // Если пользователь не авторизовался - авторизуемся
  3.   if(!isset($_SERVER['PHP_AUTH_USER']) || (!empty($_GET['logout']) && $_SERVER['PHP_AUTH_USER'] == $_GET['logout']))
  4.   {
  5.     Header("WWW-Authenticate: Basic realm=\"Control Page\"");
  6.     Header("HTTP/1.0 401 Unauthorized");
  7.     exit();
  8.   }
  9.   else
  10.   {
  11.     // Утюжим переменные $_SERVER['PHP_AUTH_USER'] и $_SERVER['PHP_AUTH_PW'],
  12.     // чтобы мышь не проскочила
  13.     if (!get_magic_quotes_gpc())
  14.     {
  15.       $_SERVER['PHP_AUTH_USER'] = mysql_escape_string($_SERVER['PHP_AUTH_USER']);
  16.       $_SERVER['PHP_AUTH_PW']   = mysql_escape_string($_SERVER['PHP_AUTH_PW']);
  17.     }
  18.    
  19.     $query = "SELECT * FROM $tbl_accounts
  20.              WHERE name = '".$_SERVER['PHP_AUTH_USER']."'";
  21.     $lst = @mysql_query($query);
  22.     // Если ошибка в SQL-запросе - выдаём окно
  23.     if(!$lst)
  24.     {
  25.       Header("WWW-Authenticate: Basic realm=\"Control Page\"");
  26.       Header("HTTP/1.0 401 Unauthorized");
  27.       exit();
  28.     }
  29.     // Если такого пользователя нет - выдаём окно
  30.     if(mysql_num_rows($lst) == 0)
  31.     {
  32.       Header("WWW-Authenticate: Basic realm=\"Control Page\"");
  33.       Header("HTTP/1.0 401 Unauthorized");
  34.       exit();
  35.     }
  36.     // Если все проверки пройдены, сравниваем хэши паролей
  37.     $account = @mysql_fetch_array($lst);
  38.     if(md5($_SERVER['PHP_AUTH_PW']) != $account['pass'])
  39.     {
  40.       Header("WWW-Authenticate: Basic realm=\"Control Page\"");
  41.       Header("HTTP/1.0 401 Unauthorized");
  42.       exit();
  43.     }
  44.   }
  45.  

(Добавление)
держи название таблицы в переменной $tbl_accounts
---------------------
Код не мой. У друга затырил.
 
 Top
event
Отправлено: 28 Января, 2012 - 17:54:54
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




n1k86
lock.php aka Евгений Попов.

Вот, похожая авторизация тут: http://bit-torrent[dot]kiev[dot]ua/arol_[dot][dot][dot]ndex[dot]html?t=7238 , пост номер #16.

Тут так-же можно обойти?
 
 Top
event
Отправлено: 28 Января, 2012 - 20:57:53
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




Чего не кто не знает?
 
 Top
sKaa
Отправлено: 28 Января, 2012 - 21:20:14
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 979
Дата рег-ции: Окт. 2011  
Откуда: Россия г. Нижний Новгород


Помог: 25 раз(а)

[+]


event пишет:
Чего не кто не знает?

Да все всё знают, никто за тебя ниче делать не будет. Пока ты сам не включишь ум и не попытаешься хоть что-то сделать.
 
 Top
event
Отправлено: 28 Января, 2012 - 22:24:23
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




Почитай пару постов выше.
 
 Top
sKaa
Отправлено: 28 Января, 2012 - 23:52:22
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 979
Дата рег-ции: Окт. 2011  
Откуда: Россия г. Нижний Новгород


Помог: 25 раз(а)

[+]


Если вопрос можно ли украсить куки, то ответ -да. Если вопрос спасет ли это если делать через сессии, то ответ - нет.
 
 Top
etoYA
Отправлено: 28 Января, 2012 - 23:57:10
Post Id



Участник


Покинул форум
Сообщений всего: 1859
Дата рег-ции: Июль 2011  
Откуда: Крым


Помог: 21 раз(а)




event, держи пароль в md5, тогда и куки не спасут(если пароль нормальный).
 
 Top
Страниц (2): « 1 [2]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB