Post

Just Inherited A Network No Documentation The Admin Password Is Password123

Just Inherited A Network No Documentation The Admin Password Is Password123

1. Introduction

You walk into your first day as the sole IT administrator for a 150-person company. The server room is an unmarked closet filled with tangled cables. The previous admin vanished without leaving diagrams, passwords, or documentation. Your first breakthrough comes when you guess the domain admin password is “Password123” – and it works. This terrifying scenario is more common than most organizations admit.

In enterprise networks and homelab environments alike, undocumented infrastructure creates massive security risks and operational inefficiencies. According to Cybersecurity Ventures, 80% of network breaches stem from weak or reused passwords. Meanwhile, Gartner estimates that IT teams waste 30% of their time troubleshooting due to poor documentation.

This comprehensive guide will walk you through:

  • Emergency security remediation for compromised credentials
  • Network discovery techniques without documentation
  • Automated documentation tools for infrastructure
  • Password management best practices
  • Long-term network hardening strategies

We’ll focus on practical, vendor-agnostic solutions using open-source tools that scale from homelabs to enterprise environments. You’ll learn how to transform a chaotic network into a documented, secure infrastructure using DevOps principles and infrastructure-as-code methodologies.

2. Understanding Network Documentation and Security

The Documentation Crisis

Network documentation encompasses:

  • Physical topology: Device locations, cabling, power
  • Logical topology: VLANs, subnets, routing
  • Asset inventory: Hardware/software configurations
  • Security baseline: Firewall rules, access controls
  • Operational procedures: Backup schedules, maintenance

Without documentation, organizations face:

  1. Security vulnerabilities (like default credentials)
  2. Extended downtime during outages
  3. Compliance violations (HIPAA, PCI-DSS, GDPR)
  4. Knowledge silos when staff depart

Password Security Fundamentals

The “Password123” scenario violates multiple security principles:

  • Password complexity: Minimum 12 characters with mixed character sets
  • Password rotation: 90-day expiry for privileged accounts
  • Credential segregation: Different passwords per device/service
  • Multi-factor authentication: Required for administrative access

Network Discovery Approaches

When documentation is missing, use these methods:

MethodToolsUse Case
Passive discoveryWireshark, tcpdumpStealthy observation
Active scanningNmap, SNMP walkFast inventory
Configuration parsingOxidized, RANCIDDevice config backup
API-basedNetBox, phpIPAMIPAM integration

3. Prerequisites

Emergency Response Toolkit

Before making network changes, assemble these tools:

  1. Bootable USB drive with:
  2. Portable console cable (USB-to-RS232 with Cisco/HP adapters)
  3. Network tap or SPAN port configuration access

Software Requirements

  • Network scanner: nmap 7.92+
  • SNMP tools: snmpwalk 5.9+
  • Configuration management: Ansible 4.10+
  • Documentation platform: NetBox 3.5+

Security Precautions

  1. Create an isolated jump host for scanning
  2. Document all changes before implementation
  3. Notify stakeholders of potential service interruptions
  4. Verify backups before modifying devices

4. Emergency Network Triage

Step 1: Contain Credential Exposure

Immediately change compromised passwords using offline hash modification for domain controllers:

1
2
3
4
5
6
7
8
# On Windows Domain Controller (elevated CMD):
ntdsutil "ac i ntds" "ifm" "create full C:\temp\ndtsbackup" q q

# Extract hashes with secretsdump.py (Impacket):
python3 secretsdump.py -system SYSTEM -ntds ntds.dit LOCAL -outputfile domain_hashes

# Identify admin accounts:
grep -a 'Administrator' domain_hashes.ntds

Rotate all passwords matching these hashes. For network devices, use Ansible emergency playbook:

1
2
3
4
5
6
7
8
9
10
11
12
---
- name: Emergency password rotation
  hosts: network_devices
  gather_facts: no
  vars:
    new_password: ""
  tasks:
    - name: Change enable password on Cisco devices
      cisco.ios.ios_config:
        commands:
          - enable secret ""
        save_when: always

Step 2: Network Discovery

Perform Layer 2 discovery with CDP/LLDP:

