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


 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  [Tutorial] Introducion a los sockets en Ansi C : By Sagrini 2010
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Tutorial] Introducion a los sockets en Ansi C : By Sagrini 2010  (Leído 5,477 veces)
Garfield07


Desconectado Desconectado

Mensajes: 1.121


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


Ver Perfil WWW
[Tutorial] Introducion a los sockets en Ansi C : By Sagrini 2010
« en: 17 Enero 2011, 19:08 »

Mmm, lo he reescrito para la Wiki...
http://wiki.elhacker.net/programacion/cc/articulos/introducion-a-los-sockets-en-ansi-c

Un saludo!


« Última modificación: 11 Marzo 2011, 20:33 por Sagrini » 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
rdzlcs


Desconectado Desconectado

Mensajes: 781


El cerebro, la experiencia y una pizca de suerte.


Ver Perfil
Re: [Tutorial] Introducion a los sockets en Ansi C : By Sagrini 2010
« Respuesta #1 en: 17 Enero 2011, 19:18 »

Se ve muy lindo e interesante, pero poner el código como código, para que se vea :P porfa..

SAludos


En línea

Navegando en un mar de unos y ceros. Saltando de capa en capa por un modelo que lejos de ser seguro, nos da la libertad de Ser y No Ser.
Garfield07


Desconectado Desconectado

Mensajes: 1.121


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


Ver Perfil WWW
Re: [Tutorial] Introducion a los sockets en Ansi C : By Sagrini 2010
« Respuesta #2 en: 17 Enero 2011, 19:40 »

Jeje gracias...
El code esta mejor en el .doc, aunque aqui mismo te dejo el original, en GeSHi...
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. char *filename;
  13.  
  14. void shutup (int signal)
  15. {
  16. FILE *log;
  17. log=fopen (filename, "a+");
  18. times ();
  19. printf ("Shutting down...\n\n");
  20. fprintf (log, "Shutting down...\n\n");
  21. close (newsocket);
  22. close (socketfd);
  23. exit (0);
  24. }
  25.  
  26. int times ()
  27. {
  28. FILE *log;
  29. time_t now=time (0);
  30. struct tm *ahora;
  31. char buffer [40];
  32. ahora=localtime ((const time_t*)&now);
  33. strftime (buffer, 40, "%d/%m/%Y %H:%M:%S" , ahora);
  34. log=fopen (filename, "a+");
  35. printf ("%s   ", buffer);
  36. fprintf (log,"%s   ", buffer);
  37. return 0;
  38. }
  39.  
  40. int main (int argc, char *argv [])
  41. {
  42. time_t now=time (0);
  43. struct tm *ahora;
  44. char hora [40];
  45. ahora=localtime ((const time_t*)&now);
  46. strftime (hora, 40, "%d/%m/%Y %H:%M:%S" , ahora);
  47. printf ("SmallServ 2.0 - By Sagrini - Sagrini 2010 - %s\n", hora);
  48.  
  49. if (getuid()!=0)
  50. {
  51. printf ("This proccess must be run by root.\n\n");
  52. return 1;
  53. }
  54. if (argc<3)
  55. {
  56. printf ("Use: %s <PORT> <LOG> [MODE]\nMode:\t\t0) Fork the proccess to background [DEFAULT].\n\t\t1) Run in the terminal.\n\n", argv [0]);
  57. return 1;
  58. }
  59. int cont;
  60. FILE *log;
  61. struct sockaddr_in client, host;
  62. char buffer [1024];
  63. int size=sizeof (client);
  64.  
  65. filename = argv [2];
  66.  
  67. socketfd=socket (2, 1 ,  0);
  68. host.sin_family=AF_INET;
  69. host.sin_port=htons (atoi (argv [1]));
  70. host.sin_addr.s_addr=0;
  71. bind (socketfd, (struct sockaddr*)&host, sizeof (struct sockaddr));
  72.  
  73. listen (socketfd, 3);
  74.  
  75. log=fopen (filename, "a+");
  76. times ();
  77. if (argv [3] != NULL && atoi (argv [3]) == 1)
  78. printf ("\nStarting up...\n\n");
  79. fprintf (log, "Starting up...\n\n");
  80.  
  81. signal (SIGTERM, shutup);
  82. signal (SIGINT, shutup);
  83.  
  84.  
  85. if (argv [3] == NULL || atoi (argv [3]) == 0)
  86. daemon (1, 0);
  87.  
  88. while (1)
  89. {
  90. newsocket=accept (socketfd, (struct sockaddr*)&client, &size);
  91.  
  92. log=fopen (filename, "a+");
  93. times ();
  94. printf ("Got connection from %s:%d\n", inet_ntoa (client.sin_addr), ntohs (client.sin_port));
  95. fprintf (log, "Got connection from %s:%d\n", inet_ntoa (client.sin_addr), ntohs (client.sin_port));
  96.  
  97. cont=recv (newsocket, &buffer, 1024, 0);
  98. while (cont>2)
  99. {
  100. printf ("%d", cont);
  101. log=fopen (filename, "a+");
  102. times ();
  103. buffer [cont-1]='\0';
  104. printf ("RECV %d bytes: %s ", cont-2, buffer);
  105. fprintf (log, "RECV %d bytes: %s\n", cont-2, buffer);
  106.  
  107. cont=recv (newsocket, &buffer, 1024, 0);
  108. }
  109. log=fopen (filename, "a+");
  110. times ();
  111. printf ("Finishing connection from %s:%d\n\n", inet_ntoa (client.sin_addr), ntohs (client.sin_port));
  112. fprintf (log, "Finishing connection from %s:%d\n\n", inet_ntoa (client.sin_addr), ntohs (client.sin_port));
  113. close (newsocket);
  114. }
  115. close (socketfd);
  116. return 0;
  117. }
  118.  

