CVE-2015-5230

7.5 HIGH

📋 TL;DR

This vulnerability in PowerDNS Authoritative Server allows remote attackers to crash the DNS service by sending specially crafted DNS query packets. It affects PowerDNS Authoritative Server versions 3.4.x before 3.4.6. The vulnerability is in the DNS packet parsing/generation code and can be exploited without authentication.

💻 Affected Systems

Products:
  • PowerDNS Authoritative Server
Versions: 3.4.x before 3.4.6
Operating Systems: Linux, Unix-like systems
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects PowerDNS Authoritative Server, not Recursor. Vulnerable in default configurations when exposed to network traffic.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete DNS service outage leading to domain resolution failures, potential cascading effects on dependent services, and possible data corruption if crashes occur during critical operations.

🟠

Likely Case

Denial of service causing intermittent DNS service disruptions, increased latency, and potential service unavailability until the process restarts.

🟢

If Mitigated

Minimal impact with proper network segmentation, rate limiting, and monitoring in place to detect and block malicious traffic patterns.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires sending crafted DNS packets to vulnerable servers. No authentication needed. Simple DoS attacks are trivial to execute.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 3.4.6

Vendor Advisory: https://doc.powerdns.com/md/security/powerdns-advisory-2015-02/

Restart Required: Yes

Instructions:

1. Backup configuration files. 2. Stop PowerDNS service. 3. Update to PowerDNS Authoritative Server 3.4.6 or later. 4. Restart PowerDNS service. 5. Verify service is running correctly.

🔧 Temporary Workarounds

Network Segmentation

linux

Restrict access to PowerDNS servers to trusted networks only

iptables -A INPUT -p udp --dport 53 -s trusted_network -j ACCEPT
iptables -A INPUT -p tcp --dport 53 -s trusted_network -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j DROP
iptables -A INPUT -p tcp --dport 53 -j DROP

Rate Limiting

linux

Implement DNS query rate limiting to reduce impact of DoS attempts

iptables -A INPUT -p udp --dport 53 -m limit --limit 50/sec -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j DROP

🧯 If You Can't Patch

  • Implement strict network ACLs to limit DNS traffic to trusted sources only
  • Deploy inline IPS/IDS with DNS protocol anomaly detection

🔍 How to Verify

Check if Vulnerable:

Check PowerDNS version: pdns_server --version | grep 'Version'

Check Version:

pdns_server --version | grep 'Version'

Verify Fix Applied:

Verify version is 3.4.6 or later: pdns_server --version | grep 'Version'

📡 Detection & Monitoring

Log Indicators:

  • Unexpected process crashes/restarts in system logs
  • High volume of malformed DNS queries in PowerDNS logs
  • Segmentation fault errors in application logs

Network Indicators:

  • Unusual DNS query patterns from single sources
  • DNS packets with malformed headers or unusual sizes
  • Spike in DNS traffic preceding service outages

SIEM Query:

source="powerdns.log" AND ("segmentation fault" OR "crash" OR "abnormal exit")

🔗 References

📤 Share & Export