PHP - Ayuda con seguridad

   
Vista:

Ayuda con seguridad

Publicado por Ede (1 intervención) el 11/09/2009 14:53:21
Hola gracias a todos los que me estais leyendo a ver si alguien me puede ayudar ya que me han puesto unos ejercicios de PHP que son difíciles y mira que llevo practicando PHP
desde hace años pero ahora me he metido en temas de seguridad y esto ya es TELA TELITA TELA, vamos allá.

Pues bien me piden que haga un script que pueda inscribir infinitos usuarios si en una pagina web se encuentra esto:

<form action=reg.php>
<input name=usuario>
<input name=email>
</form>

Este ejercicio biene a decir la importancia del método de seguridad Captcha ya que para una máquina es imposible de determinar

A primera vista no entiendo muy bien el formulario, ya que no contiene un boton de submit.Pero bueno creo que lo importante es que sabemos la pagina de registro
"reg.php" y sabemos los datos que le vamos a pasar. Yo supongo que el ejercicio tiene esta lectura:

"Haz infinitas peticiones a reg.php".

Bueno yo había pensado en hacerlo por varias partes:

1.- Obtener la dirección física de donde está la página que contiene el formulario, pero nose como hacerlo desde el script( algo tipo $_SERVER['SCRIPT_FILENAME'] pero que me
diera la ruta del formulario)

2.- Una vez tengo la ruta supongo que mediante el DOM acceder al formulario de ahí a los nombres de los campos y a la página reg.php

3.- Despues para hacer las multiples peticiones pues haria un while(1) y ya me lio :(

Venga cualquier cosa que me digais me ayudará es que no se como cogerlo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ayuda con seguridad

Publicado por Diego Romero (1450 intervenciones) el 11/09/2009 23:42:41
A ver si entendí. La idea es usando los datos proporcionados en el formulario atacar la seguridad de reg.php, ¿cierto?.

Pues a primera vista veo que en el form no está especificado qué método HTTP se usará para enviar los datos, por lo tanto se asume GET, entonces es muy facil:

http://www.example.com/reg.php?usuario=basura&email=basura@example.com

Será suficiente para enviar datos a reg.php

Sabiendo esto hace falta hacer una función que genere nombes de usuarios al azar y otra que genere direcciones de correos bien formadas al azar.

Luego hacer algo como:

$request = "http://www.example.com/reg.php?usuario=".$usuario."&email=".$correo;

$fh = fopen("$request","r");
while (!feof($fh) {
$contenido .= fread($fh,512);
}
fclose($fh);
echo $contenido; // muestra el resultado de la conexión.

No lo he probado pero supongo que así funcionaría.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda con seguridad

Publicado por Ede (5 intervenciones) el 11/09/2009 23:51:21
Ok esta forma es mucho mejor a la que que me habían dicho y que al final la hice con CURL:

$ch = curl_init('http://dominio.com/reg.php');
curl_setopt ($ch, CURLOPT_POST, 1);
$i=0;
while(1){
$i++;
$name=$name.$i;
curl_setopt ($ch, CURLOPT_POSTFIELDS, "name=$name&email=$email");
curl_exec ($ch);
}

Muchas Gracias a ver si me puedes ayudar con otras dudas de seguridad ;)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar