{
  "name": "isyoursitesafe.com check set",
  "version": "v1.0",
  "url": "https://isyoursitesafe.com/checks",
  "total": 61,
  "free_label": "14 of 61 checks",
  "free_marked": 14,
  "free_pending": 0,
  "free_shows": "score + finding titles + severity",
  "safe_profile": "Safe Profile default throughout; T3+ gated by per-asset opt-in.",
  "groups": [
    {
      "id": "A",
      "title": "DNS & identity",
      "tier": "T0 passive",
      "scope": "All paid reports. Items marked Free also run on the free check.",
      "count": 12,
      "checks": [
        {
          "n": 1,
          "title": "SPF record present",
          "free": true
        },
        {
          "n": 2,
          "title": "SPF lookup-count ≤10",
          "free": true
        },
        {
          "n": 3,
          "title": "SPF syntax valid",
          "free": false
        },
        {
          "n": 4,
          "title": "DKIM selectors live",
          "free": false
        },
        {
          "n": 5,
          "title": "DMARC policy present",
          "free": true
        },
        {
          "n": 6,
          "title": "DMARC policy strength (p=reject/quarantine/none)",
          "free": true
        },
        {
          "n": 7,
          "title": "DMARC rua/ruf reporting",
          "free": false
        },
        {
          "n": 8,
          "title": "MX hosts resolve",
          "free": false
        },
        {
          "n": 9,
          "title": "DNSSEC status",
          "free": false
        },
        {
          "n": 10,
          "title": "CAA records present",
          "free": false
        },
        {
          "n": 11,
          "title": "Subdomain CNAME targets unclaimed (takeover CANDIDATES — report only, never claim)",
          "free": false
        },
        {
          "n": 12,
          "title": "DNS vs web host mismatch map (who actually controls what)",
          "free": false
        }
      ]
    },
    {
      "id": "B",
      "title": "Certificates & TLS",
      "tier": "T1",
      "scope": "All paid reports. Items marked Free also run on the free check.",
      "count": 9,
      "checks": [
        {
          "n": 13,
          "title": "Cert valid + expiry window",
          "free": true
        },
        {
          "n": 14,
          "title": "Issuer/chain completeness",
          "free": false
        },
        {
          "n": 15,
          "title": "Protocol versions (TLS 1.2+ only)",
          "free": false
        },
        {
          "n": 16,
          "title": "Weak cipher suites",
          "free": false
        },
        {
          "n": 17,
          "title": "Certificate transparency log coverage",
          "free": false
        },
        {
          "n": 18,
          "title": "Mixed-content presence",
          "free": true
        },
        {
          "n": 19,
          "title": "HSTS present + preload eligibility",
          "free": true
        },
        {
          "n": 20,
          "title": "Revocation endpoints reachable",
          "free": false
        },
        {
          "n": 21,
          "title": "www/apex + common SAN coverage",
          "free": false
        }
      ]
    },
    {
      "id": "C",
      "title": "HTTP headers & cookies",
      "tier": "T1",
      "scope": "All paid reports. Items marked Free also run on the free check.",
      "count": 8,
      "checks": [
        {
          "n": 22,
          "title": "CSP present/strictness",
          "free": true
        },
        {
          "n": 23,
          "title": "X-Content-Type-Options",
          "free": false
        },
        {
          "n": 24,
          "title": "X-Frame-Options / frame-ancestors",
          "free": false
        },
        {
          "n": 25,
          "title": "Referrer-Policy",
          "free": false
        },
        {
          "n": 26,
          "title": "Permissions-Policy",
          "free": false
        },
        {
          "n": 27,
          "title": "Cookie flags (Secure/HttpOnly/SameSite)",
          "free": true
        },
        {
          "n": 28,
          "title": "Server banner leakage",
          "free": false
        },
        {
          "n": 29,
          "title": "Redirect chain hygiene (http→https, canonical)",
          "free": true
        }
      ]
    },
    {
      "id": "D",
      "title": "Content & leakage crawl",
      "tier": "T1 crawl",
      "scope": "All paid reports. Crawl depth: ~12 pages on the free check, 75 on Site Report, 250 on Complete.",
      "count": 10,
      "checks": [
        {
          "n": 30,
          "title": "Emails exposed on page",
          "free": true
        },
        {
          "n": 31,
          "title": "Filepath leakage",
          "free": false
        },
        {
          "n": 32,
          "title": ".git/.env/.bak exposure",
          "free": true
        },
        {
          "n": 33,
          "title": "Backup/archive file exposure",
          "free": false
        },
        {
          "n": 34,
          "title": "Directory listing on",
          "free": false
        },
        {
          "n": 35,
          "title": "robots.txt disclosed admin paths",
          "free": false
        },
        {
          "n": 36,
          "title": "Sitemap exposure of staging/dev hosts",
          "free": false
        },
        {
          "n": 37,
          "title": "Comments/forms leaking PII",
          "free": false
        },
        {
          "n": 38,
          "title": "Error-page stack traces",
          "free": false
        },
        {
          "n": 39,
          "title": "Third-party script inventory (count + known-sketchy list)",
          "free": true
        }
      ]
    },
    {
      "id": "E",
      "title": "Fingerprint",
      "tier": "T2/T3",
      "scope": "Site Report and Complete. T3 fingerprinting runs only with your per-asset opt-in.",
      "count": 7,
      "checks": [
        {
          "n": 40,
          "title": "CMS detection + version",
          "free": false
        },
        {
          "n": 41,
          "title": "Known-CMS version vs advisory feeds",
          "free": false
        },
        {
          "n": 42,
          "title": "Plugin/theme enumeration (WP)",
          "free": false
        },
        {
          "n": 43,
          "title": "Server/software version disclosure",
          "free": false
        },
        {
          "n": 44,
          "title": "Open ports map (rate-limited Safe Profile)",
          "free": false
        },
        {
          "n": 45,
          "title": "Service banners on open ports",
          "free": false
        },
        {
          "n": 46,
          "title": "Default pages / default credentials pages",
          "free": false
        }
      ]
    },
    {
      "id": "F",
      "title": "E-commerce & third-party",
      "tier": "Complete",
      "scope": "Complete.",
      "count": 6,
      "checks": [
        {
          "n": 47,
          "title": "Checkout third-party scripts (card-data proximity)",
          "free": false
        },
        {
          "n": 48,
          "title": "Known Magecart-class skimming patterns",
          "free": false
        },
        {
          "n": 49,
          "title": "Payment page header/iframe hygiene",
          "free": false
        },
        {
          "n": 50,
          "title": "Cookie consent vs actual scripts",
          "free": false
        },
        {
          "n": 51,
          "title": "CDN/WAF presence + misconfig tells",
          "free": false
        },
        {
          "n": 52,
          "title": "Webhook/return-URL exposure",
          "free": false
        }
      ]
    },
    {
      "id": "G",
      "title": "AI surface",
      "tier": "Complete",
      "scope": "Complete. Item 58 also runs on the free check, as a presence check only.",
      "count": 6,
      "checks": [
        {
          "n": 53,
          "title": "AI/chatbot endpoint inventory (AIMAP-style)",
          "free": false
        },
        {
          "n": 54,
          "title": "Endpoint vs expected auth controls",
          "free": false
        },
        {
          "n": 55,
          "title": "llms.txt/agent files present + consistent",
          "free": false
        },
        {
          "n": 56,
          "title": "Model-API key leakage in JS",
          "free": false
        },
        {
          "n": 57,
          "title": "Prompt-injection posture of public chat (firewall presence)",
          "free": false
        },
        {
          "n": 58,
          "title": "Agent/MCP endpoints exposed unauthenticated",
          "free": true,
          "free_note": "presence only"
        }
      ]
    },
    {
      "id": "H",
      "title": "Posture & reports",
      "tier": "Reports",
      "scope": "Paid reports.",
      "count": 3,
      "checks": [
        {
          "n": 59,
          "title": "Blocklist/reputation status (cited + linked, never reproduced — vendor-licence rule)",
          "free": false
        },
        {
          "n": 60,
          "title": "Breach-exposure summary (HIBP-domain class, only with verified control)",
          "free": false
        },
        {
          "n": 61,
          "title": "Point-in-time attestation record (scan hash, scope, limitations)",
          "free": false
        }
      ]
    }
  ]
}
