Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
keebcap — Win32 keylogger that supports all (non-ime using) languages correctly | Kitploit
Tools/GitHubGitHub/synacktiv/keebcap
Password AttacksData ExfiltrationInformation GatheringPost-ExploitationRed Teaming
GitHubsynacktiv/keebcap

keebcap

Win32 keylogger that supports all (non-ime using) languages correctly

View Repository
551042 years agoReviewed by Kitploit

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

Keebcap

This repository contains the code associated to this article in which we talk about building a win32 keylogger that supports all languages not using input method editors.

All tests were done on Windows 10 (22h2).

tree

root@kitploit:~
.   # 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

Dependencies

root@kitploit:~
$ sudo apt install mingw-w64 python3

Usage

On windows, type either one of those commands, assuming the exe have been dropped on the desktop:

root@kitploit:~
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

To dump the contents of a DLL to json:

root@kitploit:~
c:\Users\user\Desktop> dmp.exe kbdfr > kbdfr.json

To reinject keystrokes:

root@kitploit:~
c:\Users\user\Desktop> python replayer.py keylog1.jsonl > keylog1_ref.txt

To reconstruct the text from keystrokes (and verify the results)

root@kitploit:~
$ python3 reconstruct.py -v -l kbdfr.dll -c keylog1_ref.txt keylog1.jsonl
Download Tool