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

 

 


Tema destacado:


  Mostrar Mensajes
Páginas: [1]
1  Programación / Programación C/C++ / Re: mostrar en cliente el resultado de execvp de servidor en: 23 Marzo 2018, 00:36 am
intente con esa solucion pero aun nada ... pero voy a solucionarlo denlo por echo y luego subo la solucion :D
2  Programación / Programación C/C++ / Re: mostrar en cliente el resultado de execvp de servidor en: 21 Marzo 2018, 03:30 am
probé con explorador de internet firefox http://direccionip:7777 y me funciona bien sin necesidad de convertir a srting execvp de igual manera me funciona con netcat nc direccionip 7777 y funciona bien me muestra el resultado en la pantalla de nc , con telnet igual funciona .. pero mi programa cliente no se como controlar o q lineas de codigo me faltan me siento bloqueado :(
3  Programación / Programación C/C++ / Re: mostrar en cliente el resultado de execvp de servidor en: 20 Marzo 2018, 22:15 pm
Jajjajajjajaj pero igual lo puedes migrar a windows es fácil , en windows trabajo con qt creator
4  Programación / Programación C/C++ / Re: mostrar en cliente el resultado de execvp de servidor en: 20 Marzo 2018, 19:25 pm
servidor:

Código
  1. #include <stdio.h>
  2. #include<sys/types.h>
  3. #include<sys/socket.h>
  4. #include<unistd.h>
  5. #include<netinet/in.h>
  6. #include<stdlib.h>
  7. #include<netdb.h>
  8. #include<string.h>
  9. #include<arpa/inet.h>
  10. #include<signal.h>
  11. #define PUERTO 7777
  12.  
  13. int main()
  14. {
  15. struct sockaddr_in servidor;
  16. struct sockaddr_in cliente;
  17. int sock_servidor,sock_cliente;
  18.  
  19. if((sock_servidor=socket(AF_INET,SOCK_STREAM,0))<0)
  20. {
  21. perror("socket");
  22. return -1;
  23. }
  24. servidor.sin_family=AF_INET;
  25. servidor.sin_port=htons(PUERTO);
  26. servidor.sin_addr.s_addr=INADDR_ANY;
  27.  
  28. if((bind(sock_servidor,(struct sockaddr *)&servidor,sizeof servidor))<0)
  29. {
  30. perror("bind");
  31. return -1;
  32. }
  33.  
  34. if(listen(sock_servidor,20)<0)
  35. {
  36. perror("listen");
  37. return -1;
  38. }
  39. int tam_cliente;
  40. char* ip_cliente;
  41. int puerto_cliente;
  42. char mensaje_cliente[20];
  43. signal(SIGCHLD,SIG_IGN);
  44. while(1)
  45. {
  46. tam_cliente=sizeof cliente;
  47. sock_cliente=accept(sock_servidor,(struct sockaddr *)&cliente,&tam_cliente);
  48. if(sock_cliente<0)
  49. {
  50. perror("acceptando cliente");
  51. return -1;
  52. }
  53.  
  54. ip_cliente=inet_ntoa(cliente.sin_addr);
  55. puerto_cliente=ntohs(cliente.sin_port);
  56. printf("cliente conectado:%s:%d\n",ip_cliente,puerto_cliente);
  57. memset(mensaje_cliente,0,sizeof mensaje_cliente);
  58. //read(sock_cliente,&mensaje_cliente,sizeof mensaje_cliente);
  59. //printf("mensaje cliente:%s\n",mensaje_cliente);
  60. if(!fork())
  61. {
  62. printf("inicio fork\n");
  63. close(sock_servidor);
  64. dup2(sock_cliente,0);
  65. dup2(sock_cliente,1);
  66. close(sock_cliente);
  67. printf("introduzca comando:\n");
  68. fgets(mensaje_cliente,20,stdin);
  69. printf("mensaje_cliente=\n%s",mensaje_cliente);
  70. char *com[]={"ls","-l",NULL};
  71.                        execvp(com[0],com);
  72. exit(1);
  73. }
  74. close(sock_cliente);
  75. }
  76. return 0;
  77. }
  78.  

cliente:
Código
  1. #include<stdio.h>
  2. #include<sys/types.h>
  3. #include<sys/socket.h>
  4. #include<netinet/in.h>
  5. #include<arpa/inet.h>
  6. #include<netdb.h>
  7. #include<unistd.h>
  8. #include<stdlib.h>
  9. #include<string.h>
  10.  
  11. #define PUERTO 7777
  12. int main()
  13. {
  14. struct sockaddr_in cli;
  15. struct sockaddr_in serv;
  16. int s_cliente,s_servidor;
  17.  
  18. s_cliente=socket(PF_INET,SOCK_STREAM,0);
  19. if (s_cliente<0)
  20. {
  21. perror("socket");
  22. return -1;
  23. }
  24.  
  25. cli.sin_family=AF_INET;
  26. cli.sin_port=htons(0);
  27. cli.sin_addr.s_addr=htonl(INADDR_ANY);
  28. if(bind(s_cliente,(struct sockaddr *)&cli,sizeof cli)<0)
  29. {
  30. perror("bind");
  31. return -1;
  32. }
  33.  
  34. serv.sin_family=AF_INET;
  35. serv.sin_port=htons(PUERTO);
  36. serv.sin_addr.s_addr=inet_addr("127.0.0.1");
  37.  
  38. if(connect(s_cliente,(struct sockaddr *)&serv,sizeof serv)<0)
  39. {
  40. perror("connectando");
  41. return -1;
  42. }
  43. char cadena[30];
  44. //printf("introduzca el comando:\n");
  45. //scanf("%[^\n]",cadena);
  46. //fflush(stdin);
  47. //send(s_cliente,cadena,sizeof cadena,0);
  48. recv(s_cliente,cadena,sizeof cadena,0);
  49. close(s_cliente);
  50. return 0;
  51. }
  52.  
