DEV Community

Cover image for Finding Exposed Services (and Vulnerabilities) on Your Network: A Practical ScanSearch Guide
Billy
Billy

Posted on

Finding Exposed Services (and Vulnerabilities) on Your Network: A Practical ScanSearch Guide

Ever wondered what services on your network are truly exposed to the internet? Or perhaps you're trying to track down a specific type of device across your public-facing infrastructure? Manually scanning port by port across a large IP range can be tedious, slow, and often misses the bigger picture.

This article isn't about setting up a traditional port scanner. Instead, we're going to explore how to leverage an internet-wide search engine for network devices and services, ScanSearch, to quickly identify and understand the public-facing footprint of your network. Think of it like Google, but for servers, routers, cameras, and everything else connected to the internet.

We'll cover practical use cases, including:

  • Identifying unintentionally exposed services.
  • Searching for specific device types or software versions.
  • Spotting known vulnerabilities associated with your infrastructure.

Let's dive in.

The Problem: Blind Spots in Your Public-Facing Infrastructure

It's common for development or operations teams to configure services, sometimes forgetting that a default configuration or an overlooked firewall rule might leave something accessible that shouldn't be. This isn't just about malicious actors; it's also about maintaining good security hygiene and understanding your own attack surface.

Traditional internal network scans are crucial, but they don't always give you the external perspective. That's where a tool like ScanSearch comes in – it's constantly indexing the internet's public-facing devices.

Getting Started with ScanSearch

ScanSearch offers a powerful search syntax. The most straightforward way to begin is by searching for your organization's public IP ranges or domain names. For this tutorial, I'll use example.com and a hypothetical IP range, but you should substitute these with your own public IPs or domains.

Use Case 1: Discovering All Services on Your IP Range

Let's say your organization uses the IP range 203.0.113.0/24. To see everything ScanSearch has indexed for this range, you'd simply enter:

ip:203.0.113.0/24
Enter fullscreen mode Exit fullscreen mode

This query will return a list of all devices, services, and associated information (like open ports, banners, and even HTTP response headers) found within that IP range. You might be surprised at what pops up – maybe an old development server you thought was offline, or a service running on a non-standard port.

Use Case 2: Finding Specific Device Types or Software Versions

Perhaps you're concerned about older versions of Apache or Nginx that might still be running. You can combine the IP range with a keyword search for specific banners or technologies. For example, to find all Apache servers on our hypothetical range:

ip:203.0.113.0/24 product:apache
Enter fullscreen mode Exit fullscreen mode

Or, to get more specific and look for an older, potentially vulnerable version (e.g., Apache 2.2):

ip:203.0.113.0/24 product:apache/2.2
Enter fullscreen mode Exit fullscreen mode

This quickly highlights potential upgrade candidates or misconfigurations.

Use Case 3: Identifying Known Vulnerabilities on Your Infrastructure

ScanSearch also indexes publicly known vulnerabilities (CVEs) associated with identified services. This is incredibly powerful for proactively assessing risk.

Let's say you want to see if any of your devices on example.com are running services with known vulnerabilities:

host:example.com has_vulnerability:true
Enter fullscreen mode Exit fullscreen mode

This query would return any hosts under example.com where ScanSearch has identified a service with an associated, known vulnerability. You can then drill down into the results to see the specific CVEs and affected services. This is a critical step in prioritizing patching and mitigation efforts.

Pro-tip: You can also search directly for a specific CVE. If you're tracking a new, critical vulnerability, you could search cve:CVE-2023-XXXX to see if it appears anywhere on your network.

Use Case 4: Searching for Default Credentials or Common Misconfigurations

While ScanSearch doesn't actively exploit systems, its indexing of service banners and HTTP responses can sometimes reveal clues about weak configurations. For instance, you might look for common default administrative interfaces or specific keywords that indicate a lack of proper setup.

ip:203.0.113.0/24 title:"admin panel" 
Enter fullscreen mode Exit fullscreen mode

Or, looking for specific HTTP response bodies:

ip:203.0.113.0/24 http.body:"Powered by WordPress"
Enter fullscreen mode Exit fullscreen mode

While not a direct vulnerability, finding an exposed WordPress admin panel on a public IP range you own is certainly something you'd want to investigate further.

Beyond Simple Queries: Combining Filters

The real power of ScanSearch comes from combining these filters. You can search for specific ports, protocols, HTTP headers, and much more. For example, to find all devices on your range running an SSH server (port 22) that also have a known vulnerability:

ip:203.0.113.0/24 port:22 has_vulnerability:true
Enter fullscreen mode Exit fullscreen mode

This quickly narrows down your focus to the most critical issues.

Conclusion

Understanding your external attack surface is a fundamental part of maintaining secure infrastructure. Tools like ScanSearch provide an invaluable perspective by indexing the entire internet, allowing you to quickly query and identify exposed services, potential misconfigurations, and known vulnerabilities associated with your own public-facing assets.

Instead of endless manual scans, integrate ScanSearch into your regular security audits. It's a powerful way to catch those overlooked services and proactively address potential risks before they become a problem. Give it a try with your own public IP ranges and domains – you might be surprised at what you find.

Top comments (0)