A modular forensic analysis tool developed for MacOS systems. Equipped with rapid deployment and system imaging capabilities for incident response.
- π§ Modular Architecture: Separate modules for each analysis type
- β‘ Quick Setup: Single command installation and execution
- π Two Analysis Modes: Lite (quick analysis) and Full (complete imaging)
- π Automatic Reporting: Detailed reports in HTML and JSON formats
- π Real-time Analysis: System status and change tracking
- π Security-Focused: Read-only operations, data integrity preserved
- Hardware information (CPU, RAM, Disk)
- Operating system details
- System configuration
- Environment variables
- Filesystem structure
- File hashes (MD5, SHA256)
- Timestamps
- Deleted file recovery (basic)
- RAM status and usage
- Kernel modules
- Memory mapping
- Swap status
- Active connections (IPv4/IPv6)
- Routing table
- DNS information
- Firewall rules
- System logs
- Application logs
- Security logs
- Crash logs
- Running processes
- Process details
- System services
- Open files
- User accounts
- Group information
- Permission levels
- Session information
- File timeline
- System events
- User activities
- macOS 10.15 or higher
- Python 3.8+
- Root/Administrator privileges
- Clone the repository:
git clone https://github.com/silexi/stforensicmacos.git
cd stforensicmacos
- Install dependencies:
pip3 install -r requirements.txt
- Run:
sudo python3 main.py --mode lite
# Quick analysis (Lite mode)
sudo python3 main.py --mode lite --output ./reports
# Full analysis (Full mode)
sudo python3 main.py --mode full --output ./reports
# Run specific modules
sudo python3 main.py --modules system_info,filesystem,network --output ./reports
# Generate HTML report
sudo python3 main.py --mode lite --output ./reports --format html
python3 main.py [OPTIONS]
Options:
--mode TEXT Analysis mode: lite or full [default: lite]
--modules TEXT Modules to run (comma-separated)
--output TEXT Report output directory [default: ./reports]
--format TEXT Report format: json, html [default: json]
--verbose, -v Verbose output
--no-hash Skip hash calculations
--config TEXT Configuration file path
--help Show this message
# Quick system analysis
sudo python3 main.py --mode lite --output ./forensic_reports
# Network analysis only
sudo python3 main.py --modules network --output ./network_analysis
# Full analysis + HTML report
sudo python3 main.py --mode full --output ./full_analysis --format html
# Specific modules with verbose output
sudo python3 main.py --modules system_info,processes,users --verbose --output ./detailed_analysis
Structured data format containing all analysis results.
Modern, interactive web-based report:
- Module-based tables
- Search and filtering
- Responsive design
- Detailed data viewing
- Root Privileges: This tool requires root/administrator privileges
- Read-Only: Original data is never modified
- Hash Verification: SHA256 hashes for report files
- Data Integrity: All operations in read-only mode
stforensicmacos/
βββ main.py # Main application
βββ requirements.txt # Python dependencies
βββ README.md # This file
βββ LICENSE # MIT License
βββ .gitignore # Git ignore rules
βββ project_details.json # Project details
βββ roadmap.md # Development roadmap
βββ src/ # Source code
β βββ core/ # Core modules
β β βββ config.py # Configuration management
β β βββ forensic_engine.py # Main analysis engine
β β βββ logger.py # Logging system
β βββ modules/ # Forensic modules
β β βββ base_module.py
β β βββ system_info.py
β β βββ filesystem.py
β β βββ memory.py
β β βββ network.py
β β βββ logs.py
β β βββ processes.py
β β βββ users.py
β β βββ timeline.py
β βββ reporters/ # Reporters
β β βββ json_reporter.py
β β βββ html_reporter.py
β βββ utils/ # Helper functions
β βββ helpers.py
βββ static/ # Static files
βββ templates/ # HTML templates
βββ test_reports/ # Test reports
- Fork this repository
- Create a feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the MIT License. See the LICENSE file for details.
This tool is designed for educational and legal forensic analysis purposes only. Users are responsible for complying with local laws and regulations when using this tool.
- Project Link: https://github.com/silexi/stforensicmacos
- Issues: GitHub Issues
This project is inspired by the following open source projects:
β Don't forget to star this project if you like it!