Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.58/12: Рейтинг темы: голосов - 12, средняя оценка - 4.58
БТР - мой друг
 Аватар для Hagrael
333 / 277 / 47
Регистрация: 07.01.2010
Сообщений: 1,932

безопасность сайта

23.09.2010, 13:19. Показов 2220. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Кто-нибудь может привести примеры авторизации и проверки куков, которые бы были безопасны?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
23.09.2010, 13:19
Ответы с готовыми решениями:

Безопасность сайта
Приветствую. Стряпаю сайт и заинтересовался тут одним вопросом. делаю его без CMS, без БД, без формы авторизации, т.е. тупо на php -...

Безопасность сайта
Всем привет! Я являюсь новичком в сайтостроении, моя тема диплома звучит так: "Разработка интернет-магазина". Я по видеоурокам...

Безопасность сайта
Здравствуйте! На сайте - в корне и еще одной папке стали появляться левые php файлы(около 2-3 в день). В связи с чем такое может быть? Где...

12
 Аватар для GalaX
701 / 573 / 59
Регистрация: 18.11.2008
Сообщений: 2,147
23.09.2010, 16:55
суть вопроса конечно понял, но вот непонятно что нужно? пример скрипта авторизации? дык тут не пару строк кода будет
1
БТР - мой друг
 Аватар для Hagrael
333 / 277 / 47
Регистрация: 07.01.2010
Сообщений: 1,932
23.09.2010, 17:01  [ТС]
GalaX, ну я надеялся на код, но рад буду услышать также сам принцип работы.
0
 Аватар для GalaX
701 / 573 / 59
Регистрация: 18.11.2008
Сообщений: 2,147
23.09.2010, 17:49
Цитата Сообщение от Hagrael Посмотреть сообщение
GalaX, ну я надеялся на код, но рад буду услышать также сам принцип работы.
подобных скриптов в нете куча валяется, реализованы они по-разному, но принцип остается все тот же, так что не вижу смысла рассказывать как у велосипеда колеса крутятся

насчет безопасности почитай про функцию mysql_real_escape_string() (от sql-инъекций) и htmlspecialchars() или htmlentities() (от xss). в исключительных случаях могут понадобиться исключительные решения (например, регулярки).
при использовании сессий используем почаще session_regenerate_id()
а особенно отмечу то, что никогда ни при каких обстоятельствах не сметь хранить в куках секретные данные (логин, пароль) (даже если они зашифрованны) и вначале каждого скрипта ставить error_reporting(0);

зы: я конечно не все знаю (может че-то пропустил), но это самое основное.
1
БТР - мой друг
 Аватар для Hagrael
333 / 277 / 47
Регистрация: 07.01.2010
Сообщений: 1,932
23.09.2010, 18:18  [ТС]
GalaX, спасибо, про session_regenerate_id() я и вовсе не знал. А почему в куках это хранить так опасно? Ведь на юкозе, да и на маиле так - выключил комп, включил, авто-авторизация происходит (если поставил галочку на "запомнить").
0
 Аватар для GalaX
701 / 573 / 59
Регистрация: 18.11.2008
Сообщений: 2,147
23.09.2010, 18:37
ну если надо запомнить юзверя, то создается кука типа $_COOKIE['store'] (значение этой куки может быть любое, главное сам факт ее присутствия.. или отсутствия)
Цитата Сообщение от Hagrael Посмотреть сообщение
А почему в куках это хранить так опасно?
вот будет у тебя на сайте xss и возьмет кто-нибудь и украдет эти куки
ты потом эту xss-дыру закроешь, а пароли то кому-то известны так и останутся а вдруг среди этих паролей будет админовский? О_о
так что храним там какой-нибудь уник. идентификатор... а при использовании сессий вообще можешь не думать что там в них хранится (ну только случай с "запомнить юзверя" исключение составляет)
1
БТР - мой друг
 Аватар для Hagrael
333 / 277 / 47
Регистрация: 07.01.2010
Сообщений: 1,932
24.09.2010, 09:03  [ТС]
GalaX, так будет допустим присутствовать $_COOKIE['store'], а что она будет содержать и означать-то, если в ней нет ни логина, ни пароля?
P.S.: Куки ведь можно самому сделать, да?
0
 Аватар для old_style
