Foro de elhacker.net

Programación => Programación General => Mensaje iniciado por: Fox_Neo en 15 Junio 2010, 20:34 pm



Título: Que tipo de programación es necesario para....
Publicado por: Fox_Neo en 15 Junio 2010, 20:34 pm
Hola  me gustaría saber como se puede introducir automáticamente valores en  una web  como los típicos nombre y contraseña,  al ejecutar un código (no se que tipo de programación es necesaria :huh:) , algo parecido a la función de recordar contraseña de Firefox o a lo que hace el JDonwloader con los capchas que los pone automáticamente.  Gracias.

Salu2.  


Título: Re: Que tipo de programación es necesario para....
Publicado por: TeKNo dUKe en 15 Junio 2010, 20:46 pm
A ver, si lo que quieres es rellenar formularios hay varias extensiones para firefox o ie que hacen eso, reconocer captchas no es nada facil.



Título: Re: Que tipo de programación es necesario para....
Publicado por: Fox_Neo en 15 Junio 2010, 21:10 pm
Lo que quiero es crear un programa que entre en mi router automáticamente (para eso hay  que poner el usuario y el pass) y una vez dentro que vaya cambiando la MAC del router cada vez que se ejecute, no creo que con una apliación de rellenar formularios  pueda ponerme las direcciones MAC.
reconocer captchas no es nada facil.




No he dicho nada de reconocer los captchas  eso ya intuyo que no es nada fácil, pero a lo que me refería era a como sabe el Jdonwloader  donde introducir las letras.  Espero que ahora me entiendas por qué he puesto el ejemplo del JDonwloader  ;)


Título: Re: Que tipo de programación es necesario para....
Publicado por: TeKNo dUKe en 15 Junio 2010, 21:28 pm
Que interface tiene el router, como entras para cambiar los datos, porque si se hace enviando un formulario desde una web (por ejemplo el mio es asi) es cuestion de hacer un programa que le mande a la direccion local los mismos datos por post.


Título: Re: Que tipo de programación es necesario para....
Publicado por: Fox_Neo en 15 Junio 2010, 22:35 pm
Si es vía web aparece una ventanita y hay que introducir el pass y el nombre
  y ya que mencionas lo de datos Post una vez se me ocurrió cogerlos con el tamperdata de firefox pero no lo supe interpretar  :-\



Título: Re: Que tipo de programación es necesario para....
Publicado por: TeKNo dUKe en 15 Junio 2010, 22:42 pm
Baja el Firebug para Firefox, navega la pantalla de login, ahi vas a tener en el html que buscar los datos del form, el method (para saber como envia la info), los text user y password y fijarte si no envia ningun campo hidden que pueda estar enviando alguna información adicional, y obviamente el action que es donde se va a enviar el formulario. Ya con esos datos puedes hacer un programa en el lenguaje que conozcas que envie por "method" un formulario identico a ese a la direccion donde se envia el formulario de login, o sea, al "action" de ese form.

Si haces esa parte, hacer otros formularios va a ser lo mismo.-



Título: Re: Que tipo de programación es necesario para....
Publicado por: Fox_Neo en 16 Junio 2010, 00:00 am
ok muchas gracias Tekno duke por la respuesta  lo puesto en funcionamiento pero hay un problema no sale el código a la hora de meter el pass y el usuario asi que no puedo pillar los datos:

