CVE-2018-19991

9.8 CRITICAL

📋 TL;DR

CVE-2018-19991 is a critical vulnerability in VeryNginx 0.3.3 that allows remote attackers to bypass the Web Application Firewall (WAF) protection. The vulnerability occurs due to missing error handlers for get_uri_args and get_post_args functions, enabling API misuse similar to CVE-2018-9230. Organizations using VeryNginx 0.3.3 for web application protection are affected.

💻 Affected Systems

Products:
  • VeryNginx
Versions: 0.3.3
Operating Systems: Linux
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects VeryNginx installations with WAF feature enabled. The vulnerability is in the WAF bypass mechanism.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers completely bypass WAF protection, allowing unfiltered injection attacks (SQLi, XSS, command injection) to reach backend applications, potentially leading to full system compromise.

🟠

Likely Case

Attackers bypass security controls to execute web application attacks that would normally be blocked, leading to data breaches, unauthorized access, or service disruption.

🟢

If Mitigated

With proper network segmentation and additional security layers, impact is limited to the VeryNginx instance itself rather than backend systems.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ⚠️ Yes
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Exploitation requires understanding of the API misuse pattern from CVE-2018-9230. Attackers can craft malicious requests to bypass WAF filtering.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 0.3.4 or later

Vendor Advisory: https://github.com/alexazhou/VeryNginx/issues/218

Restart Required: Yes

Instructions:

1. Backup current configuration. 2. Update VeryNginx to version 0.3.4 or later. 3. Restart VeryNginx service. 4. Verify WAF functionality is working correctly.

🔧 Temporary Workarounds

Disable WAF Feature

linux

Temporarily disable the Web Application Firewall feature until patching can be completed

Edit VeryNginx configuration to disable WAF rules

Implement Rate Limiting

linux

Add additional rate limiting to reduce attack surface

Configure Nginx rate limiting modules

🧯 If You Can't Patch

  • Implement network segmentation to isolate VeryNginx instance from critical backend systems
  • Deploy additional WAF or IPS in front of VeryNginx as compensating control

🔍 How to Verify

Check if Vulnerable:

Check VeryNginx version: grep 'version' /path/to/verynginx/config or check running process

Check Version:

verynginx -v or check configuration files for version information

Verify Fix Applied:

Verify version is 0.3.4 or later and test WAF functionality with known attack patterns

📡 Detection & Monitoring

Log Indicators:

  • Unusual request patterns bypassing WAF rules
  • Increased blocked request counts after WAF bypass
  • Requests with malformed parameters that should be blocked

Network Indicators:

  • Traffic patterns showing successful attacks that should be blocked by WAF
  • Increased backend application errors

SIEM Query:

source="verynginx" AND (message="bypass" OR message="WAF_failed" OR status_code=200 AND request_uri CONTAINS malicious_pattern)

🔗 References

📤 Share & Export