![]() |
|
Do all Windows keyloggers need to monitor Windows hooks? - Printable Version +- Hack Forums (https://hackforums.net) +-- Forum: Hacks, Exploits, and Various Discussions (https://hackforums.net/forumdisplay.php?fid=45) +--- Forum: Blackhat • Red Team • Offensive Security (https://hackforums.net/forumdisplay.php?fid=447) +---- Forum: Keyloggers (https://hackforums.net/forumdisplay.php?fid=113) +---- Thread: Do all Windows keyloggers need to monitor Windows hooks? (/showthread.php?tid=4915966) |
Do all Windows keyloggers need to monitor Windows hooks? - FeatureBug - Jul 21, 2015 I've been looking into how Windows keyloggers are developed and the only ones I can find function by monitoring the WH_KEYBOARD_LL hook or similar hooks. Is this the only practical way to develop a keylogger? If so this limits the programming languages available to develop one. I've been looking into developing one in some newer languages, but the only ones that have libraries that have this functionality are languages like C, C#, C++, Java, VB. Are there any other languages you can develop effective keyloggers in? What ways are there to log key presses on Windows without using Windows hooks? Thanks in advance for any advice! * - Mouse❤️ - Jul 21, 2015 In order of question marks: No. You can also use GetAsyncKeystate, which is less practical and less efficient but easier(? I guess. Not really.) There are other ways, but they are not practical at all and you also can't do them in any other language than the ones you mentioned (some methods can't be done by all the languages you mentioned.) No. (Autoit? I wouldn't call that effective.) GetAsyncKeystate(), ... A hardware keylogger? * - _Simba - Jul 21, 2015 You pretty much nailed the only languages that run on the machine and thus have an ability to hook key strokes. That's functionality you wont get in say, a java virtual machine. Hooking is the only real way to get it done. Heres what i wrote in c# its easy and efficient, feel free to use or modify it. Code If you want something in C# that i made, take a look at this. Just compile it.* - FeatureBug - Jul 22, 2015 (Jul 21, 2015 01:18 PM)#Mouse Wrote: In order of question marks: Okay, that's quite disappointing in all honesty, but fair enough. I took a look into GetAsyncKeyState() and it says it won't work (Or returns 0) if the foreground thread belongs to another process and the desktop does not allow the hook or the journal record. How does that work if I want to make the keylogger run as a background process with no console window? Or am I misunderstanding what that means? * - Rhez - Jul 22, 2015 (Jul 22, 2015 12:20 AM)FeatureBug Wrote: How does that work if I want to make the keylogger run as a background process with no console window? Or am I misunderstanding what that means? It still run and get the keys. But there's a delay when u used GetAsyncKeyState. * - FeatureBug - Jul 22, 2015 (Jul 22, 2015 03:29 AM)Rhez Wrote: It still run and get the keys. But there's a delay when u used GetAsyncKeyState. It seems like it's a "hopeful" program. In any case, using GetAsyncKeyState limits me even further with the available languages so you may as well use Windows hooks. Thanks for the help everyone, bit of a disappointing answer, but at least I know now! |