Smart Hybrid Routing.
Enterprise Grade Security.

eWAF combines the intelligent dynamic routing of Java with the raw C++ power of NGINX and ModSecurity. Build a zero-trust architecture in seconds.

bash
$ git clone https://github.com/whitehatlabs000/eWAF.git
$ cd eWAF
$ sudo apt install openjdk-17-jdk -y
$ ./mvnw clean install
$ docker compose --profile prod up -d --build
> Deploying Smart Hybrid Control Plane... Done.

Built for Modern Infrastructure

Smart Delegation

Heavy assets (images, videos) are automatically offloaded to NGINX via X-Accel-Redirect. Zero Java heap exhaustion.

Dual WAF System

Global C++ Edge WAF (OWASP CRS) intercepts threats instantly, while Java Core WAF handles Rate Limiting, IPs and Honeypots.

On-The-Fly Rewriting

Native engine parses and manipulates JSON payloads and HTML anchors dynamically to fix broken backend paths seamlessly.

Documentation

Getting Started with Docker

The easiest and recommended way to run eWAF is using the provided Docker Compose file. This ensures NGINX, ModSecurity, and the Java Core are perfectly synchronized.

git clone https://github.com/whitehatlabs000/eWAF.git
cd eWAF
sudo apt update
sudo apt install openjdk-17-jdk -y
chmod +x mvnw
./mvnw clean install
docker compose --profile prod up -d --build

Once running, access the Admin Dashboard at http://localhost/login.

The Hybrid Control Plane

eWAF does not process everything in a single thread. It acts as an orchestrator:

  • Edge WAF (NGINX): All inbound traffic is analyzed by ModSecurity. Threats are secretly forwarded to Java for logging and permanent IP bans.
  • Core WAF (Java): Surviving traffic enters Tomcat for Rate Limiting, Whitelists, and Honeypot evaluations.
  • Smart Routing: Clean traffic is seamlessly delegated via Native parsing, Spring Gateway, or NGINX fast-paths.

Proxy Rules Management

Routes can be managed in real-time without restarting the server. In the Admin Dashboard, configure:

  • Engine Selection: Choose between NATIVE, NGINX, or SPRING.
  • ModSecurity Toggle: WAF is globally active. Use the switch to auto-generate bypass rules for trusted routes on any engine.
  • Cache TTL: Define in seconds how long NGINX should hold the resource in disk.

Contact & Support the Project

eWAF is free and open source. If it protects your infrastructure, consider supporting its development or reach out directly.

Get in Touch

Questions, bug reports, security disclosures or collaboration proposals.

Send Email

Donate Bitcoin

Support development with BTC. Every satoshi fuels new features.

1LUw27B6wPNibZKrPJGCigV642358rpABg
Bitcoin Network

Donate Ethereum

Support development with ETH or ERC-20 tokens on this address.

0x22a1dd7cd753ba5c52db23d927fc6ded7025579d
Ethereum Mainnet