When the user press a key in desktop or console or a browser or anywhere. I want to get the key that is pressed by user.

I found something about that

I can make my intterrup handler (IRQ) but if I change the original interrupt handler, the computer must be rebooted or I must made the interrupt handler, the original handler from my handler and I don't know whether that is can be done in kernel 2.6.x

I can use tty device but how ?

and there is a function scancode = inb(0x60);

maybe that can bu used.

maybe with systemCalls but in kernel 2.6.x the system Call Table I think it can't be changed.

a Keylogger for kernel 2.6.x is appropriate for me because of it logs all keys that are pressed by user.

(Module Programming(possibly it will be a char device driver) with C)

Recommended Answers

All 5 Replies

I can make my intterrup handler (IRQ) but if I change the original interrupt handler, the computer must be rebooted or I must made the interrupt handler, the original handler from my handler and I don't know whether that is can be done in kernel 2.6.x

You didn't make it - Peter Jay Salzman and Ori Pomerantz made the module your just trying to expand it into a keylogger.
Check this site - http://www.faqs.org/docs/kernel/x1206.html

Can it be done? Yes, because I have done it in Linux 2.6.x. Am I going to give you the code? No because its a pure hack that would involve to much tutoring and time to explain what I did..Plus I don't believe in this type programming, its counter-productive and accomplishes nothing in the end, so why did I do it...because they said it couldn't be done and I was up to the challenge...but in the end I won't post this type of code because I categorize it as nuisance code that benefits no one..

You didn't make it - Peter Jay Salzman and Ori Pomerantz made the module your just trying to expand it into a keylogger.
Check this site - http://www.faqs.org/docs/kernel/x1206.html

Can it be done? Yes, because I have done it in Linux 2.6.x. Am I going to give you the code? No because its a pure hack that would involve to much tutoring and time to explain what I did..Plus I don't believe in this type programming, its counter-productive and accomplishes nothing in the end, so why did I do it...because they said it couldn't be done and I was up to the challenge...but in the end I won't post this type of code because I categorize it as nuisance code that benefits no one..

it is useless for me now, the project deadline past. But you can share it It will be harmless for me I will use in a virtual system and harmless for others because I think to execute the module, you must be root. Whatever thx for reply, Gerard.

ask on the kernel.org mailing lists?

it is useless for me now, the project deadline past. But you can share it It will be harmless for me I will use in a virtual system and harmless for others because I think to execute the module, you must be root. Whatever thx for reply, Gerard.

I think your missing the point, I don't like the idea of posting "nuisance" code, code that can be used for malicious purposes...

I had understood that. You are right. But I think to use your program is hard. It will be a module and load it into kernel. It will require administrator privileges and that's another problem If Someone wants to use your module for bad ideas. But if someone knows the root password, You will be right :) but it's not neccesary for me at all now. I passed the lesson with BB.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.