(http://r.i.elhacker.net/cache?url=http://www.imaxenes.com/mini/dibujo5451gt66ih.jpg) (http://www.imaxenes.com/imagen/dibujo5451gt66ih.jpg.html)
cuando entro si que me aparece el código pero el de la pestaña del router en donde esté, por ejemplo en la pestaña para cmabiar la MAC aparece esto No lo pongo en forma de code porque no entra todo ya que pone tambien los JScript, si es necesario los subo en un archivo de texto):
(http://r.i.elhacker.net/cache?url=http://www.imaxenes.com/mini/dibujo1xw30bb.jpg) (http://www.imaxenes.com/imagen/dibujo1xw30bb.jpg.html)

y esta es la pestaña del cambio de MAC:
(http://r.i.elhacker.net/cache?url=http://www.imaxenes.com/mini/dibujogf1jr970x.jpg) (http://www.imaxenes.com/imagen/dibujogf1jr970x.jpg.html)
 
El TamperData me muestra lo siguiente al aparecer la ventana de introducir el pass y el nombre:

Código:
0:07:17.081[194ms][total 194ms] Estado: 401[Unauthorized]
GET http://192.168.1.1/ Indicadores cargados[VALIDATE_ALWAYS LOAD_DOCUMENT_URI  LOAD_INITIAL_DOCUMENT_URI  ] Tamaño[-1] Tipo Mime[text/html]
   Cabeceras pedidas:
      Host[192.168.1.1]
      User-Agent[Mozilla/5.0 (Windows; U; Windows NT 5.1; es-ES; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3 ( .NET CLR 3.5.30729)]
      Accept[text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8]
      Accept-Language[es-es,es;q=0.8,en-us;q=0.5,en;q=0.3]
      Accept-Encoding[gzip,deflate]
      Accept-Charset[ISO-8859-1,utf-8;q=0.7,*;q=0.7]
      Keep-Alive[115]
      Connection[keep-alive]
      Cache-Control[max-age=0]
   Cabeceras recibidas:
      Server[Apache]
      Pragma[no-cache]
      Cache-Control[max-age=0, must-revalidate]
      Connection[close]
      Content-Type[text/html]
      WWW-Authenticate[Basic realm="WRT120N"]


Título: Re: Que tipo de programación es necesario para....
Publicado por: Fox_Neo en 16 Junio 2010, 23:17 pm
Tekno duke he buscado por goolge y he encontrado un Jcript  que la gente usa para  reiniciar el router, en el code viene una parte que me puede interesar que es la que introduce automáticamente  el pass y el nombre es el siguiente código:
Código
  1. // Configuración
  2.  
  3. URL_DESCONECTAR="http://IPDELROUTER/status.cgi";
  4. ContentTypeDesconectar="application/x-www-form-urlencoded";
  5. ContentLengthDesconectar="33";
  6. POSTDATADesconectar="release=Desconexi%F3n&ctype=pppoe";
  7.  
  8. URL_CONECTAR="http://192.168.1.1/status.cgi";
  9. ContentTypeConectar="application/x-www-form-urlencoded";
  10. ContentLengthConectar="27";
  11. POSTDATAConectar="renew=+Conecte+&ctype=pppoe";
  12.  
  13. admin="modificarEsto";
  14. pass="modificarEsto";
  15.  
  16. // Fin de la parte de configuración
  17.  
  18. var WinHttpReq = new ActiveXObject("WinHttp.WinHttpRequest.5.1");
  19.  
  20. function send(URL_POST,CT,CL,CD)
  21. {
  22.  HTTPREQUEST_SETCREDENTIALS_FOR_SERVER = 0;
  23.  
  24.  WinHttpReq.open( "POST", URL_POST , false );
  25.  
  26.  // No cambiar la palabra "modificarEsto" en las líneas que siguen, porque se usan para saber si
  27.  // has ingresado user y password en la parte de configuración de mas arriba.
  28.  if (admin!="modificarEsto" || pass!="modificarEsto")
  29.  {
  30. WinHttpReq.SetCredentials( admin, pass, HTTPREQUEST_SETCREDENTIALS_FOR_SERVER);
  31.  }
  32.  WinHttpReq.SetRequestHeader("Content-Type", CT);
  33.  WinHttpReq.SetRequestHeader("Content-Length", CL);
  34.  
  35.  WinHttpReq.send(CD);
  36. };
  37.  
  38. function conectar()
  39. {
  40. send(URL_CONECTAR,ContentTypeConectar,ContentLengthConectar,POSTDATAConectar)
  41. };
  42.  
  43. function desconectar()
  44. {
  45. send(URL_DESCONECTAR,ContentTypeDesconectar,ContentLengthDesconectar,POSTDATADesconectar)
  46. };
  47.  
  48. desconectar(); //Enviamos desconectar
  49. WScript.Sleep(10000); // esperamos 10 seg
  50.  
  51. conectar(); //Enviamos conectar
  52. WScript.Sleep(1000);  // esperamos 1 seg
  53.  
  54. conectar(); // conectar de nuevo, por las dudas???
  55. WScript.Sleep(1000);
  56.  
  57. conectar();
  58. WScript.Sleep(1000);
 

Lo he modificado para  ver si me podía servir, he de mencionar que no se programación Jscript, lo siguiente lo he hecho por intuición pero no funciona   :¬¬

Código
  1. URL_CONECTAR="http://192.168.1.1/status.cgi";
  2. admin="mi usuario";
  3. pass="mi contraseña";
  4.  
  5. // Fin de la parte de configuración
  6.  
  7. var WinHttpReq = new ActiveXObject("WinHttp.WinHttpRequest.5.1");
  8.  
  9. function send(URL_POST,CT,CL,CD)
  10. {
  11.  HTTPREQUEST_SETCREDENTIALS_FOR_SERVER = 0;
  12.  
  13.  WinHttpReq.open( "POST", URL_POST , false );
  14.  
  15.  // El if lo he quitado porque no tiene que comprobrar que está introducido porque lo pongo directamente en las variables.
  16.  //
  17.  
  18.   WinHttpReq.SetCredentials( admin, pass, HTTPREQUEST_SETCREDENTIALS_FOR_SERVER);
  19.   WinHttpReq.SetRequestHeader("Content-Type", CT);
  20.  WinHttpReq.SetRequestHeader("Content-Length", CL);
  21.  
  22.  WinHttpReq.send(CD);
  23. };

Alguna sugerencia??

Pd: El js le ejecuto con un bat  guardado en la misma carpeta que el code.
Código:
wscript Abrirrouter.js