Skip to content

p13i/keylogger

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mac OS X Keylogger

(fork of caseyscarborough/keylogger)

This repository holds the code for a simple and easy to use keylogger for Mac OS X. It is not meant to be malicious, and is written as a proof of concept. There is not a lot of information on keyloggers or implementing them on Mac OS X, and most of the ones I've seen do not work as indicated. This project aims to be a simple implementation on how it can be accomplished on OS X.

Note: This keylogger is currently unable to capture secure input such as passwords. See issue #3 for more information.

Usage

Start by cloning the repository and running the proper make commands, shown below. By default, the application installs to /usr/local/bin/keylogger, which can easily be changed in the Makefile. make install may require root access.

$ git clone https://github.com/caseyscarborough/keylogger && cd keylogger
$ make && make install

The application by default logs to /var/log/keystroke.log, which may require root access depending on your system's permissions. You can change this in keylogger.h if necessary.

$ keylogger
Logging to: /var/log/keystroke.log

If you'd like the application to run on startup, run the startup make target:

$ sudo make startup

You can generate a report using this command:

$ python report.py

This script will print out some interesting statistics such as the the start date and end date of recorded keystrokes, the number of total keystrokes, and a histogram of the most frequent keys.

image

Uninstallation

You can completely remove the application from your system (including the startup daemon) by running the following command (logs will not be deleted):

$ sudo make uninstall

Optional Parameters

You can pass in two optional parameters to the program. The clear option will clear the logs at the default location. Any other argument passed in will be used as the path to the log file for that process. See below:

# Clear the logfile.
$ keylogger clear
Logfile cleared.

# Specify a logfile location.
$ keylogger ~/logfile.txt
Logging to: /Users/Casey/logfile.txt

Contributing

Feel free to fork the project and submit a pull request with your changes!

About

A no-frills keylogger for Mac OS X.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 61.0%
  • Python 34.9%
  • Makefile 4.1%