elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
28 Mayo 2012, 13:18  


Tema destacado: Grupo de Facebook de elhacker.net

+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP
| | | |-+  Error 403 ¿Posible SQli?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Error 403 ¿Posible SQli?  (Leído 1,230 veces)
dimitrix


Desconectado Desconectado

Mensajes: 4.059



Ver Perfil WWW
Error 403 ¿Posible SQli?
« en: 2 Julio 2011, 17:14 »

Vamos a ver, estoy desarollando una aplicación y hay una variable GET que la uso para usa consulta SQL.

http://www.todojuegos.com/pcontrol/?accion=changever&idcli=1

Siempre limpio las variables antes de meterlas en las sentencias, pero me pasa una cosa muy rara.

Si pongo por ejemplo:
&idcli=1 // Y existe me dice que todo ok
&idcli=1211 // Error: No existe o no pertenece

Ataques:
&idcli="> // Error: No existe o no pertenece
&idcli='OR // Error: No existe o no pertenece
&idcli=% // AQUÍ LO RARO

Al poner % me sale:

Citar
Error 403
Forbidden
You don't have permission to access /pcontrol/ on this server.

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
Apache/1.3.41 Server at www.todojuegos.com Port 80

Y no me mola no poder controlar ese error.

Para limpiar la variable en una sentencia SQL uso este:
mysql_real_escape_string($idcli)

Gracias :-)


En línea




Spider-Net


Desconectado Desconectado

Mensajes: 1.052


Un gran poder conlleva una gran responsabilidad


Ver Perfil WWW
Re: Error 403 ¿Posible SQli?
« Respuesta #1 en: 2 Julio 2011, 17:22 »

Podrías usar una función como esta, que limpiaría de la cadena cualquier caracter que no sea alfanumérico, evitando ese problema:

Código
function alfanumeric($string){
$string=ereg_replace("[^A-Za-z0-9]", "", $string);
return $string;
}


En línea

"Si cuando hablas nadie se molesta, eso es que no has dicho absolutamente nada."
dimitrix


Desconectado Desconectado

Mensajes: 4.059



Ver Perfil WWW
Re: Error 403 ¿Posible SQli?
« Respuesta #2 en: 2 Julio 2011, 17:29 »

El problema de eso es que haber si va a eliminar algo que no 'deba'.

Aunque muchos son numéricos (y en ocasiones fueron con un INT para que no me pase nada), quizás necesite poner por ejemplo un email y ya no funcionaría.

También me gustaría entender el error ¿Por qué sucede?.
En línea




madpitbull_99
Moderador Global
***
Desconectado Desconectado

Mensajes: 1.898



Ver Perfil WWW
Re: Error 403 ¿Posible SQli?
« Respuesta #3 en: 2 Julio 2011, 18:04 »

Si tienes el mod_security para Apache es muy probable que sea eso.
En línea



«Si quieres la paz prepárate para la guerra» Flavius Vegetius

[Taller]Instalación/Configuración y Teoría de Servicios en Red
dimitrix


Desconectado Desconectado

Mensajes: 4.059



Ver Perfil WWW
Re: Error 403 ¿Posible SQli?
« Respuesta #4 en: 2 Julio 2011, 19:03 »

Si tienes el mod_security para Apache es muy probable que sea eso.


Estoy haciendo las pruebas en un hosting 'del palo' ¿Hay alguna forma de saberlo? Tiene cPanel.

PD: Gracias.
En línea




madpitbull_99
Moderador Global
***
Desconectado Desconectado

Mensajes: 1.898



Ver Perfil WWW
Re: Error 403 ¿Posible SQli?
« Respuesta #5 en: 2 Julio 2011, 19:15 »

En la información de phpinfo() creo que debería salir.
En línea



«Si quieres la paz prepárate para la guerra» Flavius Vegetius

[Taller]Instalación/Configuración y Teoría de Servicios en Red
Spider-Net


Desconectado Desconectado

Mensajes: 1.052


Un gran poder conlleva una gran responsabilidad


Ver Perfil WWW
Re: Error 403 ¿Posible SQli?
« Respuesta #6 en: 3 Julio 2011, 07:11 »

El problema de eso es que haber si va a eliminar algo que no 'deba'.

Aunque muchos son numéricos (y en ocasiones fueron con un INT para que no me pase nada), quizás necesite poner por ejemplo un email y ya no funcionaría.

También me gustaría entender el error ¿Por qué sucede?.

Si quieres que acepte emails es tan fácil como hacer la función así:
Código
function alfanumeric($string){
$string=ereg_replace("[^A-Za-z0-9@._]", "", $string);
return $string;
}
 

Me parece que te estás complicando más de la cuenta, para un error que puede tener una solución extremadamente fácil.
En línea

"Si cuando hablas nadie se molesta, eso es que no has dicho absolutamente nada."
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines