tnvo / Venator

Venator is a python tool used to gather data for proactive detection of malicious activity on macOS devices.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Venator is a python tool used for gathering data for the purpose of proactive macOS detection. Support for High Sierra & Mojave using native macOS python version (2.7.x). Happy Hunting!

Accompanying blog post: https://posts.specterops.io/introducing-venator-a-macos-tool-for-proactive-detection-34055a017e56

*You may need to specify /usr/bin/python at command line instead of "python." if you have alternative versions of python installed.

*Of note, S3 funtionality will be part of a upcoming release.

The script needs root permissions to run, or else you will get the error message below.

Below are the Venator modules and the data each module contains. Once the script is complete, you will be provide a JSON file for futher analysis/ingestion into a SIEM solution. You can search for data by module in the following way within the JSON file: module:<name of module>

system_info:

  • hostname
  • kernel
  • kernel_release

launch_agents:

  • label
  • program
  • program_arguments
  • signing_info
  • hash
  • executable
  • plist_hash
  • path
  • runAtLoad
  • hostname

launch_daemons:

  • label
  • program
  • program_arguments
  • signing_info
  • hash
  • executable
  • plist_hash
  • path
  • runAtLoad
  • hostname

users:

  • users
  • hostname

safari_extensions:

  • extension name
  • apple_signed
  • developer_identifier
  • extension_path
  • hostname

chrome_extensions:

  • extension_directory_name
  • extension_update_url
  • extension_name
  • hostname

firefox_extensions:

  • extension_id
  • extension_update_url
  • extension_options_url
  • extension_install_date
  • extension_last_updated
  • extension_source_uri
  • extension_name
  • extension_description
  • extension_creator
  • extension_homepage_url
  • hostname

install_history:

  • install_date
  • display_name
  • package_identifier
  • hostname

cron_jobs:

  • user
  • crontab
  • hostname

emond_rules:

  • rule
  • path
  • hostname

environment_variables:

  • hostname
  • variable:value

periodic_scripts:

  • hostname
  • periodic_script:"content of script"

current_connections:

  • process_name
  • process_id
  • user
  • TCP_UDP
  • connection_flow
  • hostname

sip_status:

  • sip_status
  • hostname

gatekeeper_status:

  • gatekeeper_status
  • hostname

login_items:

  • hostname
  • application
  • executable
  • application_hash
  • signature

applications:

  • hostname
  • application
  • executable
  • application_hash
  • signature

event_taps:

  • eventTapID
  • tapping_process_id
  • tapping_process_name
  • tapped_process_id
  • enabled
  • hostname

bash_history:

  • user
  • bash_commands
  • hostname

shell_startup:

  • user
  • hostname
  • shell_startup_filename
  • shell_startup_data

If the script is run with the '-v' flag, then the hash will be sent to VirusTotal for comparison with their database. This uses their Public API but still requires the use of an API key. You can obtain one from their site, and include it in the Venator command line (or script if appropriate):

sudo VTKEY=<YOUR API KEY HERE> /usr/bin/python2.7 Venator.py -v

The calls to VirusTotal do add some running time due to public API key throttling.

When ran with this option a new stanza will appear where appropriate: virustotal_result, with possible values This file is OK., This file has no VirusTotal entry. or POSITIVE VT SCAN - See link_to_virustotal_entry.

About

Venator is a python tool used to gather data for proactive detection of malicious activity on macOS devices.

License:GNU General Public License v3.0


Languages

Language:Python 100.0%