Stage-1 vertical slice: Pydantic Case model, SQLAlchemy Core persistence, URLhaus Scoutline fetcher, FastAPI/Jinja cockpit (cases list + detail), flat Typer CLI, Result[T, E] type module, structlog config. Architecture in docs/dossier.md; 12-fold style guide in docs/style.md. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
18 KiB
API-Eligible Cyber Threat Reporting & Escalation Platforms
Project purpose: Build a white-hat defensive reporting workflow that can push credible pre-incident or incident intelligence to the right receivers through APIs or structured machine-to-machine channels.
Scope: This document focuses on platforms that support API-based reporting, submission, alert ingestion, or structured intelligence sharing. It excludes direct interaction with criminal forums and excludes sources that only provide manual web forms unless they are still operationally important as a fallback.
Last reviewed: 2026-05-13
1. Recommended Reporting Order
1.1 Normal credible threat against a named organization
- Victim security contact / VDP / security.txt
- National CERT / CSIRT
- Sector ISAC / ISAO
- Law enforcement cyber unit
- Infrastructure provider abuse API
- Threat-intelligence sharing platform
- Sanitized public advisory
1.2 Imminent harm or critical infrastructure
- National CERT / CSIRT
- Victim security team
- Law enforcement cyber unit
- Sector regulator / ISAC
- Infrastructure provider abuse API
- Trusted CTI community
- Public advisory only after mitigation or authority clearance
1.3 Malicious infrastructure, phishing, malware, or botnet indicators
- Platform-specific reporting API
Examples: Cloudflare Abuse Reports API, Spamhaus Submission API, AbuseIPDB, URLhaus, MalwareBazaar, PhishTank, urlscan.io, Google Web Risk, VirusTotal. - CERT / CSIRT
- Affected victim
- MISP / OpenCTI / trusted CTI sharing
- Public sanitized report
2. Tier-1 API Reporting Platforms
These are the strongest fits for automated defensive reporting because they accept machine-readable submissions or support structured threat sharing.
| Priority | Platform | Best for | API / submission capability | Use in workflow |
|---|---|---|---|---|
| 1 | CISA Automated Indicator Sharing (AIS) | Sharing cyber threat indicators with U.S. government and AIS participants | STIX/TAXII bidirectional indicator sharing | High-confidence indicators, especially campaigns, exploited infrastructure, malware IOCs |
| 2 | MISP | Community and private threat-intelligence sharing | REST API, PyMISP, event and attribute creation | Share vetted IOCs, TTPs, victim-agnostic campaign intelligence |
| 3 | OpenCTI | Internal or consortium CTI knowledge base | GraphQL API and connectors | Normalize, enrich, and route intelligence before external disclosure |
| 4 | Cloudflare Abuse Reports API | Abuse hosted behind or involving Cloudflare | API supports submitting abuse reports, viewing report details, and listing reports | Phishing, malware, abusive hosting, malicious domains using Cloudflare services |
| 5 | Spamhaus Submission Portal API | Malicious IPs, domains, URLs, suspicious email content | REST API for suspicious IP/domain/URL/email reports | Reputation/blocklist contribution and takedown-support evidence |
| 6 | AbuseIPDB | Malicious IP reputation | API for reporting and checking abusive IP addresses | Scanner, brute-force, spam, probing, attack-source IP reporting |
| 7 | URLhaus / abuse.ch | Malware distribution URLs | Community API for downloading and submitting malware URLs | Active malware URL reporting and malware-distribution tracking |
| 8 | MalwareBazaar / abuse.ch | Malware sample exchange | Community API for sample upload/download and bulk queries | Malware sample submission and hash enrichment |
| 9 | PhishTank | Phishing URL verification | API for phishing URL status checks; community submission workflow | Phishing verification and enrichment |
| 10 | urlscan.io | URL detonation, phishing/malware page evidence | Submission API to scan URLs and retrieve results | Safe screenshot/evidence generation, IOC enrichment |
| 11 | Google Web Risk Submission API | Unsafe URL submission to Google Safe Browsing ecosystem | Submission API for suspected unsafe URLs; access requires sales/customer-engineer approval | High-scale malicious URL reporting |
| 12 | VirusTotal API | File, URL, domain, IP enrichment and submission | API for file upload, URL scan, reports, and comments | Enrichment and submission to multi-vendor analysis ecosystem |
| 13 | Netcraft Report API | Phishing, malware, suspicious URLs, emails, files | API for automated threat reporting | Brand abuse, phishing, takedown-support reporting |
3. Platform Notes
3.1 CISA Automated Indicator Sharing (AIS)
Type: Government-backed indicator sharing
Best for: High-confidence cyber threat indicators and defensive measures
API style: STIX/TAXII
Good submissions: IPs, domains, URLs, hashes, malware indicators, campaign indicators
Avoid: Victim-identifying details unless necessary and authorized
Operational fit: Use for campaign-level and infrastructure-level reporting, especially when the intelligence may protect multiple organizations.
Source: https://www.cisa.gov/how-automated-indicator-sharing-ais-works
3.2 MISP
Type: Open-source threat-intelligence sharing platform
Best for: Structured CTI sharing inside trusted communities
API style: REST API; PyMISP client
Good submissions: Events, attributes, galaxies, taxonomies, TLP-tagged indicators, sightings
Avoid: Raw stolen data, credentials, or victim-sensitive artifacts without permission
Operational fit: Use as the main trusted-community sharing layer.
Sources:
3.3 OpenCTI
Type: Threat-intelligence platform / knowledge graph
Best for: Internal CTI normalization, enrichment, and case-to-intel routing
API style: GraphQL API
Good submissions: STIX-like entities, observables, reports, relationships, indicators, malware, threat actors
Avoid: Treating OpenCTI itself as the final external reporting destination unless connected to a sharing community
Operational fit: Use as your central intelligence brain before pushing to MISP, CERTs, providers, or reports.
Sources:
3.4 Cloudflare Abuse Reports API
Type: Infrastructure provider abuse reporting
Best for: Phishing, malware, abuse involving Cloudflare-protected assets
API style: REST API
Good submissions: URLs, domains, abuse category, evidence, contact details
Avoid: Large stolen datasets; provide proof and context instead
Operational fit: Use whenever malicious infrastructure resolves through or is protected by Cloudflare.
Sources:
- https://developers.cloudflare.com/api/resources/abuse_reports/
- https://developers.cloudflare.com/fundamentals/reference/report-abuse/submit-report/
3.5 Spamhaus Submission Portal API
Type: Reputation and abuse-intelligence reporting
Best for: Malicious IPs, domains, URLs, suspicious email content
API style: REST API
Good submissions: IPs, domains, URLs, suspicious raw email/source evidence
Avoid: Unverified mass submissions; maintain high-confidence standards
Operational fit: Use for reliable contribution to reputation systems and anti-abuse communities.
Sources:
- https://submit.spamhaus.org/api/
- https://www.spamhaus.org/resource-hub/threat-intelligence/how-to-report-suspicious-activity-to-spamhaus/
3.6 AbuseIPDB
Type: IP reputation and abuse reporting
Best for: Attack-source IP reporting
API style: REST API
Good submissions: Brute force, scanning, spam, exploitation attempts, abusive traffic categories
Avoid: Reporting shared NAT/VPN/cloud IPs without strong evidence
Operational fit: Use as an automated destination for source-IP abuse reports, especially from honeypots, firewalls, and SIEM detections.
Sources:
3.7 URLhaus / abuse.ch
Type: Malware URL exchange
Best for: Active malware distribution URLs
API style: Community API with Auth-Key
Good submissions: URLs directly serving malware payloads
Avoid: Generic phishing pages that do not distribute malware
Operational fit: Use when you can verify a URL is actively distributing malware.
Source: https://urlhaus.abuse.ch/api/
3.8 MalwareBazaar / abuse.ch
Type: Malware sample exchange
Best for: Malware samples, hashes, family tracking
API style: Community API with Auth-Key
Good submissions: Malware samples and related metadata
Avoid: Benign files, sensitive internal documents, or samples that cannot be legally shared
Operational fit: Use after malware handling review, with strict legal and operational controls.
Source: https://bazaar.abuse.ch/api/
3.9 PhishTank
Type: Community phishing clearing house
Best for: Phishing URL verification and community validation
API style: HTTP POST lookup API
Good submissions: Suspected phishing URLs
Avoid: URLs containing victim credentials, tokens, or private data in query strings
Operational fit: Use for phishing intelligence enrichment and community verification.
Sources:
3.10 urlscan.io
Type: URL scanning and investigation platform
Best for: URL detonation, phishing evidence, page screenshots, redirects, IP/domain enrichment
API style: Submission API and search API
Good submissions: Suspicious URLs, phishing pages, malicious landing pages
Avoid: Private internal URLs or sensitive tokens; set scan visibility carefully
Operational fit: Use before provider reporting to create structured, shareable evidence.
Sources:
3.11 Google Web Risk Submission API
Type: Unsafe URL submission into Google’s protection ecosystem
Best for: High-scale phishing/malware URL submissions
API style: Submission API; restricted access
Good submissions: Suspected unsafe URLs that should be evaluated for Safe Browsing protection
Avoid: Assuming access is automatic; Google says access requires contacting sales or a customer engineer
Operational fit: Use when your group has enough volume and quality control to justify access.
Source: https://docs.cloud.google.com/web-risk/docs/submission-api
3.12 VirusTotal API
Type: Multi-vendor malware and URL analysis ecosystem
Best for: URL/file submission, enrichment, analysis reports, community comments
API style: REST API
Good submissions: Suspicious files, URLs, domains, IPs, hashes
Avoid: Uploading confidential files, customer data, private source code, or stolen materials
Operational fit: Use for enrichment and multi-vendor visibility. Use private scanning options if available and appropriate.
Sources:
- https://docs.virustotal.com/docs/api-overview
- https://docs.virustotal.com/reference/overview
- https://docs.virustotal.com/reference/files-scan
3.13 Netcraft Report API
Type: Phishing, malware, suspicious URL/email/file reporting
Best for: Phishing and takedown-support reporting
API style: Report API
Good submissions: Malicious URLs, suspicious emails, files, phishing evidence
Avoid: Low-confidence or privacy-sensitive submissions
Operational fit: Use for high-confidence phishing and brand-abuse reporting, especially where takedown support matters.
Sources:
- https://report.netcraft.com/api
- https://www.netcraft.com/company/news/netcraft-launches-new-real-time-threat-api-to-improve-and-accelerate-collaboration-with-infrastructure-providers
4. Internal Case / Incident Routing Platforms
These platforms are not external public reporting destinations, but they are useful for receiving your detections through APIs and routing them into a proper case workflow.
| Platform | Best for | API capability | Workflow role |
|---|---|---|---|
| TheHive | SOC alert-to-case management | TheHive 5 API supports alert creation | Convert signals into triaged investigations |
| DFIR-IRIS | Collaborative incident response | Alerts API and general API key support | Internal IR case management |
| ServiceNow SIR | Enterprise security incident response | REST API to write to Security Incident Import table | Enterprise escalation and tracking |
| Jira Service Management Incidents | Incident workflow automation | Incidents REST API | Lightweight or engineering-driven incident coordination |
Sources:
- https://docs.strangebee.com/thehive/api-docs
- https://docs.dfir-iris.org/operations/alerts/
- https://www.servicenow.com/docs/r/yokohama/security-management/security-incident-response/c_3rdPartyAlertMonToolInteg.html
- https://developer.atlassian.com/cloud/incidents/rest/api-group-incident/
5. Platforms Useful for Monitoring but Not Primary API Reporting Destinations
| Platform | API status | Recommendation |
|---|---|---|
| Ransomware.live | API available for ransomware victim/group intelligence | Use for monitoring and enrichment, not as the main reporting destination |
| Shadowserver | RESTful API for report data access; no STIX/TAXII currently | Use for inbound network exposure/threat reports and enrichment |
| Have I Been Pwned | API for breach account lookups | Use for exposure checks, not submitting new breach reports unless separately arranged |
| OpenPhish | No public lookup API; offers feed/module model | Use feed or email/manual reporting fallback |
| Microsoft Defender submissions | Portal and Microsoft Graph threat-submission resources for some Defender scenarios | Use when operating within a Microsoft tenant or Defender workflow |
Sources:
- https://www.ransomware.live/api
- https://api-pro.ransomware.live/
- https://www.shadowserver.org/faq/can-i-access-your-reports-through-an-api/
- https://haveibeenpwned.com/api/v3
- https://openphish.com/kb.html
- https://learn.microsoft.com/en-us/graph/api/resources/security-filethreatsubmission
6. Practical Routing Matrix
| Evidence type | First API destination | Second destination | Internal system |
|---|---|---|---|
| Malicious IP scanning/brute force | AbuseIPDB | Spamhaus if relevant | TheHive / DFIR-IRIS |
| Malware distribution URL | URLhaus | Google Web Risk / VirusTotal / urlscan.io | MISP / OpenCTI |
| Malware sample | MalwareBazaar | VirusTotal | TheHive / OpenCTI |
| Phishing URL | PhishTank / Netcraft / urlscan.io | Google Web Risk / Cloudflare if hosted/proxied there | MISP / TheHive |
| Cloudflare-proxied abuse | Cloudflare Abuse Reports API | Netcraft / PhishTank if phishing | Internal case platform |
| Suspicious email infrastructure | Spamhaus Submission API | AbuseIPDB for IPs | MISP / OpenCTI |
| Campaign-level indicators | CISA AIS / MISP | CERT/CSIRT | OpenCTI |
| Ransomware victim claim | Victim + CERT first | MISP only sanitized indicators | OpenCTI / TheHive |
| Leaked credentials/API keys | Victim first | CERT if severe | Internal IR case only |
| Critical infrastructure threat | CERT/CSIRT first | Victim + law enforcement | Internal restricted case |
7. Minimum Viable API Stack
For a new white-hat group, start with:
- MISP — trusted sharing and structured IOC exchange.
- OpenCTI — central intelligence normalization and knowledge graph.
- TheHive or DFIR-IRIS — case management and triage.
- AbuseIPDB — automated IP abuse reporting.
- URLhaus — malware URL submission.
- MalwareBazaar — malware sample submission, only with legal controls.
- urlscan.io — URL evidence generation.
- Cloudflare Abuse Reports API — infrastructure abuse reports.
- Spamhaus Submission Portal API — IP/domain/URL/email reputation reporting.
- CISA AIS or national CERT sharing route — campaign-level indicator sharing.
8. Data Handling Rules
Never submit publicly
- Raw credentials
- API keys or session cookies
- Stolen databases
- Internal screenshots that identify victims without consent
- Exploit instructions
- Live access details
- Private source code
- Sensitive personal data
Safe to submit when verified
- IP addresses
- Domains
- URLs, if they do not contain tokens or PII
- File hashes
- Malware samples, only where legally allowed
- Timestamps
- Actor handles
- Campaign labels
- CVEs
- MITRE ATT&CK techniques
- Sanitized screenshots
- Provider-neutral technical context
9. Recommended Submission Object
Use this normalized object internally before transforming to each API schema.
{
"case_id": "WG-2026-000001",
"tlp": "AMBER",
"severity": "A|B|C|D|E",
"confidence": "low|medium|high",
"threat_type": "phishing|malware|ransomware|credential_exposure|iab|botnet|vulnerability_exploitation",
"victim": {
"organization": "",
"domain": "",
"country": "",
"sector": ""
},
"source": {
"category": "forum|leak_site|telegram|honeypot|sensor|osint|tip",
"first_seen": "",
"last_seen": "",
"collection_method": "lawful_osint_or_partner_feed"
},
"observables": {
"ips": [],
"domains": [],
"urls": [],
"hashes": [],
"emails": [],
"wallets": [],
"cves": []
},
"evidence": {
"summary": "",
"sanitized_screenshots": [],
"raw_evidence_location": "internal_restricted_storage"
},
"recommended_actions": [],
"routing": {
"primary_destinations": [],
"secondary_destinations": [],
"public_disclosure_allowed": false
}
}
10. Final Recommendation
The most practical API-driven architecture is:
Sensors / CTI sources → OpenCTI → TheHive or DFIR-IRIS → routing engine → MISP + provider abuse APIs + CERT/AIS channels → sanitized public reporting
This keeps the group legally safer, avoids amplifying criminal material, and creates a repeatable path from early warning to real defensive action.