como preguntar por una columna que comienza con una palabra

Rodrigo Fuentealba darkprox en gmail.com
Vie Feb 16 15:54:04 CLST 2007


> Cómo, en los manuales de php igual aparece un ejemplo similar?
> Cómo vamos a saber cuando tenemos un agujero de seguridad?
> :D

Es cosa de sentido común (el menos común de los sentidos). Cada vez
que tú haces dinámicamente una consulta, existe la posibilidad de que
la variable venga viciada con carácteres que no corresponden.

Tienes que pensar en la forma de interactuar de tu sistema.

1.- Las cadenas de texto son peligrosas:

exec($comando) <- ¿qué pasa si es $_GET['comando']?
http://victima.com/pagina.php?comando=rm%20-rf << auch!

2.- Las cadenas de texto son peligrosas:

$passwd = mysql_query("select usuario_rut from usuario where username
= $usuario and password = $password"); <- ¿qué pasa cuando la cadena
$username es "root'; -- " ? Owned!

3.- Las cadenas de texto son peligrosas:

INSERT INTO usuario (nombre) VALUES ('<script
type="text/javascript">alert("OWNED");</script>'); <- ¿qué pasa en
este caso, si tienes algo como "hay 100 usuarios, el último ingresado
es ..."? UGH!

4.- Los comandos que entregan resultados son peligrosos (ver ejemplo 1)

5.- Las consultas SQL demasiado grandes saturan a la máquina...

Varias cosas más, pero digiere esas primero.


-- 
Rodrigo Fuentealba Cartes
Desarrollador de Sistemas Web
Registered User 387639 - http://counter.li.org



Más información sobre la lista de distribución PHP