Como todos sabemos podemos poner el archivo de conexion a la base de datos en un archivo, y, entonces mandamos a llamarlo y listo Cheesy
Ahora bien, que pasa si antes de hacer la conexion limpiamos todas las variables que pasan por GET o POST (o por cookie)? asi tendremos siempre limpias nuestras variables y evitamos ataques XSS y SQLi Cheesy
El archivo final es este
# Funcion para limpiar caracte-
# res que pudieran comprometer
# al servidor y/o al usuario
function limpia($var){
$var = strip_tags($var);
$malo = array("\\",";","\'","'"); // Aqui poner caracteres no permitidos
$i=0;$o=count($malo);
while($i<=$o){
$var = str_replace($malo[$i],"",$var);
$i++;
}
return $var;
}
# Funcion que aplica la funcion anterior
# para no tener que preocuparnos por
# ataques de XSS o SQLi
function LimpiarTodo($datos){
if(is_array($datos)){
$datos = array_map('limpia',$datos);
}else{
die("Error: La funcion LimpiarTodo debe contener un arreglo.");
}
return $datos;
}
if($_POST){
$_POST =& LimpiarTodo($_POST);
}
if($_GET){
$_GET =& LimpiarTodo($_GET);
}
# FileName="Connection_php_mysql.htm"
# Type="MYSQL"
# HTTP="true"
$hostname_DB = "localhost"; // El host del MySQL
$database_DB = "DataBase"; // Nombre de la base de datos
$username_DB = "usuar10"; // Usuario con l que te conectas
$password_DB = "th3pas5sz"; // Contraseña ñ_ñ
$serpub = mysql_connect($hostname_DB, $username_DB, $password_DB) or trigger_error(mysql_error(),E_USER_ERROR);
mysql_select_db($database_DB);
Ahora solo nos queda insertar ese archivo cuando hacemos alguna operacion en MySQL y listo! nos olvidamos de limpiar las variables una a una para evitar los ataques antes mencionados
Para evitar ataques de RFI entonces en esta linea
$malo = array("\\",";","\'","'"); // Aqui poner caracteres no permitidos
agregamos los dos puntos ( ":" ) y la diagonal ( "/" ) si sabemos que nunca se usaran estos caracteres en los campos de nuestra base de datos
Quedaria asi
Código:
$malo = array("\\",";","\'","'",":","/"); // Aqui poner caracteres no permitidos
y quedamos seguros evitando que nos metan los "caracteres malditos"
1 comentarios:
Publicar un comentario