CVE-2021-44541

7.5 HIGH

📋 TL;DR

This vulnerability in Privoxy is a memory management flaw in the process_encrypted_request_headers() function where header memory isn't properly freed when failing to get the request destination. This could allow attackers to cause denial of service or potentially execute arbitrary code. Anyone running vulnerable versions of Privoxy is affected.

💻 Affected Systems

Products:
  • Privoxy
Versions: Versions before 3.0.33
Operating Systems: All platforms running Privoxy
Default Config Vulnerable: ⚠️ Yes
Notes: All Privoxy configurations using encrypted request headers are vulnerable

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Remote code execution leading to complete system compromise

🟠

Likely Case

Denial of service causing Privoxy to crash

🟢

If Mitigated

Limited impact if proper memory protections are in place

🌐 Internet-Facing: HIGH - Privoxy is often exposed to process external requests
🏢 Internal Only: MEDIUM - Internal exploitation possible but less likely

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ⚠️ Yes
Complexity: MEDIUM

Exploitation requires sending specially crafted encrypted requests

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 3.0.33 and later

Vendor Advisory: https://www.privoxy.org/3.0.33/user-manual/whatsnew.html

Restart Required: Yes

Instructions:

1. Download Privoxy 3.0.33 or later from privoxy.org
2. Stop the Privoxy service
3. Install the updated version
4. Restart the Privoxy service

🔧 Temporary Workarounds

Disable encrypted request processing

all

Temporarily disable processing of encrypted request headers

Edit privoxy config to disable encrypted request handling

🧯 If You Can't Patch

  • Implement network segmentation to limit Privoxy exposure
  • Use application firewalls to filter malicious encrypted requests

🔍 How to Verify

Check if Vulnerable:

Check Privoxy version with 'privoxy --version' and compare to 3.0.33

Check Version:

privoxy --version

Verify Fix Applied:

Verify version is 3.0.33 or later and check service is running

📡 Detection & Monitoring

Log Indicators:

  • Privoxy crash logs
  • Memory allocation errors in system logs

Network Indicators:

  • Unusual encrypted request patterns to Privoxy port

SIEM Query:

source="privoxy.log" AND (error OR crash OR memory)

🔗 References

📤 Share & Export