1
2
3
4
5
# Capture neighbor data from Cisco switches:
ansible switches -m cisco.ios.ios_command -a "commands='show cdp neighbor detail'" -o

# Parse LLDP data on Linux:
sudo lldpcli show neighbors

Conduct full IP sweep with Nmap:

1
2
nmap -sn 192.168.0.0/24 -oN live_hosts.txt
nmap -sV -sC -p- -iL live_hosts.txt -oA full_scan --min-rate 1000

Step 3: Document Findings

Import results into NetBox using Python script:

1
2
3
4
5
6
7
8
9
10
11
12
13
import requests
from netbox import NetBox

nb = NetBox(host='netbox.example.com', api_token='API_TOKEN')

with open('full_scan.xml') as scan_file:
    for host in parse_nmap(scan_file):
        nb.dcim.devices.create(
            name=host['hostname'],
            device_type=identify_model(host['os']),
            site=find_site(host['ip']),
            primary_ip4=host['ip']
        )

5. Network Hardening Framework

Configuration Standards

Implement device hardening templates:

{# ios_hardening.j2 #}
no ip http server
no ip http secure-server
service password-encryption
enable secret 
access-list 22 permit 
line vty 0 4
 access-class 22 in
 transport input ssh

Apply via Ansible:

1
2
3
- name: Harden Cisco devices
  cisco.ios.ios_config:
    src: "templates/ios_hardening.j2"

Password Management

Deploy Hashicorp Vault with SSH OTP:

1
2
3
4
5
6
# Configure Vault SSH secrets engine:
vault secrets enable ssh
vault write ssh/roles/otp_key_role key_type=otp default_user=admin cidr_list=10.0.0.0/8

# Generate OTP for network device access:
vault write ssh/creds/otp_key_role ip=192.168.1.1 username=admin

Automated Documentation

NetBox data model for network documentation:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# netbox_data.yml
sites:
  - name: Main Data Center
    slug: main-dc
    physical_address: 123 Example St
devices:
  - name: core-switch-01
    device_type: Cisco C9300
    role: core-switch
    site: main-dc
    interfaces:
      - name: GigabitEthernet1/0/1
        type: 1000base-t
        description: Uplink to firewall

6. Operational Maintenance

Daily Tasks

  • Review authentication logs for brute-force attempts:
1
2
3
4
5
# Linux servers:
journalctl -u sshd | grep 'Failed password'

# Cisco devices:
show logging | include AAA.*Failed
  • Verify backup integrity:
1
2
# Check RANCID config diffs:
git -C /var/lib/rancid/ diff @{yesterday}

Weekly Tasks

  • Audit administrative access:
1
2
# Check domain admin group membership:
Get-ADGroupMember 'Domain Admins' | Export-CSV domain_admins.csv
  • Validate firewall rule compliance:
1
2
# Ansible playbook for firewall audit:
ansible-playbook audit_firewalls.yml --tags compliance

7. Troubleshooting Common Issues

Problem: Intermittent Connectivity

Diagnosis:

1
2
mtr -4zwc 100 8.8.8.8  # IPv4 path analysis
mtr -6zwc 100 2001:4860:4860::8888  # IPv6 path analysis

Solution: Check for asymmetric routing with flow logs:

1
tshark -i eth0 -Y "tcp.analysis.retransmission" -w retransmits.pcap

Problem: Device Configuration Drift

Diagnosis:

1
rancid-run -diff  # Compare running vs archived configs

Solution: Enforce configuration compliance with Ansible:

1
2
3
4
5
- name: Remediate configuration drift
  cisco.ios.ios_config:
    backup: yes
    replace: block
    src: "templates/.cfg"

8. Conclusion

Inheriting an undocumented network with compromised credentials requires methodical triage: contain immediate threats, discover actual infrastructure, implement secure baselines, and establish automated documentation. The tools and workflows demonstrated here turn chaos into operational resilience.

For continued learning:

Remember: Documentation isn’t about creating pretty diagrams - it’s about building institutional memory that survives staff turnover. In your next role interview, ask “What’s your process for network documentation?” The answer will reveal much about their operational maturity.

This post is licensed under CC BY 4.0 by the author.