Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: Hans el Topo en 9 Diciembre 2008, 13:37 pm



Título: función para validar urls
Publicado por: Hans el Topo en 9 Diciembre 2008, 13:37 pm
he estado probando una función para validar urls y me gustaría preguntar si alguien es capaz de encontrar algún tipo de vulnerabilidad

las urls se guardan tal cuál en la base de datos y a la hora de mostrarlas se meten en un enlace <a href="url">cualquier nombre</a>
he probado diferentes ataques y parece ser que funciona, aligual se me ha escapado algo y a alguien se le ocurre algún tipo de vulnerabilidad


Código:
//se le envía una cadena y devuelve true si es url válida o false en caso contrario
function url_valida($url){
static $urlregex = "^(https?|ftp)\:\/\/([a-z0-9+!*(),;?&=\$_.-]+(\:[a-z0-9+!*(),;?&=\$_.-]+)?@)?[a-z0-9+\$_-]+(\.[a-z0-9+\$_-]+)*(\:[0-9]{2,5})?(\/([a-z0-9+\$_-]\.?)+)*\/?(\?[a-z+&\$_.-][a-z0-9;:@/&%=+\$_.-]*)?(#[a-z_.-][a-z0-9+\$_.-]*)?\$";

return eregi($urlregex, $url);

}

Código con colorines y paso a paso (http://www.miblog.indomita.org/2008/12/validar-urls-con-php.html)


Título: Re: función para validar urls
Publicado por: WHK en 16 Diciembre 2008, 03:58 am
podrías usar curl y lanzar una petición GET con un timeout pequeño donde si el header contiene "200 OK" entonces es válido.