Threat Intel IOC Feed Aggregator
Pricing
Pay per event
Threat Intel IOC Feed Aggregator
Normalizes and dedupes six free IOC feeds (URLhaus, Feodo Tracker, ThreatFox, MalwareBazaar, OpenPhish, PhishTank) into one schema with cross-feed corroboration counts. Delta mode returns only newly-seen indicators since your last run. Passive: reads published feeds only, never touches listed IOCs.
Pricing
Pay per event
Rating
0.0
(0)
Developer
BowTiedRaccoon
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
11 days ago
Last modified
Categories
Share
Normalizes and cross-feed-dedupes six free, published threat-intelligence IOC feeds into one schema, with a cross-feed corroboration count and a persisted delta cursor for hourly-poll blocklist/enrichment pipelines.
Built for SOC/blue-team, detection-engineering, and threat-intel teams that currently pull each free feed separately in its own raw format and stitch them together by hand.
Passive by design. This actor reads the published feed endpoints only
(urlhaus.abuse.ch, feodotracker.abuse.ch, threatfox.abuse.ch, bazaar.abuse.ch,
openphish.com, data.phishtank.com). It never connects to, resolves, or scans any of the
malicious infrastructure listed inside those feeds — the URLs/IPs/hashes being cataloged are
parsed as inert text only.
Covered Feeds
| Source | Feed | IOC Type | Auth Required |
|---|---|---|---|
urlhaus | abuse.ch URLhaus — recent malware-distribution URLs | url | None |
feodo | abuse.ch Feodo Tracker — active botnet C2 IPs | ip_port | None |
threatfox | abuse.ch ThreatFox — recent multi-type IOCs | url / domain / ip_port / hashes | None |
malwarebazaar | abuse.ch MalwareBazaar — recent malware sample hashes | sha256_hash | None |
openphish | OpenPhish — public phishing URL feed | url | None |
phishtank | PhishTank — verified online phishing URLs | url | None |
All six feeds are free, published downloads. None require an account or API key for the endpoints this actor uses.
Input
| Field | Type | Default | Description |
|---|---|---|---|
sources | array | all six | Subset of feeds to fetch and merge: urlhaus, feodo, threatfox, malwarebazaar, openphish, phishtank |
maxItems | integer | 15 | Maximum normalized IOC records to return this run, across all selected feeds combined |
resetState | boolean | false | Force this run to treat all currently-listed IOCs as new, ignoring the persisted delta cursor. Use once for a full baseline pull |
Delta mode (default behavior)
Every run persists the set of IOC keys it has already emitted (in the actor's key-value store,
pruned after 30 days). On each subsequent run, only IOCs not previously emitted are returned —
so a scheduled hourly run naturally becomes a "what's new since last time" feed instead of
re-delivering the same records. If a run is capped by maxItems before covering all new IOCs, the
remainder carries forward and surfaces on the next run — nothing is dropped, just paginated across
runs.
Set resetState: true for a one-time full snapshot of everything currently in the selected feeds
(e.g. for an initial bulk load), then leave it false for ongoing polling.
Output
Each record contains:
| Field | Type | Description |
|---|---|---|
ioc_value | string | The indicator itself — URL, domain, ip:port, or file hash, depending on ioc_type |
ioc_type | string | url | domain | ip_port | md5_hash | sha256_hash | sha1_hash |
threat_type | string | malware_download | botnet_c2 | phishing | payload_delivery |
malware_family | string | Malware family / signature name, when known |
source_feed | string | Primary reporting feed for this IOC |
confidence | integer | Normalized 0-100 confidence score |
first_seen | string | Timestamp first reported (earliest across corroborating feeds) |
last_seen | string | Timestamp last confirmed active (latest across corroborating feeds) |
reference_url | string | Link to the source feed's report page for this indicator |
tags | array | Merged tags/labels from all corroborating feeds |
reporter | string | Reporting analyst/organization, when the source feed provides one |
is_online | boolean | Whether the indicator was reported as currently active/online |
dedup_source_count | integer | Number of distinct feeds that independently reported this same indicator |
scraped_at | string | ISO timestamp this run fetched the source feeds |
A dedup_source_count of 2+ means multiple independent feeds corroborated the same indicator —
useful as a confidence signal on top of each feed's own scoring.
Example Inputs
Hourly-poll delta (recommended for scheduled runs):
{"maxItems": 500,"sp_intended_usage": "Hourly blocklist enrichment feed","sp_improvement_suggestions": "None"}
One-time full baseline of just the malware-hash feeds:
{"sources": ["malwarebazaar", "threatfox"],"maxItems": 5000,"resetState": true,"sp_intended_usage": "Initial IOC database seed","sp_improvement_suggestions": "None"}
Phishing-only feed for a browser-extension blocklist:
{"sources": ["openphish", "phishtank"],"maxItems": 1000,"sp_intended_usage": "Phishing URL blocklist","sp_improvement_suggestions": "None"}
Data Sources
All data is sourced from free, published threat-intelligence feeds:
- abuse.ch — URLhaus, Feodo Tracker, ThreatFox, MalwareBazaar (CC0 / free public feeds)
- OpenPhish — public phishing feed
- PhishTank — Cisco Talos community phishing verification
This actor performs no scanning, resolution, or connection to any indicator it catalogs — it only downloads and normalizes the published feed files.