External Recon

What are we looking for?

Data Point

Description

IP Space

Valid ASN for our target, netblocks in use for the organization's public-facing infrastructure, cloud presence and the hosting providers, DNS record entries, etc.

Domain Information

Based on IP data, DNS, and site registrations. Who administers the domain? Are there any subdomains tied to our target? Are there any publicly accessible domain services present? (Mailservers, DNS, Websites, VPN portals, etc.) Can we determine what kind of defenses are in place? (SIEM, AV, IPS/IDS in use, etc.)

Schema Format

Can we discover the organization's email accounts, AD usernames, and even password policies? Anything that will give us information we can use to build a valid username list to test external-facing services for password spraying, credential stuffing, brute forcing, etc.

Data Disclosures

For data disclosures we will be looking for publicly accessible files ( .pdf, .ppt, .docx, .xlsx, etc. ) for any information that helps shed light on the target. For example, any published files that contain intranet site listings, user metadata, shares, or other critical software or hardware in the environment (credentials pushed to a public GitHub repo, the internal AD username format in the metadata of a PDF, for example.)

Breach Data

Any publicly released usernames, passwords, or other critical information that can help an attacker gain a foothold.

Where are we looking?

Resource

Examples

ASN / IP registrars

IANAarrow-up-right, arinarrow-up-right for searching the Americas, RIPEarrow-up-right for searching in Europe, BGP Toolkitarrow-up-right

Domain Registrars & DNS

Domaintoolsarrow-up-right, PTRArchivearrow-up-right, ICANNarrow-up-right, manual DNS record requests against the domain in question or against well known DNS servers, such as 8.8.8.8.

Social Media

Searching Linkedin, Twitter, Facebook, your region's major social media sites, news articles, and any relevant info you can find about the organization.

Public-Facing Company Websites

Often, the public website for a corporation will have relevant info embedded. News articles, embedded documents, and the "About Us" and "Contact Us" pages can also be gold mines.

Breach Data Sources

HaveIBeenPwnedarrow-up-right to determine if any corporate email accounts appear in public breach data, Dehashedarrow-up-right to search for corporate emails with cleartext passwords or hashes we can try to crack offline. We can then try these passwords against any exposed login portals (Citrix, RDS, OWA, 0365, VPN, VMware Horizon, custom applications, etc.) that may use AD authentication.


Finding Address Space

The BGP-Toolkit hosted by Hurricane Electricarrow-up-right is a fantastic resource for researching what address blocks are assigned to an organization and what ASN they reside within

DNS

DNS is a great way to validate our scope and find out about reachable hosts the customer did not disclose in their scoping document. Sites like domaintoolsarrow-up-right, and viewdns.infoarrow-up-right are great spots to start.

Public Data

A sample scenario is if we found a Sharepoint admin job listing, we may see that they are using Sharepoitn 2013/2016 which is outdated. With this, we might see outdated sharepoint versions that has more vulnerabilities.

Another example is, we might see some github devs probably leave credentials or notes in their releases.

Tools like Trufflehogarrow-up-right and sites like Greyhat Warfarearrow-up-right are fantastic resources for finding these breadcrumbs.


Sample Enumeration

  1. Check for ASN/IP & Domain Data in he.net (BGP Toolkit)

    • IP Address: 134.209.24.248

    • Mail Server: mail1.inlanefreight.com

    • Nameservers: NS1.inlanefreight.com & NS2.inlanefreight.com

  2. Use viewdns.info to validate the IP address from step 1. Since it matches, it is a good sign.

  3. Let's try to validate the 2 nameservers

  4. In the output above, we can see 2 IP addresses which we can also take note.

  5. We would check sites like LinkedIn, Twitter, Instagram, and Facebook for helpful info if it were a real company.

  6. Next, we hunt for files using google dorks filetype:pdf inurl:inlanefreight.com

  7. We can also hunt for email addresses intext:"@inlanefreight.com" inurl:inlanefreight.com

  8. We can use linkedin2usernamearrow-up-right to scrape data from hte company's linkedin page and generate a username using flast, first.last, f.last, etc. format

  9. We can also used Dehashedarrow-up-right to check for credentials from data breaches

Last updated