All Projects → SynAckJack → macOS-ir

SynAckJack / macOS-ir

Licence: other
Prototype to collect data and analyse it from a compromised macOS device.

Programming Languages

shell
77523 projects
ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to macOS-ir

Litmus test
Detecting ATT&CK techniques & tactics for Linux
Stars: ✭ 190 (+1087.5%)
Mutual labels:  incident-response
Vast
🔮 Visibility Across Space and Time
Stars: ✭ 227 (+1318.75%)
Mutual labels:  incident-response
CCXDigger
The CyberCX Digger project is designed to help Australian organisations determine if they have been impacted by certain high profile cyber security incidents. Digger provides threat hunting functionality packaged in a simple-to-use tool, allowing users to detect certain attacker activities; all for free.
Stars: ✭ 45 (+181.25%)
Mutual labels:  incident-response
Pockint
A portable OSINT Swiss Army Knife for DFIR/OSINT professionals 🕵️ 🕵️ 🕵️
Stars: ✭ 196 (+1125%)
Mutual labels:  incident-response
Wazuh Kibana App
Wazuh - Kibana plugin
Stars: ✭ 212 (+1225%)
Mutual labels:  incident-response
Asn
ASN / RPKI validity / BGP stats / IPv4v6 / Prefix / URL / ASPath / Organization / IP reputation and geolocation lookup tool / Traceroute server
Stars: ✭ 242 (+1412.5%)
Mutual labels:  incident-response
Osctrl
Fast and efficient osquery management
Stars: ✭ 183 (+1043.75%)
Mutual labels:  incident-response
pyarascanner
A simple many-rules to many-files YARA scanner for incident response or malware zoos.
Stars: ✭ 23 (+43.75%)
Mutual labels:  incident-response
Atc React
A knowledge base of actionable Incident Response techniques
Stars: ✭ 226 (+1312.5%)
Mutual labels:  incident-response
assisted-log-enabler-for-aws
Assisted Log Enabler for AWS - Find AWS resources that are not logging, and turn them on.
Stars: ✭ 167 (+943.75%)
Mutual labels:  incident-response
Dfir Orc
Forensics artefact collection tool for systems running Microsoft Windows
Stars: ✭ 202 (+1162.5%)
Mutual labels:  incident-response
Wazuh Docker
Wazuh - Docker containers
Stars: ✭ 213 (+1231.25%)
Mutual labels:  incident-response
Cortex Analyzers
Cortex Analyzers Repository
Stars: ✭ 246 (+1437.5%)
Mutual labels:  incident-response
Pypowershellxray
Python script to decode common encoded PowerShell scripts
Stars: ✭ 192 (+1100%)
Mutual labels:  incident-response
PowerSponse
PowerSponse is a PowerShell module focused on targeted containment and remediation during incident response.
Stars: ✭ 35 (+118.75%)
Mutual labels:  incident-response
Wazuh
Wazuh - The Open Source Security Platform
Stars: ✭ 3,154 (+19612.5%)
Mutual labels:  incident-response
Dfirtrack
DFIRTrack - The Incident Response Tracking Application
Stars: ✭ 232 (+1350%)
Mutual labels:  incident-response
yara-exporter
Exporting MISP event attributes to yara rules usable with Thor apt scanner
Stars: ✭ 22 (+37.5%)
Mutual labels:  incident-response
Packrat
Live system forensic collector
Stars: ✭ 16 (+0%)
Mutual labels:  incident-response
evtx-hunter
evtx-hunter helps to quickly spot interesting security-related activity in Windows Event Viewer (EVTX) files.
Stars: ✭ 122 (+662.5%)
Mutual labels:  incident-response

macOS-ir Shellcheck Lint

Prototype tool to assist with Incident Response on macOS. Currently supports 10.15.

Please only use the latest release if you really want to give it a shot. Currenlty in alpha. I would also recommend using the -s flag if you do give it a shot. This skips collecting hashes for all files and reduces the runtime a lot. Gotta flip the logic to make this default but time is short right now.

Usage

usage: ./macos-ir.sh [-h | collect | analysis] [-options]

	-h    - Show this message

collect:
	-s    - Skip reading permissions of files and generating hashes.
		  Reduces overall execution time.
		    
	-u    - Copy extracted data to provided USB drive. 
		  Provided USB will be erased.

	-d    - Copy extracted data to a disk image. 
		  Disk image generated and encrypted using APFS

	-n    - Transfer collected data to another device using nc. 
		  Takes IP and port in format IP Address:Port

analysis:
	-u    - Analyse data stored on an external drive. 
		  Provide only USB name.

	-d    - Analyse data stored on a disk image.
		  Provide only disk image path.

	-n    - Receive collected data from nc. 
		  Takes only listening port.

	-i    - Install analysis tools. 
		  Installs XCode Tools and a range of other tools that are
		  required for analysis (using Homebrew).

Example:
	Collect and transmit using nc to localhost port 5555:
		./macos-ir collect -n 127.0.0.1:5555
	Receive data using nc:
		./macos-ir analysis -n 5555

	Collect, skipping file hashes, and store on usb:
		./macos-ir collect -s -u myUSB
		
	Analyse data that was saved to a disk image:
		./macos-ir analysis -d ~/Path to folder/output.dmg

Full Disk Access (FDA) should be granted to Terminal.app on the compromised device before collection is started. This is to allow for collecting some data such as Safari browser history and downloads.

Collection

This tool will collect data from a compromised device. This data includes:

Collected Data
System Hostname, Software Version, Kernel Information, Uptime, Serial Number
Network ifconfig Output, ARP Table
Disk Mounted Disks and Volumes
Security SIP Status, EFI Integrity, MRT Version, Firewall Status, XProtect Version, Pending Updates, FileVault Status, Firmware Password Status
Application Installed Applications, Signing Status, Install History, Running Processes, Hash of Executables
User List of Users, Hidden Files, Login History, Sudo Users
File File Permissions, File Paths, Created Modified Accessed Dates Per File
Launch Cron Jobs, System and User Launch Agents and Daemons
Browser History and Downloads for Safari, Firefox and Chrome

To collect the data, there is no requirement for any tools to be installed. If Xcode CLI Tools are installed, then stapler can be used to check notarization. If these tools aren't installed, it's all good, it just won't do that which isn't the end of the world.

Extraction

Data can be saved in one of the following methods:

  • Save to local disk image (-d)
  • Save to USB drive (-u)
  • Transfer over the network using netcat (-n)

It should be noted that when transferring over the network, the other device should execute the script with analysis -n and this will receive and handle the data

Analysis

Before analysis begins, tools need to be installed. These are installed using Homebrew with the Brewfile in this repository. Xcode Tools is also installed using xcode-select.

The aim of the analysis is to handle all of the data and analyse it. The data is then output to PDF files using wkhtmltopdf.

These files aren't aimed to give the answer as to what the incident is, i.e it is this malware. It is merely meant to be used as an aid to narrow it down. This is still under development, and at a later date ideally it can be used to go into further detail and attempt to specify the malware.

Feedback

Feedback is certainly welcome. If you have any issues or suggestions, feel free to let me know. I kinda suck at bash and this definitely isn't as efficient as it could be (working on it), but yeah. If you have any issues then please feel free to create one, a template has been created.

Work In Progress Shellcheck Lint (WIP)

During development, the wip branch is used. The current build status for this branch is reflected in the badge above.

Things I Wanna Add

Check this issue #1 for a list of things I'm wanting to work on/add

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].