ThreatTrove

Source health

Every 4 hours the canary asks each active source about a known indicator and records the answer. A source that changes its answer, stops answering or slows down shows up here before it changes a verdict.

18answering
0warning
0failing
2not asked
0unchecked
4not configured
Every active source answered as expected, last checked 1h ago.
SourceSupportsHealthLast answerLatencyChecked
VirusTotal (files)
virustotal
hash skip skipped
provider says the daily allowance is spent (480/480 virustotal today), not asked
1 ms 1h ago
VirusTotal (URL)
virustotal_url
url skip skipped
provider says the daily allowance is spent (480/480 virustotal today), not asked
– 1h ago
AlienVault OTX
otx
hash ok found · malicious
49 pulse(s), 1 no-threat pulse(s) ignored
1197 ms 2.8× baseline 1h ago
AlienVault OTX (domain)
otx_domain
domain, ip ok found
whitelisted, but in 45 pulse(s), 5 no-threat pulse(s) ignored
1820 ms 1h ago
AlienVault OTX (URL)
otx_url
url ok found
no pulses
84 ms 1h ago
Certificate Transparency
crt
domain ok found
85 cert(s), 11 hostname(s)
2510 ms 1.3× baseline 1h ago
CIRCL hashlookup
circl
hash ok found · malicious
listed by malshare.com
345 ms 1h ago
DNS records
dns
domain, ip ok found
A, AAAA, MX, NS, SOA, TXT
134 ms 1h ago
Google Safe Browsing
gsb
url, domain ok matched · malicious
MALWARE
155 ms 1.7× baseline 1h ago
Hybrid Analysis
hybridanalysis
hash ok found · malicious
1/1 scanner(s) flagged - EICAR
582 ms 1h ago
MalShare
malshare
hash ok found · malicious
sample in MalShare (EICAR)
382 ms 1h ago
MalwareBazaar (abuse.ch)
malwarebazaar
hash ok not_found 515 ms 1h ago
MetaDefender (domain/IP)
metadefender_domain
domain, ip ok found · clean
0/8 providers flagged
87 ms 1h ago
MetaDefender (files)
metadefender
hash ok found · malicious
17/21 engines flagged
315 ms 1h ago
MetaDefender (URL)
metadefender_url
url ok found · clean
0/7 providers flagged
126 ms 1.3× baseline 1h ago
ThreatFox (abuse.ch)
threatfox
hash, url, domain, ip ok no_match 309 ms 1h ago
URLhaus (URL)
urlhaus_url
url ok no_match 113 ms 1h ago
URLhaus payload (abuse.ch)
urlhaus
hash ok not_found 352 ms 1h ago
urlscan.io (URL)
urlscan
url, domain, ip ok not_found 442 ms 1h ago
WHOIS / RDAP
rdap
domain, ip ok found
RESERVED-Internet Assigned Numbers Authority / 1995-08-14
251 ms 1.6× baseline 1h ago
Hatching Triage
triage
hash off –
TRIAGE_API_KEY
– never
PhishTank
phishtank
url off –
PHISHTANK_APPKEY
– never
Reverse IP
reverseip
domain, ip off –
TT_ENABLE_REVERSE_IP
– never
VirusTotal (domain/IP)
virustotal_domain
domain, ip off –
TT_VT_DOMAINS
– never

What the canary asks

Four indicators whose answer should not change, each asked of every source that supports its type. A run costs one request per active source, so it bypasses the cache on purpose: a cached answer would hide exactly the breakage it is looking for.

sha256  275a021bbfb6489e54d471899f7db9d1663fc695ec2fe2a2c4538aabf651fd0f  EICAR test file
url     http://malware.testing.google.test/testing/malware/             Safe Browsing sample
domain  example.com                                                       stable, benign
ip      8.8.8.8                                                           stable, benign

The first healthy answer becomes the expected one. From then on a source that answers "not found" where it used to answer "found" is a warning rather than a success — that is the shape of both silent breakages fixed in 2.6.0 and 2.7.0, neither of which returned an error.

Machine-readable: /api/v1/status returns the same data, and ?strict=1 answers 503 unless every active source is healthy.