A keylogger is a program that records all input from the keyboard. Although often installed by malware on computers running Microsoft Windows, keyloggers are available for all operating systems and can be installed like any other software. System administrators may also use a keylogger in a non-malicious manner to record all activity they perform for safekeeping or troubleshooting. Keyloggers are considered spyware if they are installed and running on a computer without the user's knowledge.
Not all keyloggers are installed by malware, as law enforcement agencies, universities, and corporations may install keyloggers on their computers to track and prevent misuse. Other common uses of keyloggers include suspicious spouses and parents keeping tab on the online activities of their loved ones. The use of a keylogger for espionage is often considered unethical, however it is no less so than hiring a private detective. Those who wish to use a keylogger for this purpose should note that most IM clients, email clients, and web browsers provide a built-in history function that could be used for this very purpose.
Hardware keystroke loggers are an alternative to traditional keylogger programs. Installed between the keyboard plug and the motherboard socket, these small devices are often difficult to detect as the computer has no additional software running on it. Unless the user physically examines the PS/2 keyboard connection, there will be no evidence of anything unusual. An obvious disadvantage of the use of a hardware keystroke logger is that the attacker must have physical access to the computer being examined. Also, the presence of a physical device, as opposed to a simple software keylogger, may have legal implications should the device be discovered.
Hardware Security Technology Terminology Questions