Ver Mensaje Individual
  #7 (permalink)  
Antiguo 18/12/2007, 09:37
Avatar de dopon
dopon
 
Fecha de Ingreso: julio-2005
Ubicación: Cucuta / Colombia
Mensajes: 493
Antigüedad: 19 años, 4 meses
Puntos: 1
Re: Reto para los expertos: leer esta url desde php

Cita:
Iniciado por Keysher Ver Mensaje
Puede que hackear no sea el término más adecuado, pero la idea es la misma, es saltarse una protección que ha impuesto quien ha creado la página. Si yo tengo una web a la que sólo permito a usuarios registrados y viene una persona, se programa una aplicación con PHP y curl para que meta un usuario y password en mi página y muestre el contenido privado en su página, cómo lo llamarías?

Está claro que ahí el que se tendría que poner las pilas sería yo para hacer una aplicación inmune a esto, pero el que yo no haya hecho bien mi trabajo no exime de que lo que la otra persona está haciendo sea censurable.
Lo que esta implementadoe suna proteccion, pero no una proteccion contra consultas externas automatizadas sino una proteccion para mostrar datos a usarios no registrados, si el ya es registrado no veo el problema, si lo que desean hacer es evitar la consulta automatizada debieron haber implementado un Captcha, cosa que no esta implementada debido a lo cual no consiento tu respuesta.

El codigo Funcional y testeado esta aqui :

Código PHP:
<?php

function conectar($us,$pwd)
{
$ch curl_init();
curl_setopt($chCURLOPT_COOKIEJAR"listin");
curl_setopt($chCURLOPT_URL,"http://www.listin.com/cgi-bin/entrar.cgi");
curl_setopt($chCURLOPT_POST1);
curl_setopt($chCURLOPT_POSTFIELDS"email=".$us."&pwd=".$pwd."&aceptar.x=40&aceptar.y=9");
ob_start();
curl_exec ($ch);
ob_end_clean();
curl_close ($ch);
unset(
$ch);

}

function 
ver($url)
{
    
$agent "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)";
    
$ch curl_init($url);
    
curl_setopt($ch,     CURLOPT_RETURNTRANSFER1);
    
curl_setopt($ch,     CURLOPT_VERBOSE1);
    
curl_setopt($ch,     CURLOPT_USERAGENT$agent);
    
curl_setopt ($chCURLOPT_HEADER0);
    
curl_setopt($ch,     CURLOPT_FOLLOWLOCATION1);
    
curl_setopt($ch,     CURLOPT_COOKIEJAR"listin");
    
curl_setopt($ch,     CURLOPT_COOKIEFILE"listin");

   
$tmp curl_exec ($ch);
    
curl_close ($ch);
    return 
$tmp;

}
$email_login="[email protected]"//usuario de listin
$clave_login="clave"//clave de tu usuario
conectar($email_login,$clave_login); //con esto te conectas
echo ver("http://www.listin.com/cgi-bin/bavanzada.cgi?que=personas2&codigo=1"); //muestra el contenido de la pagina solicitada que requiere autenticacion

?>