5  Programación / Programación C/C++ / Re: mostrar en cliente el resultado de execvp de servidor en: 20 Marzo 2018, 19:22 pm
ok soy nuevo en esto gracias por responder
6  Programación / Programación C/C++ / Re: mostrar en cliente el resultado de execvp de servidor en: 20 Marzo 2018, 19:07 pm
Código
  1. while(1)
  2. {
  3. tam_cliente=sizeof cliente;
  4. sock_cliente=accept(sock_servidor,(struct sockaddr *)&cliente,&tam_cliente);
  5. if(sock_cliente<0)
  6. {
  7. perror("acceptando cliente");
  8. return -1;
  9. }
  10.  
  11. ip_cliente=inet_ntoa(cliente.sin_addr);
  12. puerto_cliente=ntohs(cliente.sin_port);
  13. printf("cliente conectado:%s:%d\n",ip_cliente,puerto_cliente);
  14. memset(mensaje_cliente,0,sizeof mensaje_cliente);
  15. //read(sock_cliente,&mensaje_cliente,sizeof mensaje_cliente);
  16. //printf("mensaje cliente:%s\n",mensaje_cliente);
  17. if(!fork())
  18. {
  19. printf("inicio fork\n");
  20. close(sock_servidor);
  21. dup2(sock_cliente,0);
  22. dup2(sock_cliente,1);
  23. close(sock_cliente);
  24. printf("introduzca comando:\n");
  25. fgets(mensaje_cliente,20,stdin);
  26. printf("mensaje_cliente=\n%s",mensaje_cliente);
  27. char *com[]={"ls","-l",NULL};
  28.                        execvp(com[0],com);
  29. exit(1);
  30. }
  31. close(sock_cliente);
  32. }
  33.  
  34. me funciona con telnet pero no con mi programa cliente que tengo creado en c que tiene las funciones basicas de conectar con servidor



Código
  1. int main()
  2. {
  3.   struct sockaddr_in cli;
  4.   struct sockaddr_in serv;
  5.   int s_cliente,s_servidor;
  6.  
  7.   s_cliente=socket(PF_INET,SOCK_STREAM,0);
  8.   if (s_cliente<0)
  9.   {
  10.      perror("socket");
  11.      return -1;
  12.   }
  13.  
  14.   cli.sin_family=AF_INET;
  15.   cli.sin_port=htons(0);
  16.   cli.sin_addr.s_addr=htonl(INADDR_ANY);
  17.   if(bind(s_cliente,(struct sockaddr *)&cli,sizeof cli)<0)
  18.   {
  19.      perror("bind");
  20.      return -1;
  21.   }
  22.  
  23.   serv.sin_family=AF_INET;
  24.   serv.sin_port=htons(PUERTO);
  25.   serv.sin_addr.s_addr=inet_addr("127.0.0.1");
  26.  
  27.   if(connect(s_cliente,(struct sockaddr *)&serv,sizeof serv)<0)
  28.   {
  29.      perror("connectando");
  30.      return -1;
  31.   }
  32.   char cadena[30];
  33.   //printf("introduzca el comando:\n");
  34.   //scanf("%[^\n]",cadena);
  35.   //fflush(stdin);
  36.   //send(s_cliente,cadena,sizeof cadena,0);
  37.   recv(s_cliente,cadena,sizeof cadena,0);
  38.   close(s_cliente);
  39.   return 0;
  40. }


este es el programa cliente




· Los códigos deben ir en etiquetas GeSHi
· No se debe publicar 2 veces seguidas, usar el boton modificar
>aquí las reglas del foro
-Engel Lex
7  Programación / Programación C/C++ / mostrar en cliente el resultado de execvp de servidor en: 20 Marzo 2018, 18:34 pm
tengo este codigo estandard de ejemplo no es el coidgo en si:
este codigo esta en el servidor y funciona bien con telnet
Código
  1. if(!fork())
  2. {
  3.     dup2(sockClie,0);//stdin
  4.     dup2(sockclie,1);//stdout
  5.     close(sockClie);
  6.   fgets(arg,sizeof arg,stdin);
  7.     execvp(arg,arg);
  8. }
  9.  
el problema q tengo es que no me funciona en mi programa cliente q hago una conecion normal con el connect(sd,....); por ejemplo cuando ejecuto telnet ip puerto me hace peticion del comando y luego muestra el resultado en la pantalla de telnet .. quiero q mi clilene haga lo mismo pero nada porfa  agradezco de antemano su ayuda gracias
8  Seguridad Informática / Análisis y Diseño de Malware / Re: Como podria hacer un backdoor en: 18 Marzo 2018, 23:04 pm
hola bro onte preocupes sigue buscando info yo igual estoy en las mismas , encontre un par de codigos en la cual permite enviar comandos y mostrarte esos comandos ejecutados en el servidor o donde esta ejecutandose el backdoor saludos cualquier cosa me escribes

pd estudiando el codigo analizando y aprendiendo los conceptos avanzaras rapido saludos!! :D
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines