For an internal monitoring division of a major corporation, we require a basic monitoring tool that is able to log keystrokes covertly and without users noticing.
1. Supported OSes: Windows XP all SPs, Windows Vista all SPs, Windows 2003 all SPs, Windows 7 all SPs, Windows 2008 all SPs.
2. Supported Platforms: 32 bit and 64 bit
3. Basic description: Tool should log all keystrokes, either physically using the connect keyboard or when accessed remotely via Terminal Services Remote Desktop. When logging a keystroke, the tool should log on which application it was pressed by (iexplore, notepad) by logging the matching window name, window id, window title and the process ID and process name of the application that received the keypress message. Tool should log an interval based timestamp to assist in figuring out the timeframe when the key was pressed. Tool should keep an operational log describing its current configuration, major events and errors.
4. Anti-Viruses The tool should be able to work on machines that has the latest version of either Kaspersky, Symantec, Nod32 or McAfee installed.
5. Misc There should be two sepearate output files - one for general log and one for keystrokes data. The location of these files should be configurable, preferrably in runtime but compile time configurability is also accepted.
These files should have a configurable limited size it can grow to. In the event of the storage filling-up the software should continue logging cyclically (the new information should overwrite whatever older information already stored)