12 / 12 / 0
Регистрация: 16.08.2010
Сообщений: 24
24.09.2010, 16:43
Ну, я ставлю такую куку
PHP
1
2
$_SESSION['SID'] = md5(time().$_SESSION['login']);
setcookie("remember", $_SESSION['SID'],  time()+9999999);
В нее включено текущее время, плюс шифровка через md5. При каждом новом посещении сайта она меняется.
Да, естественно, эта же кука записывается в базу данных. И при заходе пользователя он опознается по ней. И ставится только для тех, кто выбрал "запомнить".
1
БТР - мой друг
 Аватар для Hagrael
333 / 277 / 47
Регистрация: 07.01.2010
Сообщений: 1,932
25.09.2010, 08:30  [ТС]
old_style, я что-то снова не понял. Про "запомнить" это понятно, но вот про логику... в сессии хранится SID, это ID пользователя, причём ID этот случайный. Он записывается в COOKIE и в SESSION и в БД (так ведь?), а далее пользователь определяется по этому ID в сессии, верно? Но подделать куки всё равно можно будет ведь, и злоумышленник сможет войти под его логином и паролем, или я ошибаюсь?
0
 Аватар для old_style
12 / 12 / 0
Регистрация: 16.08.2010
Сообщений: 24
25.09.2010, 13:31
Цитата Сообщение от Hagrael Посмотреть сообщение
Но подделать куки всё равно можно будет ведь, и злоумышленник сможет войти под его логином и паролем, или я ошибаюсь?
Куку можно только стащить с компьютера пользователя из его браузера (где они хранятся, собственно). Но на этот случай ни одна система не спасет - так можно утащить любую. А вот вычислить ее путем подбора практически невозможно (в отличие от логина и пароля). Именно для этого туда вставлено текущее время и md5. Кроме того, даже если стащат - это до первого захода настоящего пользователя на сайт, потому что каждый раз ставится новая кука.
2
БТР - мой друг
 Аватар для Hagrael
333 / 277 / 47
Регистрация: 07.01.2010
Сообщений: 1,932
26.09.2010, 11:52  [ТС]
old_style, ОК, СПС.

Добавлено через 58 секунд
И + если куку такую знаешь, то логин и пароль знать не будешь. И пользователь всегда снова сможет зайти на сайт и пересоздать куку. Я прав?
0
 Аватар для old_style
12 / 12 / 0
Регистрация: 16.08.2010
Сообщений: 24
26.09.2010, 12:06
Цитата Сообщение от Hagrael Посмотреть сообщение
если куку такую знаешь, то логин и пароль знать не будешь. И пользователь всегда снова сможет зайти на сайт и пересоздать куку. Я прав?
Да, конечно. В этом весь смысл хранить в куках не сам логин и пароль.
1
БТР - мой друг
 Аватар для Hagrael
333 / 277 / 47
Регистрация: 07.01.2010
Сообщений: 1,932
26.09.2010, 12:09  [ТС]
Всё, спасибо, разобрался.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
26.09.2010, 12:09
Помогаю со студенческими работами здесь

Безопасность сайта и базы данных
Всем привет. Уже достаточно долго занимаюсь PHP-программированием, за это время у меня разработано множество шаблонов, которые я внедряю...

Безопасность сайта - подбор cookie и соль
1.Здравствйте. Кто бы мог объяснить, пожалуйста, как нужно применять соль - на примере, мануалы php.net я не смог понять. Вот есть crypt...

Безопасность
Здравствуйте. Защитил папку паролем. Там использовалися .htaccess и .htpsswd. При попытке войти в папку такое сообщение, как на...

безопасность
Приветствую. Сначала опишу ситуацию: есть прога на дельфи, которая обменивается шифрованными данными с сайтом. Из проги, через POST...

В о безопасность
Всем доброй вечер подскажите как сделать чтоб золото в минус не уходила например у игрока есть в данный момент 500 а то что он хочет купить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru