Shodan Attack Surface Posture Report
Delivers a weekly report on what Shodan indexes across the organization's network ranges, with new services, Shodan Monitor coverage and triggers, and anything that needs attention.
What this agent does
This read-only agent reports every week on what Shodan indexes across the organization's public addresses. It counts the hosts and services Shodan holds for the organization's ranges and names and lists the services that appeared and are no longer indexed since last week. It reads the Shodan Monitor network alerts, checks that they cover every public range and address the organization owns, and summarizes the trigger notifications that arrived at the notifier I connect. It flags anything that needs an admin, such as a new open database, an expired certificate, or a range with no monitor.
The challenge
Shodan Monitor sends an email for every trigger, and the emails go to a mailbox nobody reads. A new cloud account adds public addresses that no monitor covers, so Shodan indexes them and nobody is told. The triggers fire, the index grows, and the only record is a mailbox.
The solution
The agent reads the indexed hosts, the monitor alerts, and the trigger notifications in one pass each week and compares them with the previous week. It compares the monitored ranges with the public addresses in the cloud accounts and lists the gaps. It lists what changed and what someone needs to act on, with the fix for each item. Provides a weekly briefing an attack surface owner reads in a few minutes.
Workflow
- 01
Read the index
Search Shodan for the organization's ranges and names, count the hosts and services, and compare with last week to list additions and services no longer indexed.
- 02
Read monitors
Read the Shodan Monitor network alerts, their ranges, and their enabled triggers, and the trigger notifications since last week from the webhook or Slack notifier I connect.
- 03
Check coverage
Compare the monitored ranges with the public addresses in the cloud accounts I connect, and list the addresses with no monitor.
- 04
Report
Publish what changed and what needs action, with the fix for each item.
Agent template
# Shodan Attack Surface Posture Report
## Measurable outcomes
Every week, the attack surface owner knows what Shodan indexed, what changed, which triggers fired, and which public addresses no monitor covers. Track the indexed host and service counts, the uncovered address count, and the open action items on every run.
## Procedure
Once a week, search Shodan for the network ranges, hostnames, and certificate subject names I configure, and count the hosts and services. Compare with last week's result and list the services added and the services no longer indexed, grouped by port and product. A service no longer indexed is one Shodan has stopped seeing, and that lags the real closure by days or weeks. Flag any new service on a database, remote access, or management port. Read the Shodan Monitor network alerts with the ranges each one covers and the triggers enabled on it. Flag any alert without the open database, malware, vulnerable, expired certificate, and new service triggers enabled, unless I set another list. Shodan does not keep a history of fired triggers, so read the trigger notifications since last week from the webhook or Slack notifier I connect, summarize them by type and by range, and report trigger history as not checked when no notifier is connected. When I grant read-only access to the cloud accounts, list the public addresses and ranges they hold, and list each address that no monitor covers. List the hosts whose certificate expires within 30 days or has expired. Compare everything with last week's report, and lead with what changed. Give every action item the specific fix, such as add a monitor, enable a trigger, or close a service. Report a check it cannot run as not checked, never as fine.
## Requirements
It needs a Shodan API key on a plan with search filters and Shodan Monitor, optional read access to the webhook or Slack notifier that receives the trigger notifications, and optional read-only access to the cloud accounts for the coverage comparison, and nothing more. It never requests an on-demand scan from Shodan, and it never creates or changes a monitor, a trigger, a notifier, or any asset. Reports show ports, products, trigger types, and counts. Addresses and hostnames appear as stable pseudonyms in the summary and in full in the ticket for each action item. Related templates
-
Aikido Posture Report
Delivers a weekly report on Aikido coverage, what changed, and anything in the workspace that needs attention, from failing scans to plan limits.
Reporting and Compliance / Vulnerability Management 4 tools -
AWS Resource Logging and Delivery
Identifies the AWS log sources in an account that are not enabled or not delivering logs.
Reporting and Compliance / Infrastructure Operations 1 tools -
AWS Security Hub CSPM Posture Report
Delivers a weekly report on Security Hub CSPM coverage across your accounts and regions, what changed in the findings, and anything in the configuration that needs an admin, from disabled controls to broken product integrations.
Reporting and Compliance / Vulnerability Management 2 tools -
Azure DevOps Advanced Security Posture Report
Delivers a weekly report on Advanced Security coverage across an Azure DevOps organization, what changed, and anything that needs attention.
Reporting and Compliance / Vulnerability Management 1 tools