A shell script that automatically performs a series of *NIX enumeration tasks.
You can install PXEnum directly by cloning the repository with Git, or you can fetch the source code directly with a tool such as wget if Git is unavailable.
Cloning with Git
$ git clone https://github.com/shawnduong/PXEnum
Downloading with wget
$ wget https://raw.githubusercontent.com/shawnduong/PXEnum/master/PXEnum.sh
You can add executability to the shell script and then run it, or you can pass it through the shell interpreter directly.
Method 1: Adding executability and running
$ chmod +x PXEnum.sh
$ ./PXEnum.sh
Method 2: Passing it through the shell interpreter
$ sh PXEnum.sh
- Fixed a bug occurring in the outputting of active/running services.
- Fixed a bug occurring in the default shells of some systems related to unexpected redirections.
- The source code has been completely revamped to improve readability.
- Got rid of colored text output as it was not universal among shells or terminals. All output is now standard without any colorful gimmicks.
- All checks belonging to a section are now done all at once before being displayed together.
- Moved away from using utilities such as lcpci, lscpu, dmidecode, and they've become less universal and sometimes require elevated privileges. Instead, reading from
/proc
or/sys
files has been implemented. - printf alignment has been implemented wherever applicable for easier reading.
- Moved away from cron in favor of systemd timers.
- Moved away from services in favor of systemd services.
- Checks have been revamped. A full list of checks can be found later on in this README.
This script was tested on a custom Arch Linux system. Further testing on a multitude of operating systems is needed to ensure compatibility. Please open up an issue if you find bugs.
Contributions are highly welcomed. Please refer to this guide if you are new to Git and/or need some guidance when it comes to making contributions: https://akrabat.com/the-beginners-guide-to-contributing-to-a-github-project/
The following is a full list of checks done by PXEnum.
Basic Information
- Username
- Hostname
- Home Path
- EUID
- EGID
- Groups
- Kernel Name
- Kernel Release
- Kernel Version
- Architecture
- OS Name
Hardware Information
- Product Family
- Product Name
- Product Version
- CPUs and CPU bugs
- RAM Total
- RAM Available
- RAM Free
BIOS Information
- BIOS Vendor
- BIOS Date
- BIOS Version
Users and Groups
- Users
- Users with login shells
- Users with home directories
- Groups
Network Information
- Interfaces
- MAC Addresses
- IP Addresses
- Open Ports
Activity
- Currently Online Users
- Currently Running Processes
- Active Services
- Running Services
Timers
- Timers
/etc/shadow Permissions
- Access
- Owner
- Group
/etc/sudoers Permissions
- Access
- Owner
- Group
Possible SUIDs
- SUIDs
sudo History
- sudo History
SSH Keys
- SSH Keys
Software Versions
- Bash
- sudo
- GCC
- Python 2
- Python 3
- Java
- cURL
- wget
- Ruby