Release the RAVEN: An Offensive Reconnaissance and Attack Tool on Vulnerable Elasticsearch Nodes
You have almost certainly interacted with Elasticsearch today. The search bar on your company's internal wiki. The autocomplete on the e-commerce site where you ordered lunch. The log aggregation dashboard your SOC team stares at for eight hours straight. The recommendation engine that just served you this article. Elasticsearch is the invisible infrastructure behind modern search, and it processes some of the most sensitive data an organization possesses, including access logs, customer records, financial transactions, and authentication events. It knows where your users click, what they search for, and when they log in.
Now, imagine all of that, exposed to anyone who knows where to look.
This is not a hypothetical scenario. Shodan queries return tens of thousands of internet-facing Elasticsearch instances today. Some are secure. However, many are not, as I explored in my Meow Attack research (Feline Hackers Among Us, The Cat's Out of the Bag) and my Xbash ransomware simulation (The Database Slayer). And for the ones that are protected, the security often stops at a password, leaving a vast attack surface of exploitable CVEs, misconfigured roles, and exposed Kibana dashboards quietly waiting to be discovered.
This is the gap that RAVEN was built to expose.
What is RAVEN?
RAVEN (Reconnaissance & Attack on Vulnerable Elasticsearch Nodes) is an open-source, modular offensive security framework purpose-built for Elasticsearch and Kibana environments. It is designed for authorized security testing: penetration testers, red teamers, and security researchers who need a comprehensive toolset to evaluate the security posture of Elasticsearch deployments from the outside in. As shown in Figure 1, RAVEN's banner identifies the tool and its purpose upon launch.

Figure 1. The RAVEN ASCII banner with the bird-in-moon logo and tagline.
Think of it this way. For SQL databases, there is sqlmap. For Oracle, there is ODAT. I have previously written about both on separate blog entries (sqlmap, ODAT). For Wi-Fi, there is Aircrack-ng. These are mature, focused, purpose-built tools that security professionals reach for instinctively when they encounter a specific technology. But when a penetration tester discovers an Elasticsearch cluster on port 9200, what do they reach for? A handful of curl commands, maybe a Metasploit module or two, and a lot of manual work.
RAVEN changes that equation. I have previously written about how X-Pack security defends Elasticsearch clusters (Fort Knox for Your Data: Part 1, Part 2). RAVEN is the other side of that coin. One tool. Nineteen modules. Eight tracked CVEs. Nine pre-built lab environments. Everything from passive fingerprinting to full remote code execution (RCE), with safety guardrails built into every destructive operation.
Anticipate threats and protect your business with LevelBlue.
Arsenal at a Glance
RAVEN's capabilities span the entire offensive lifecycle against Elasticsearch and Kibana targets. As illustrated in Figure 2, the mind map provides a comprehensive overview of all 19 modules organized by function, along with the 8 tracked CVEs and 9 lab environments.

Figure 2. The RAVEN mind map showing all 19 modules, 8 tracked CVEs, and 9 lab targets.
Reconnaissance. Fingerprint clusters, enumerate indices, detect anonymous access, and surface secrets buried in documents. Before a single exploit fires, RAVEN maps the target's entire attack surface.
Access Testing. Bruteforce credentials from curated wordlists, analyze privilege escalation paths, and manage API key operations for persistent credential-independent access.
CVE Detection and Exploitation. RAVEN's CVE catalog tracks 8 vulnerabilities specific to Elasticsearch and Kibana, spanning MVEL and Groovy scripting engine RCE, snapshot directory traversal, Kibana Local File Inclusion, API key privilege escalation (detection only), and prototype pollution. CVSS scores range from 7.5 to a perfect 10.0. Three are listed in CISA's Known Exploited Vulnerabilities (KEV) catalog. Six of these have full exploit implementations that prove impact with captured command output. The remaining two provide version-based detection for high-severity flaws where no public exploit technique has been disclosed.
Kibana Attacks. Port 5601 is not just a dashboard. RAVEN treats Kibana as a first-class attack surface with dedicated reconnaissance, CVE exploitation (including a novel Playwright-based browser trigger for automated RCE), and intelligence extraction from saved objects.
Post-Exploitation. Exfiltrate entire indices to disk, establish persistent access through rogue users and long-lived API keys that survive password rotations, and simulate real-world attack scenarios including the Meow Attack data corruption campaign. When the engagement is over, RAVEN's cleanup module reverses every action from its own activity log.
RAVEN's modular architecture means this is a living arsenal, designed to expand as new Elasticsearch and Kibana vulnerabilities are discovered.
Built for the Responsible Practitioner
An offensive tool without guardrails is not a tool. It is a liability. RAVEN enforces safety at every layer. ` --confirm-writes ` gates all operations that modify the target. ` --confirm-destroy ` with ` --scope-file ` gates destructive operations behind an explicit token and a scoping file that restricts the blast radius to authorized targets. ` --dry-run ` previews every action before execution. And nine Docker-based lab environments ensure every exploit is testable in isolation, against purpose-built vulnerable targets, without ever touching production infrastructure.
Every exploit demonstrated in this blog series was executed against these lab environments and never against systems that did not belong to us.
The Lab System
One of RAVEN's distinguishing features is its integrated lab infrastructure. Each major vulnerability class has a dedicated Docker environment. As demonstrated in Figure 3, a single ` make lab-mvel-up ` command spins up a vulnerable Elasticsearch 1.1.1 instance, seeds it with test data, and presents a ready-to-exploit target. When the test is complete, ` make lab-mvel-down ` tears it down cleanly. No cloud accounts, no complex infrastructure. Just Docker and a Makefile.

Figure 3. Lab lifecycle: starting and tearing down the MVEL RCE lab environment with a single make command.
What Comes Next
This post is a prologue to a five-part series that walks through RAVEN's capabilities from reconnaissance to cleanup. We’ll tackle the full arc of an Elasticsearch offensive security engagement: penetration testing, red teaming, and security research.
-
Part 1: First Contact — We discover an Elasticsearch cluster on the network and map its entire attack surface: version, nodes, indices, exposed data, and valid credentials.
-
Part 2: Exploiting the Cracks — We exploit real CVEs against vulnerable targets, achieving RCE on legacy scripting engines and detecting privilege escalation flaws in newer versions.
-
Part 3: Kibana Under Siege — We turn our attention to port 5601, the attack surface most security teams forget to test, and demonstrate Local File Inclusion, intelligence extraction, and server-side code execution through Kibana's own API.
-
Part 4: Data Heist and Persistence — We exfiltrate data, establish persistent access through API keys and rogue accounts, and plant backdoors that survive password rotations. The full business impact of a compromised Elasticsearch deployment.
-
Part 5: Destruction and Discipline — We demonstrate RAVEN's destructive capabilities, the triple-gated safety system that prevents accidental damage, and the cleanup module that reverses every action logged across the entire engagement.
Get Started
RAVEN is open-source and available now:
- GitHub: github.com/karlvbiron/raven
- PyPI: `
pip install raven-es` - CLI: `
raven-es --help`
As shown in Figure 4, the ` raven-es --help ` output lists the ` all ` orchestrator command plus all 19 modules available in the framework, from fingerprinting and reconnaissance through exploitation, exfiltration, and cleanup.

Figure 4. The `raven-es --help` output showing the `all` orchestrator command plus all 19 modules.
So grab your mining hat and shovel. In Part 1, the descent begins.
About the Author
Karl Biron is Security Researcher, SpiderLabs Database Security at LevelBlue with nine years of technical experience. He holds multiple certifications and brings global expertise from his work across Singapore, the UAE, and the Philippines. Karl has also contributed to the field with two IEEE peer-reviewed publications, both as the lead author. Follow Karl on LinkedIn.
ABOUT LEVELBLUE
LevelBlue secures what's next with intelligence-led security delivering visibility and speed to stop threats faster. As the world’s largest and most analyst-recognized pure-play managed security services provider, our AI-powered managed services and cyber expertise across managed, advisory, and incident response services help clients operate with confidence. Learn more about us.
https://www.levelblue.com/resources/blogs/internal-blog/how-to-create-a-blog-post/