About • Documentation • Main Features • Supported Operating Systems • Usage • Contributing • Support • License
UAC (Unix-like Artifacts Collector) is a powerful and extensible incident response tool designed for forensic investigators, security analysts, and IT professionals. It automates the collection of artifacts from a wide range of Unix-like systems, including AIX, ESXi, FreeBSD, Linux, macOS, NetBSD, NetScaler, OpenBSD and Solaris.
Whether you're handling an intrusion, conducting forensic investigations, or performing compliance checks, UAC simplifies and accelerates data collection while minimizing reliance on external support during critical incidents.
- 📂 Fully customizable via YAML profiles for tailored data collection.
- ⚡ Lightweight, portable, and requires no installation or dependencies.
- 🔒 Adheres to the order of volatility to ensure reliable data acquisition.
- 🛠 Designed for diverse environments, including IoT devices and NAS systems.
Full documentation is available at the project documentation page.
- Run everywhere with no dependencies (no installation required).
- Customizable and extensible collections and artifacts.
- Respect the order of volatility during artifact collection.
- Collect information about current running processes (including processes without a binary on disk).
- Hash running processes and executable files.
- Extract files and directories status to create a bodyfile.
- Collect system and user-specific data, configuration files, and logs.
- Acquire volatile memory from Linux systems using different methods and tools.
UAC runs on any Unix-like system, regardless of the processor architecture. All UAC needs is shell :)
Note: UAC even runs on systems like Network Attached Storage (NAS) devices, Network devices such as OpenWrt, and IoT devices.
UAC does not need to be installed on the target system. Simply download the latest version from the releases page, uncompress it, and launch. It's that simple!
- Download the latest release from the Releases page.
- Uncompress the archive.
- Execute the tool directly from the terminal.
Click to view usage examples
Collect all artifacts based on the ir_triage profile:
./uac -p ir_triage /tmp
Collect memory dump and all artifacts based on the full profile:
./uac -a ./artifacts/memory_dump/avml.yaml -p full /tmp
Collect all artifacts excluding a specific one:
./uac -p full -a \!artifacts/bodyfile/bodyfile.yaml .
Collect all artifacts based on the ir_triage profile, along with all artifacts located in the /my_custom_artifacts directory:
./uac -p ir_triage -a /my_custom_artifacts/\* /mnt/sda1
Collect all artifacts based on a custom profile:
./uac -p /my_custom_uac_data/my_custom_uac_profile.yaml /tmp
Contributions make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
Have you created any artifacts? Please share them with us!
You can contribute with new artifacts, profiles, bug fixes, or propose new features. Please read our Contributing Guide before submitting a Pull Request to the project.
For general help using UAC, please refer to the project documentation page. For additional help, you can use one of the following channels:
- Discord (For live discussion with the community and UAC team)
- GitHub (Bug reports and contributions)
- Twitter (Get the news fast)
If you find UAC helpful, please give us a ⭐ on GitHub! This helps others discover the project and motivates us to improve it further.
The UAC project uses the Apache License Version 2.0 software license.