
Win32 कीलॉगर जो सभी (गैर-IME उपयोग करने वाली) भाषाओं का सही ढंग से समर्थन करता है
यह रिपॉजिटरी इस लेख से संबंधित कोड को समाहित करती है, जिसमें हम एक win32 कीलॉगर बनाने की चर्चा करते हैं जो उन सभी भाषाओं को सपोर्ट करता है जो इनपुट मेथड एडिटर (input method editors) का उपयोग नहीं करती हैं।
सभी परीक्षण Windows 10 (22h2) पर किए गए।
. # keylog code
├── cap_gks.c # sample keylogger using GetKeyState()
├── cap_llh.c # sample keylogger using SetWindowsHookEx(WH_KEYBOARD_LL)
├── cap_rid.c # sample keylogger using GetRawInputData()
├── process.c # retrieve key-strokes context
├── process.h
├── vk_names.h # virtual key to string (name) macro
│
│ # processing code
├── dumper.cpp # program to dump windows KBD*.DLL contents to json
├── kbdhdr.h # slightly modified windows headers
├── reconstruct.py # reconstructs character stream from keylogs
├── replayer.py # win32 python program to replay scan codes and extract resulting characters
│
│ # various
├── kbdlmap.py # KLID to dll name mapping
├── vk_names.py # virtual key number to/from name
├── Makefile # build keylogger with mingw-w64
│
│ # external dependencies
├── extern
│ └── json.hpp # by Niels Lohmann from https://github.com/nlohmann/json
│
│ # json files
├── inputs # input test cases
└── layouts # output of dumper on all win32 kbd*.dll
$ sudo apt install mingw-w64 python3
Windows पर, यह मानते हुए कि exe फ़ाइलें डेस्कटॉप पर रख दी गई हैं, इनमें से कोई एक कमांड टाइप करें:
c:\Users\user\Desktop> cap_gks.exe > keylog1.jsonl
c:\Users\user\Desktop> cap_llh.exe > keylog2.jsonl
c:\Users\user\Desktop> cap_rid.exe > keylog3.jsonl
किसी DLL की सामग्री को json में डंप करने के लिए:
c:\Users\user\Desktop> dmp.exe kbdfr > kbdfr.json
कीस्ट्रोक्स को दोबारा इंजेक्ट करने के लिए:
c:\Users\user\Desktop> python replayer.py keylog1.jsonl > keylog1_ref.txt
कीस्ट्रोक्स से टेक्स्ट को पुनर्निर्मित करने के लिए (और परिणामों को सत्यापित करने के लिए)
$ python3 reconstruct.py -v -l kbdfr.dll -c keylog1_ref.txt keylog1.jsonl