Security Researchers & Academics
Bulk infrastructure surveys, dataset extraction, longitudinal studies, and reproducible research queries.
Security Researchers & Academics Documentation
You're studying internet topology, deployment trends, and ecosystem characteristics at scale.
Schema Exploration
Explore the Graph Schema
Understand what node types and relationship types exist in the graph.
-- All node labels with counts
CALL db.labels()
Sample output (first 5 of 18):
[
{"label": "HOSTNAME", "count": 2631997144},
{"label": "IPV4", "count": 618914961},
{"label": "EMAIL", "count": 237065663},
{"label": "ORGANIZATION", "count": 119189847},
{"label": "PHONE", "count": 60194142}
]
-- All edge types with counts
CALL db.relationshipTypes()
Sample output (first 5 of 20):
[
{"type": "LINKS_TO", "count": 10851011448},
{"type": "NAMESERVER_FOR", "count": 8881831888},
{"type": "RESOLVES_TO", "count": 2919321504},
{"type": "CHILD_OF", "count": 2338085185},
{"type": "REGISTERED_BY", "count": 916255242}
]
Tip: These procedures return O(1) histogram lookups — they're instantaneous even on billion-scale data. Use them to plan query strategies before diving into traversals.
Threat Feed Catalog
List all 40 threat intelligence feeds indexed in the graph.
-- Complete threat feed catalog
MATCH (f:FEED_SOURCE) RETURN f.name ORDER BY f.name
Sample output (first 10 of 40):
[
{"f.name": "AlienVault Reputation"},
{"f.name": "Binary Defense Banlist"},
{"f.name": "Blocklist.de All"},
{"f.name": "Blocklist.de Mail"},
{"f.name": "Blocklist.de SSH"},
{"f.name": "Botvrij Domains"},
{"f.name": "Botvrij Dst IPs"},
{"f.name": "Brute Force Blocker"},
{"f.name": "C2 Intel 30d"},
{"f.name": "C2 Tracker"}
]
The full feed list also includes: Cert.pl Domains, CINS Score, Cloudflare Radar Top 1M, DNS RD Abuse, Dan Tor Exit, ET Compromised IPs, Feodo Tracker, FireHOL Abusers 1d, FireHOL Anonymous, FireHOL Level 1-3, FireHOL WebClient, GreenSnow Blacklist, Hagezi Light, Hagezi Pro, IPsum, InterServer RBL, MalwareBazaar Recent, OpenPhish Feed, SSH Client Attacks, SSH Password Auth, SSL IP Blacklist, Spamhaus DROP, Spamhaus EDROP, StevenBlack Hosts, ThreatFox IOCs, Tor Exit Nodes, Tranco Top 1M, URLhaus Recent.
Threat Category Taxonomy
Explore the 18-category threat taxonomy used across feeds.
-- All threat categories
MATCH (c:CATEGORY) RETURN c.name ORDER BY c.name
Sample output:
[
{"c.name": "Ad/Tracking Blocklists"},
{"c.name": "Anonymization Infrastructure"},
{"c.name": "Attack Sources"},
{"c.name": "Brute Force"},
{"c.name": "C2 Servers"},
{"c.name": "General Blacklists"},
{"c.name": "Malicious Domains"},
{"c.name": "Malicious Infrastructure"},
{"c.name": "Malware Distribution"},
{"c.name": "Phishing"},
{"c.name": "Popularity/Trust"},
{"c.name": "Proxies"},
{"c.name": "Reference Data"},
{"c.name": "Reputation"},
{"c.name": "Spam"},
{"c.name": "TOR Network"},
{"c.name": "Threat Intelligence"},
{"c.name": "VPNs"}
]
Research Queries
DNSSEC Algorithm Reference
List all DNSSEC signing algorithm types indexed in the graph schema.
-- All DNSSEC signing algorithm types in the schema
MATCH (algo:DNSSEC_ALGORITHM) RETURN collect(algo.name) AS algorithms
Sample output:
[{"algorithms": ["ECDSAP256SHA256", "ECDSAP384SHA384", "ED25519", "ED448", "RSASHA1", "RSASHA1-NSEC3-SHA1", "RSASHA256", "RSASHA512"]}]
Tip: The graph recognizes 8 DNSSEC algorithm types. To check whether a specific domain has DNSSEC signing data, query
OPTIONAL MATCH (h:HOSTNAME {name: "example.com"})-[:SIGNED_WITH]->(algo:DNSSEC_ALGORITHM) RETURN collect(algo.name). An empty list indicates no DNSSEC data is currently available for that domain.
ASN Peering Degree Analysis
Study the degree distribution of ASN peering relationships.
-- Peering degree for a set of well-known networks
UNWIND ["AS13335", "AS3356", "AS15169"] AS asn_name
MATCH (a:ASN {name: asn_name})-[:PEERS_WITH]->(peer:ASN)
RETURN asn_name, count(peer) AS peer_count
Sample output:
[
{"asn_name": "AS13335", "peer_count": 1304},
{"asn_name": "AS3356", "peer_count": 6525},
{"asn_name": "AS15169", "peer_count": 137}
]
Tip: AS3356 (Lumen) is a Tier-1 carrier and has far more peers than AS15169 (Google), which is primarily a content network. This illustrates the structural difference between transit and content ASNs.
Web Graph Analysis: Outbound Link Degree
Measure the number of outbound hyperlinks from a known domain.
-- Outbound link count from a domain
MATCH (h:HOSTNAME {name: "github.com"})-[:LINKS_TO]->(target:HOSTNAME)
RETURN count(target) AS outbound_links
Tip: The
LINKS_TOgraph contains over 10 billion edges, making it one of the largest datasets in the graph. Queries without an anchored starting node will time out.
Shortest Path Between Two Domains
Find the minimum number of hops between two domains in the graph.
-- Shortest path between two domains
MATCH p = shortestPath(
(h:HOSTNAME {name: "cloudflare.com"})-[*1..6]-(target:HOSTNAME {name: "google.com"})
)
RETURN [n IN nodes(p) | n.name] AS path
Sample output:
[{"path": ["cloudflare.com", "google.com"]}]
Tip: These two domains link directly to each other. For less directly connected domains, paths of 3-5 hops are typical through the web link graph.