elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Como sacar una IP, CODE
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Como sacar una IP, CODE  (Leído 2,153 veces)
Garfield07


Desconectado Desconectado

Mensajes: 1.121


¡Este año voy a por todas! JMJ 2011


Ver Perfil WWW
Como sacar una IP, CODE
« en: 17 Julio 2010, 12:58 pm »

Bueno, el otro dia postee en el subforo de Messenger, Chats... k como le sacaba la IP "real" a la victima pues la k aparecia en REAL IP, o algo asi, no era la buena...
pues aparte de k si es la buena, se me ocurrio otro metodo + eficaz xD

escribi un programa en C k esperase coenxiones en un puerto a indicar, y lo registrase todo en un archivo.
pues bien, lo k hice fue hacer kill al apache y lo puse en el p 80. le pase mi ip y le dije: "Conectate aki, ya veras... etc."
se conecta y queda registrada la Ip de la victima, con muxa mas info del ordenata destino.

si alguien kiere aplicar la idea, aki les dejo el code xD
Código
  1. #include <sys/socket.h>
  2. #include <arpa/inet.h>
  3.  
  4. #include <stdio.h>
  5. #include <stdlib.h>
  6. #include <string.h>
  7.  
  8. #include <signal.h>
  9. #include <time.h>
  10.  
  11. int socketfd, newsocket;
  12.  
  13. void shutup (int signal)
  14. {
  15. FILE *log;
  16. log=fopen ("/var/log/smallserver.log", "a+");
  17. times ();
  18. fprintf (log, "Shutting down...\n\n");
  19. close (newsocket);
  20. close (socketfd);
  21. exit (0);
  22. }
  23.  
  24. int times ()
  25. {
  26. FILE *log;
  27. time_t now=time (0);
  28. struct tm *ahora;
  29. char buffer [40];
  30. ahora=localtime ((const time_t*)&now);
  31. strftime (buffer, 40, "%d/%m/%Y %H:%M:%S" , ahora);
  32. log=fopen ("/var/log/smallserver.log", "a+");
  33. fprintf (log,"%s   ", buffer);
  34. return 0;
  35. }
  36.  
  37. int main (int argc, char *argv [])
  38. {
  39. if (getuid()!=0)
  40. {
  41. printf ("This proccess must be run by root.\n\n");
  42. return 1;
  43. }
  44. if (argc!=2)
  45. {
  46. printf ("Error:\nUse: %s <PORT>\n\n", argv [0]);
  47. return 1;
  48. }
  49. int cont;
  50. FILE *log;
  51. struct sockaddr_in client, host;
  52. char buffer [1024];
  53. int size=sizeof (client);
  54.  
  55. socketfd=socket (2, 1 ,  0);
  56. host.sin_family=AF_INET;
  57. host.sin_port=htons (atoi (argv [1]));
  58. host.sin_addr.s_addr=0;
  59. bind (socketfd, (struct sockaddr*)&host, sizeof (struct sockaddr));
  60.  
  61. listen (socketfd, 3);
  62.  
  63. log=fopen ("/var/log/smallserver.log", "a+");
  64. times ();
  65. fprintf (log, "Starting up...\n\n");
  66.  
  67. signal (SIGTERM, shutup);
  68. signal (SIGINT, shutup);
  69.  
  70. printf ("Forking process...");
  71. daemon (1, 0);
  72.  
  73. while (1)
  74. {
  75. newsocket=accept (socketfd, (struct sockaddr*)&client, &size);
  76.  
  77. log=fopen ("/var/log/smallserver.log", "a+");
  78. times ();
  79. fprintf (log, "Got connection from %s:%d\n", inet_ntoa (client.sin_addr), ntohs (client.sin_port));
  80.  
  81. cont=recv (newsocket, &buffer, 1024, 0);
  82. while (cont>2)
  83. {
  84. printf ("%d", cont);
  85. log=fopen ("/var/log/smallserver.log", "a+");
  86. times ();
  87. buffer [cont-1]='\0';
  88. fprintf (log, "RECV %d bytes: %s \n", cont-2, buffer);
  89.  
  90. cont=recv (newsocket, &buffer, 1024, 0);
  91. }
  92. log=fopen ("/var/log/smallserver.log", "a+");
  93. times ();
  94. fprintf (log, "Finishing connection from %s:%d\n\n", inet_ntoa (client.sin_addr), ntohs (client.sin_port));
  95. close (newsocket);
  96. }
  97. close (socketfd);
  98. return 0;
  99. }

se k es bastante simple, xro me costo un pokito xD k estoi aprendiendo...
si alguien cree k es mejorable, k postee como. estoi interesado (stoi aprendiendo, otra vez xD)


En línea



* Quiero cambiar el mundo, pero estoy seguro de que no me darían el código fuente.
* No estoy tratando de destruir a Microsoft. Ese será tan solo un efecto colateral no intencionado.
* Si compila esta bien, si arranca es perfecto.

¡Wiki elhacker.net!
Un saludo
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines