Attack-surface drift is a comparison problem. Store a normalized baseline, collect the same fields on the next run, and review meaningful additions, removals, and changes.

Requirements

  • FullHunt API access
  • Python 3.10 or later with requests
  • A domain you own or are authorized to monitor

Create or compare a baseline

detect_drift.py

Review policy

  • Added: Confirm ownership, intended exposure, environment, and owner.
  • Removed: Confirm decommissioning rather than assuming remediation.
  • Changed: Compare ports, services, products, IPs, and certificates before escalating.
OEM integrations can add /oem/historical-hosts/search and /oem/alerts/search as evidence. Enterprise integrations can add /enterprise/alerts and /enterprise/certificates. Store timestamps and record identifiers with the baseline so each change is reproducible.