¿Sería una buena forma de evitar SQLi?

Iniciado por javirk, 11 Febrero 2012, 12:03 PM

0 Miembros y 1 Visitante están viendo este tema.

javirk

Hola, pues eso, que se me ha ocurrido una forma de evitar el SQLi, puede ser una ***** que no sirve para nada, pero no sé, a lo mejor es factible, a ver lo que pensáis...
Código (php) [Seleccionar]
<?php
$entra 
$_GET['entra];
$malo = "'"; //Esta es la comilla que no nos gusta
if(strpos(
$entra$malo)==false){
//No lo contiene, se puede continuar...
}else{
//lo contiene
echo "
No hay que poner comillas en la barra de arriba...";
}
?>




¿Sería esto factible? ¿Podría funcionar? No lo he probado.

Un saludo

‭lipman

No estoy totalmente seguro, pero hay más formas de meter comillas que esa, al menos en otros sistemas, por eso no sé si en SQL también se podrá, yo creo que si, que dependerá de la codificación o algo.

El caso es que puedes hacer alusión a los caracteres de la siguiente forma \uXXXX siendo X un número, y claro, eso simboliza un caracter. Por lo que puedes simbolizar una comilla, y luego el sistema la reconocerá. Lo que yo no sé seguro es si reconoce la comilla o reconoce el \uXXXX

De todas formas, también tengo constancia de que existe en SQL la función CHR, y puedes hacer lo mismo que he dicho. No hará falta que la explique puesto que si conoces PHP, en este lenguaje también la tenemos.

Un saludo!

BlackZeroX

prueba esto:

http://foro.elhacker.net/php/problema_cuando_mysqlrealescapestring_guarda_las_comillas-t351704.0.html;msg1711928#msg1711928

En el hilo hay mas formas seguramente pero te pongo directamente a mi post debido a que es la que me funciona de manera segura y es la que uso actualmente.

Dulces Lunas!¡.
The Dark Shadow is my passion.

el-brujo

#3