Ну ошибок безопасности много:
0) код этот работает только с костылями. Ему необходим включенный register_globals, который с версии 5.3 всегда отключён, т.е. работать не будет. Обращайтесь к пришедшим переменным через массивы $_POST, $_GET, $_COOKIE
1) в 21 строке первого скрипта в базу предаёте чистым текстом данные - пройдёт SQL Injection. Перед записью данный в базу обработайте их с помощью mysql_real_escape_string
2) в том же скрипте вместо email можно послать любой непустой бред, но для стадии обучения - можно пропустить проверку, т.к. в безопасном варианте она бывает весьма хитрой
3) auth.php - выбирать всю таблицу и потом скриптом по ней пробегать - не лучшее решение. К тому же, на каждой итерации пересчитывать md5 пароля...
Хорошим вариантом будет передать и логин и пароль сразу условиями запроса:
и проверить через mysql_num_rows>0 есть ли такой пользователь.
4) в базе из под рута работать - плохой тон, не для того рут предназначен.
|