.snif
Новичок
Безопасность скрипта (инъекции)
Вобщем я задумался о безопасности, а в часности об мускуль инъекции. Вот к примеру мой скрипт с регистрацией:
В этом скрипте есть уязвиммосте и тут можно спокойно сделать инъекцию. Я слышал что дл ятого что-бы этого не произошло нужно фильтровать символы (' * / и т.д.) Собственно сам вопрос:
Как фильтровать эти символы? И как ещё можно обезопаситься от инъекций?
Вобщем я задумался о безопасности, а в часности об мускуль инъекции. Вот к примеру мой скрипт с регистрацией:
PHP:
<html>
<head>
<title>PHP</title>
</head>
<body bgcolor="gray" text="white">
<br />
<form action="" method="post" align="center">
<pre>
<b>Имя: </b> <input type="text" name="name" size="10"><br />
<b>Логин: </b> <input type="text" name="user" size="10"><br />
<b>E-mail: </b> <input type="text" name="email" size="10"><br />
<b>ICQ: </b> <input type="text" name="icq" size="10"><br />
<b>Пароль: </b> <input type="password" name="pass1" size="10"><br />
<b>Повторите пароль:</b><input type="password" name="pass2" size="10"><br />
<input type="submit" value="Регистрация">
</pre>
</form>
</body>
</html>
<?php
$name = $_POST['name'];
$user = $_POST['user'];
$icq = $_POST['icq'];
$email = $_POST['email'];
$pass1 = $_POST['pass1'];
$pass2 = $_POST['pass2'];
if ($pass1 != $pass2){
echo "<center><b><font color=red>Введённые пароли не совпадают</font></b></center>";
} else {
if (isset ($name) AND ($user) AND ($pass1) AND ($pass2) AND ($email)){
$link = mysql_connect("localhost", "root", "");
mysql_select_db("reg");
if (@mysql_query("INSERT INTO `gb` (name, user, pass, icq, email) VALUES ('$name', '$user', '$pass1', $icq, '$email')")){
echo "<center><b><font color=green>Регистрация успешно завершена</font></b></center>";
} else {
echo "<center><b><font color=red>Ошибка ригестрации</font></b></center>";
}
}
}
mysql_close($link);
Как фильтровать эти символы? И как ещё можно обезопаситься от инъекций?