Este corresponde al 3.0. El 2.0 es el mismo pero con menos cosas. El 4.0 es el mismo para Windows...
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
anonimo12121


Desconectado Desconectado

Mensajes: 1.813


Ver Perfil WWW
Re: [Tutorial] Introducion a los sockets en Ansi C : By Sagrini 2010
« Respuesta #3 en: 18 Enero 2011, 01:35 »

Sagrini modifica el primero y quedara pro , gracias por ela porte
En línea

Página para ganar Bitcoins y Dinero: http://earnbit.hol.es/
Video de YouTube con Hack para el LoL: http://adf.ly/5033746/youtube-lolemuhack
Si quieres ganar dinero con adfly entra y registrate aquí -> http://adf.ly/?id=5033746
Garfield07


Desconectado Desconectado

Mensajes: 1.121


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


Ver Perfil WWW
Re: [Tutorial] Introducion a los sockets en Ansi C : By Sagrini 2010
« Respuesta #4 en: 19 Enero 2011, 18:18 »

Modificado! ya esta creo que se ve mejor... Descargaros el .doc, es mas facil no? Nop, no tiene macros.... no se ni crearlas  ;)
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
rdzlcs


Desconectado Desconectado

Mensajes: 781


El cerebro, la experiencia y una pizca de suerte.


Ver Perfil
Re: [Tutorial] Introducion a los sockets en Ansi C : By Sagrini 2010
« Respuesta #5 en: 19 Enero 2011, 18:41 »

Modificado! ya esta creo que se ve mejor... Descargaros el .doc, es mas facil no? Nop, no tiene macros.... no se ni crearlas  ;)

Muy bueno, toda la info que se encuentra sobre el tema esta en ingles, y para los que estamos peleados con ese idioma, o entendemos poco, se nos complica, gracias por tu aporte..

SAludos
En línea

Navegando en un mar de unos y ceros. Saltando de capa en capa por un modelo que lejos de ser seguro, nos da la libertad de Ser y No Ser.
Garfield07


Desconectado Desconectado

Mensajes: 1.121


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


Ver Perfil WWW
Re: [Tutorial] Introducion a los sockets en Ansi C : By Sagrini 2010
« Respuesta #6 en: 19 Enero 2011, 19:00 »

Bueno, le he escrito a Littlehorse para que lo mire, aun nada :-[ lo voy a pedir como post interesante o algo, o no llega a tanto? Realmente yo para escribir soy un poco cafre, pero... Gracias!
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
Littlehorse
All the world's a stage
Moderador
***
Desconectado Desconectado

Mensajes: 2.714


Nie Dam Sie


Ver Perfil WWW
Re: [Tutorial] Introducion a los sockets en Ansi C : By Sagrini 2010
« Respuesta #7 en: 19 Enero 2011, 19:38 »

No hace falta pedir nada. Pueden poner sus posts en este hilo y ya queda en el recopilatorio. En el caso de los sources interesantes, es lo mismo, pueden postearlos aqui y yo luego los agrego a la lista principal.

Bueno, le he escrito a Littlehorse para que lo mire, aun nada :-[

Claramente "aun nada", estaría bien que tengas un poco de paciencia, ten en cuenta que todos tenemos una vida y nuestras cosas que hacer; no podemos estar 24hs pendientes del foro. Me enviaste el pm a las 19:00:34 e hiciste el post citado a las 19:00:58, es decir, no esperaste mas de 24 segundos.




En cuanto al post, no lo he leído todo. Trata de formatearlo un poco mejor para que sea mas legible, comenzando por quitar el contenido completo de la etiqueta quote y code y colocar los espacios correctamente.
Y por cierto, no se pueden poner direcciones de correo en los posts.

Saludos
En línea

An expert is a man who has made all the mistakes which can be made, in a very narrow field.
Garfield07


Desconectado Desconectado

Mensajes: 1.121


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


Ver Perfil WWW
Re: [Tutorial] Introducion a los sockets en Ansi C : By Sagrini 2010
« Respuesta #8 en: 19 Enero 2011, 19:50 »

Bueno Littlehorse perdona lo que pasa es que hice un copy-paste del mensaje porque tecnicamente lo habia escrito con el nombre de E.I. pero el recibio ese dia bastantes mensajes y el mio cayo en el olvido. Asi que te escribi a ti y puse el mensaje directamente. Espero que no te lo tomes a mal, se me habia ido...

Ya he colgado el post. Perdonad por las molestias   :-\ lo siento....
PD: Gracias LH por lo del email habia copiado directamente el texto del .doc y no me habia dado cuenta que llevaba mi e-mail. Luego he ido mejorando el code, metiendole los  "code"...
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:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[Tutorial] Tcp/IP Sockets C# « 1 2 »
.NET (C#, VB.NET, ASP)
[D4N93R] 15 32,241 Último mensaje 23 Agosto 2011, 09:27
por llAudioslavell
[First BoF Linux attack : Sagrini 2010 : elhacker.net] [Funciona!!!] « 1 2 3 »
Bugs y Exploits
Garfield07 24 10,345 Último mensaje 16 Febrero 2011, 23:51
por Garfield07
Problema extraño al recibir string por socket TCP (ANSI-C + Berkeley sockets)
Programación C/C++
Scott Code 1 1,568 Último mensaje 6 Noviembre 2011, 20:44
por Scott Code
ayuda . textos de sagrini
Bugs y Exploits
afdlkglfgfdgfhgf 2 3,942 Último mensaje 10 Julio 2012, 00:49
por cirano045
VS c++ 2010 ANSI C++
Programación C/C++
ByteCode 1 842 Último mensaje 6 Enero 2014, 21:25
por ByteCode
Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines