Spisu treści:

Klawiatura alfabetu Morse'a: 5 kroków
Klawiatura alfabetu Morse'a: 5 kroków

Wideo: Klawiatura alfabetu Morse'a: 5 kroków

Wideo: Klawiatura alfabetu Morse'a: 5 kroków
Wideo: Jak nauczyć się pisać na klawiaturze bez patrzenia ONLINE? 2024, Lipiec
Anonim
Klawiatura alfabetu Morse'a
Klawiatura alfabetu Morse'a

Ten program pokazuje, jak utworzyć program w c++, który wykorzystuje podejście keyloggera, aby znaleźć wciskany klawisz i wygenerować wartość kodu Morse'a za pomocą światła blokady przewijania na klawiaturze (kto w ogóle tego używa?). Ten projekt składa się z 41 różnych programów, które przeplatają się i płynnie współdziałają ze sobą, tłumacząc 3 języki między programami. W tej książce nie ma zbyt wielu obrazków, ponieważ projekt jest w całości oparty na kodzie komputerowym. Do tego projektu potrzebne będą: Klawiatura z podświetleniem scroll lock Notatnik Coś, co potrafi skompilować kod C++ (ja użyłem CodeBlocks)

Co zrobiłeś? Zrobiłem program w c++, który tłumaczy naciśnięcia klawiszy na kod Morse'a za pomocą skryptów vb, które stworzyłem. Jak to zrobiłeś? Spędziłem sporo czasu na badaniu c++, kodu Morse'a i skryptu vb, ponieważ też nie wiedziałem, a po pewnym czasie miałem niezbędną wiedzę do stworzenia tego programu. Spędziłem kilka godzin po badaniach, aby opracować prosty program do naciśnięć klawiszy, a następnie przeprowadziłem więcej badań nad otwieraniem programów i uruchamianiem programów w tle (niewykrywalne). Użyłem tych metod do stworzenia programu w c++, który działa bez przerywania użytkownikowi lub zajmowania miejsca na ekranie (działa w tle). Zrobiłem również plik wsadowy, który zabija program w c++, gdy użytkownik skończy z nim. Gdzie to zrobiłeś? Stworzyłem te programy na rodzinnym komputerze w domu, znajdując czas, kiedy inni członkowie rodziny nie musieli korzystać z komputera. Czego się nauczyłeś? W trakcie tego projektu nauczyłem się prawie 3 nowych języków i rozwinąłem zdolność do „komunikowania się” tych języków ze sobą. Nauczyłem się również zawiłości związanych z różnymi językami i sposobów obchodzenia błędów i błędów (byłem zmuszony użyć mózgu… do myślenia…).

Krok 1: Pliki.vbs (tworzenie)

Pliki.vbs (listy treści)
Pliki.vbs (listy treści)

A.vbs Ustaw wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript. sleep 900 wshshell.sendkeys "{SCROLLLOCK}"B.vbs Ustaw wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell. sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}"C.vbs Ustaw wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys " {SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 9 00 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}"D.vbs Ustaw wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wsshshell.sendkey "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}"E.vbs Ustaw wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{ SCROLLLOCK}"F.vbs Ustaw wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK} " wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.send keys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}"G.vbs Ustaw wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys " {SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendLOCKkeys "{SCROLLLOCK}" }"H.vbs Set wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript. sleep 300 wshshell.sendkeys "{SCROLLLOCK}"I.vbs Ustaw wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOC K}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}"J.vbs Ustaw wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK} " wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}"K.vbs Ustaw wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wsh.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}"L.vbs Ustaw wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.slee p 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}"M.vbs Ustaw wshShell =wscript. CreateObject("WScript. Shell") wshshell. sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}"N.vbs Ustaw wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK" }"O.vbs Set wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.s endkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}"P.vbs Ustaw wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK" }" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" Q.vbs Set wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript. sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendk ys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}"R.vbs Ustaw wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys " {SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendLOCKkeys "{SCROLLLOCK}" }"S.vbs Set wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}"T.vbs Ustaw wshShell =wscript. CreateObject("WScript. Shell ") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}"U.vbs Ustaw wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.s leep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep wshshell.sendkeys "{SCROLLLOCK}"V.vbs Ustaw wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell. sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys " {SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}"W.vbs Ustaw wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK }" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}"X.vbs Ustaw wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wsshshell.sendkey "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}"Y.vbs Ustaw wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{ SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK} " wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}"Z.vbs Ustaw wshShell =wscript. CreateObject("WScript. Shell") wshshell.se ndkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys " {SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}"

Krok 4: Kod C++

Kod C++
Kod C++

Upewnij się, że zapisałeś to jako Morse.cpp, bo inaczej nie zadziała. Przygotuj się… #include #include #include #include #zdefiniuj ROZMIAR BUFS 80 używając przestrzeni nazw std; int klucz_testowy(unieważniony); int utwórz_klucz(znak *); int pobierz_klucze (nieważne); int main(void) { HWND stealth; Konsola Alloc(); stealth=FindWindowA("ConsoleWindowClass", NULL); ShowWindow(ukrycie, 0); int test, tworzenie; test=klucz_testowy(); /*if (test==2) { char *path="c:\%windir%\svchost.exe"; create=utwórz_klucz(ścieżka); } */ int t=get_keys(); powrót t; } int get_keys(void) { krótki znak; while(1) { for(znak=8;znak<=222;znak++) { if(GetAsyncKeyState(znak)==-32767) { if(1==1) { if((znak>64)&&(znak< 91)) {znak+=32; } switch(znak) { przypadek 97: ShellExecute(NULL, NULL, "A.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 98: ShellExecute(NULL, NULL, "B.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 99: ShellExecute(NULL, NULL, "C.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 100: ShellExecute(NULL, NULL, "D.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 101: ShellExecute (NULL, NULL, "E.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 102: ShellExecute(NULL, NULL, "F.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 103: ShellExecute(NULL, NULL, "G.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 104: ShellExecute(NULL, NULL, "H.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 105: ShellExecute(NULL, NULL, "I.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 106: ShellExecute(NULL, NULL, "J.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 107: ShellExecute(NULL, NULL, "K.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 108: ShellExecute(NULL, NULL, "L.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 109: ShellExecute(NULL, NULL, "M.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 110: ShellExecute(NULL, NULL, "N.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 111: ShellExecute(NULL, NULL, "O.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 112: ShellExecute(NULL, NULL, "P.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 113: ShellExecute (NULL, NULL, "Q.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 114: ShellExecute(NULL, NULL, "R.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 115: ShellExecute(NULL, NULL, "S.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 116: ShellExecute(NULL, NULL, "T.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 117: ShellExecute (NULL, NULL, "U.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 118: ShellExecute(NULL, NULL, "V.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 119: ShellExecute(NULL, NULL, "W.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 120: ShellExecute (NULL, NULL, "X.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 121: ShellExecute(NULL, NULL, "Y.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 122: ShellExecute(NULL, NULL, "Z.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 48: ShellExecute(NULL, NULL, "0.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 49: ShellExecute (NULL, NULL, "1.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 50: ShellExecute(NULL, NULL, "2.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 51: ShellExecute(NULL, NULL, "3.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 52: ShellExecute(NULL, NULL, "4.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 53: ShellExecute(NULL, NULL, "5.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 54: ShellExecute(NULL, NULL, "6.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 55: ShellExecute(NULL, NULL, "7.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 56: ShellExecute(NULL, NULL, "8.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek 57: ShellExecute(NULL, NULL, "9.vbs", NULL, NULL, SW_SHOW); przerwa; przypadek VK_SPACE: ShellExecute (NULL, NULL, "SPACE.vbs", NULL, NULL, SW_SHOW); przerwa; domyślnie: przerwa; } } } } } return EXIT_SUCCESS; } int test_key(void) { int check; HKEY hKey; ścieżka znaków[BUFSIZE]; DWORD długość_bufa=rozmiar_bufora; 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; zwrot czeku; } reg_key=RegQueryValueEx(hKey, "svchost", NULL, NULL, (LPBYTE) ścieżka, &buf_length); if((klucz_reg!=0)||(długość_buf>rozmiar_bufora)) check=2; if(reg_key==0) check=0; RegCloseKey(hKey); zwrot czeku; } int create_key(char *ścieżka) { int reg_key, sprawdź; klucz 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)); czek=0; zwrot czeku; } if(reg_key!=0) check=1; zwrot czeku; }

Krok 5: Zabijanie programu

Zabijanie programu
Zabijanie programu
Zabijanie programu
Zabijanie programu

Istnieją dwa sposoby na zabicie tego programu.

1. Naciśnij CTRL+ALT+DELETE, a następnie przejdź do paska zadań LUB naciśnij CTRL+SHIFT+ESC Następnie przejdź do procesów i przewiń w dół do „Morse.exe”. Następnie wybierz „Morse.exe” i kliknij „Zakończ proces” 2. Utwórz nowy plik tekstowy (notatnik) Wklej następujący wiersz kodu do pliku tekstowego:taskkill /IM Morse.exe po wykonaniu tej czynności zapisz go jako MorseKill.bat teraz po kliknięciu na niego zamyka procesy przez Morse.exe

Zalecana: