0 / 0 / 0
Регистрация: 06.09.2012
Сообщений: 9
|
|||||||||||||||||||||
1 | |||||||||||||||||||||
Проверка на дырки, мой первый работоспособный скрипт регистрации и авторизации11.09.2012, 11:42. Показов 3421. Ответов 23
Метки нет (Все метки)
Привет всем. Значит так, я новичок во всем этом(программирование).
Я написал скрипт авторизации и регистрации. Вот интересно в нем много дырок? И вообще как определить где есть дырки а где нету? И если можно пару примеров по защите. вот собственно сам скрипт Кликните здесь для просмотра всего текста
index.php Кликните здесь для просмотра всего текста
страница регистрации reg.php Кликните здесь для просмотра всего текста
Подключение к бд conf.php Кликните здесь для просмотра всего текста
собственно md5My.gmg(.txt) Кликните здесь для просмотра всего текста
0
|
11.09.2012, 11:42 | |
Ответы с готовыми решениями:
23
Скрипт регистрации и авторизации Нужен скрипт регистрации и авторизации с проверкой Есть php скрипт регистрации и авторизации, как создать защищённые страницы грамотная проверка регистрации и авторизации? (php + mysql + jq) |
2432 / 2282 / 594
Регистрация: 27.05.2011
Сообщений: 7,801
|
||||||
11.09.2012, 12:17 | 2 | |||||
начнем сразу с 1ого файла :
далее идет ансет , а если ент такой переменной - ошибка ?
в общем недочетом много... Добавлено через 1 минуту п.с. если уж и решили свой мд5 делать то почитайте про фунцкцию strtr(); - куда проще чем 100 реплейсов
0
|
Почетный модератор
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||||||
11.09.2012, 12:36 | 3 | |||||
1. зачем извлекать записи (да еще и * - все записи) если можно подсчитать число таких пользователей - используйте COUNT MySQL
2. вы уверены что htmlspecialchars вас спасет от инъекции? наберите в логине ' or 1=1 LIMIT 1 --' а пароль любой Это касательно первого файла.. Добавлено через 6 минут
0
|
Почетный модератор
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|
11.09.2012, 12:40 | 5 |
есть тип поля email
Добавлено через 46 секунд в регистрации тоже самое, что и в авторизации - зачем извлекать все записи Добавлено через 52 секунды сначала проверяете регулярками и на пустоту, затем очищаете. а если я случайно в конце или начале логина ввел пробел? Добавлено через 35 секунд eregi устаревшие, используйте preg_match
0
|
0 / 0 / 0
Регистрация: 06.09.2012
Сообщений: 9
|
||||||||||||||||||||||||||
11.09.2012, 13:08 [ТС] | 7 | |||||||||||||||||||||||||
а в чем разница?
хм мало в этом понимаю, можно примерчик какой нить? а как лучше спастись? просто предосторожность я заменил на такое извлечение в регистрации
ну я подумал что заново введешь ну щас вставил
Кликните здесь для просмотра всего текста
Главная страница.
0
|
Почетный модератор
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|||||||||||
11.09.2012, 13:19 | 8 | ||||||||||
скрытый текст
а это что может надо
Не переменную очищать, а полученные данные сначала очистить - а затем уже проверять на пустоту. если я введу один пробел, то получу ошибку не о том, что пустой логин, а о неверном формате это будет работать только при register_globals = on mysql_real_escape_string() странно. сначала шифруете, зачем в html-сущности, зачем очищаете от пробелов по краям
0
|
0 / 0 / 0
Регистрация: 06.09.2012
Сообщений: 9
|
||||||||||||||||
11.09.2012, 13:44 [ТС] | 9 | |||||||||||||||
так вроде все подправил вот что у меня вышло
index.php - авторизация
0
|
Почетный модератор
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||||||
11.09.2012, 13:58 | 10 | |||||
скрытый текст
1. не нужно переобозначать глобальный массив
а пароль и email кто будет mysql_real_escape_string() обрабатывать? Добавлено через 2 минуты а на это ошибок про заголовки не вылетает? Добавлено через 1 минуту зачем одно действие заключать в фигурные скобки? Добавлено через 54 секунды а если запрос не пройдет? Добавлено через 2 минуты не лучше ли вместо этого проверять - если есть сессия и не пустая, то отображать приветствие, если нету - отображать форму авторизации
0
|
0 / 0 / 0
Регистрация: 06.09.2012
Сообщений: 9
|
|||||||||||||||||||||
11.09.2012, 14:03 [ТС] | 11 | ||||||||||||||||||||
Как то не до понял
вот это: переправил на это:
на это
Кликните здесь для просмотра всего текста
0
|
Почетный модератор
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|||||||||||
11.09.2012, 14:09 | 12 | ||||||||||
вам нравится когда каждое действие расписано на новой строчке? почему бы сразу не сделать как я написал? На 4 строчки код уже сократится, при такой же читабельности
и htmlspecialchars туда же можно, еще минус 4 строчки Добавлено через 1 минуту isset поддерживает несколько аргументов
1
|
0 / 0 / 0
Регистрация: 06.09.2012
Сообщений: 9
|
|
11.09.2012, 14:09 [ТС] | 13 |
Оу... Сори не до понял Так это поправлю, а вот что по части дырок? СПАСИБО ЗА ПОМОЩЬ... ЗА ЧАС СТОЛЬКО НОВОГО УЗНАЛ Не по теме: Эм а как '+' ставить, спасибо говорить ну или репу повышать?
0
|
Почетный модератор
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||||||
11.09.2012, 14:15 | 14 | |||||
1. то есть логин вида First_name не катит? регулярку можно сократить, модификатор i
Добавлено через 45 секунд зачем!? Добавлено через 2 минуты 1. еще есть такая хорошая вещь, как магические кавычки. Если они включены - то нужно очистить от слэшей перед использованием *escape_string()
Добавлено через 2 минуты
1
|
0 / 0 / 0
Регистрация: 06.09.2012
Сообщений: 9
|
|
11.09.2012, 14:16 [ТС] | 15 |
Эм как понять? я с этими регулярными выражениями почти не знаком.!
честно тоже думал... и решил поставить в качестве лишней предорсторожности!
0
|
Почетный модератор
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|
11.09.2012, 14:31 | 16 |
это для безопасного запроса - а у вас она в запросе не используется. более того, ее можно даже не очищать вообще (только от пробела) - сравнил: сходится - идем дальше, нет - ошибка, и больше она уже не нужна будет вообще.
в регулярке можно и длину сразу проверять. Если по простому то как то так Код
/^[^_][_A-z0-9]{3,15}+$/i
0
|
0 / 0 / 0
Регистрация: 06.09.2012
Сообщений: 9
|
||||||
11.09.2012, 14:33 [ТС] | 17 | |||||
Код
get_magic_quotes_gpc
Не по теме: Блин не могу с компа сойти, но время не бесконечно, ушел на работу, буду завтра, продолжу работу по правке:)
0
|
Почетный модератор
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|
11.09.2012, 14:35 | 18 |
она просто проверяет, включена ли директива magic_quotes_gpc ( т.н. "магические (или волшебные) кавычки" ) в php.ini. А если она включена - то пых при отправке данных сам добавляет экранирование к символам, а нам это не нужно.
0
|
270 / 226 / 11
Регистрация: 20.04.2012
Сообщений: 817
|
||||||
11.09.2012, 15:37 | 20 | |||||
с логином так тоже незачем.
Добавлено через 2 минуты http://phpfaq.ru/slashes Добавлено через 2 минуты
Добавлено через 1 минуту
0
|
11.09.2012, 15:37 | |
11.09.2012, 15:37 | |
Помогаю со студенческими работами здесь
20
MVC - мой первый скрипт, оцените/исправьте/добавьте/прокомментируйте Скрипт регистрации(проверка зарегистрированных юзеров) Создание регистрации и аутентификации spring. Логика регистрации и авторизации Регистрации и авторизации Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |