Bug 23815 - pdns-recursor new security issues CVE-2018-10851, CVE-2018-14626, CVE-2018-14644, CVE-2018-16855
Summary: pdns-recursor new security issues CVE-2018-10851, CVE-2018-14626, CVE-2018-14...
Status: RESOLVED FIXED
Alias: None
Product: Mageia
Classification: Unclassified
Component: Security (show other bugs)
Version: 6
Hardware: All Linux
Priority: Normal major
Target Milestone: ---
Assignee: QA Team
QA Contact: Sec team
URL:
Whiteboard: MGA6-32-OK
Keywords: advisory, validated_update
Depends on:
Blocks:
 
Reported: 2018-11-07 11:14 CET by David Walser
Modified: 2019-01-05 19:31 CET (History)
4 users (show)

See Also:
Source RPM: pdns-recursor-4.1.4-2.mga7.src.rpm
CVE:
Status comment:


Attachments

Description David Walser 2018-11-07 11:14:17 CET
Advisories have been issued on November 6:
https://www.openwall.com/lists/oss-security/2018/11/06/8

The issues are fixed upstream in 4.1.5 and 4.0.9.

Mageia 6 is also affected.
David Walser 2018-11-07 11:14:25 CET

Whiteboard: (none) => MGA6TOO

Comment 1 David Walser 2018-11-27 14:30:40 CET
An advisory has been issued on November 26:
https://www.openwall.com/lists/oss-security/2018/11/26/2
https://docs.powerdns.com/recursor/security-advisories/powerdns-advisory-2018-09.html

The issue is fixed upstream in 4.1.8.

Summary: pdns-recursor new security issues CVE-2018-10851, CVE-2018-14626, CVE-2018-14644 => pdns-recursor new security issues CVE-2018-10851, CVE-2018-14626, CVE-2018-14644, CVE-2018-16855

Comment 2 David Walser 2018-12-25 21:23:06 CET
Fedora has issued an advisory for this on December 16:
https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/thread/U5BJ2CLRPCLSDHOH3VAABZZP4GVKGLL5/
Comment 3 David Walser 2019-01-01 02:01:33 CET
pdns-recursor-4.1.8-1.mga7 uploaded for Cauldron.

Whiteboard: MGA6TOO => (none)
Version: Cauldron => 6

Comment 4 David Walser 2019-01-01 20:54:38 CET
Advisory:
========================

Updated pdns-recursor package fixes security vulnerabilities:

A vulnerability was in found in PowerDNS Recursor. The issue is a memory leak
occurring while parsing some malformed records, due to the fact that some
memory is allocated parsing a record and is not always properly released if
the record is not valid. It allows a malicious auth server to cause a denial of
service by sending specially crafted records in response to a legitimate query
by an authorized user (CVE-2018-10851).

An issue has been found in PowerDNS Recursor allowing a remote user to craft a
DNS query that will cause an answer without DNSSEC records to be inserted into
the packet cache and be returned to clients asking for DNSSEC records, thus
hiding the presence of DNSSEC signatures for a specific qname and qtype. For a
DNSSEC-signed domain, this means that clients performing DNSSEC validation by
themselves might consider the answer to be bogus until it expires from the
packet cache, leading to a denial of service (CVE-2018-14626).

An issue has been found in PowerDNS Recursor from 4.0.0 up to and including
4.1.4. A remote attacker sending a DNS query for a meta-type like OPT can lead
to a zone being wrongly cached as failing DNSSEC validation. It only arises if
the parent zone is signed, and all the authoritative servers for that parent
zone answer with FORMERR to a query for at least one of the meta-types. As a
result, subsequent queries from clients requesting DNSSEC validation will be
answered with a ServFail (CVE-2018-14644).

An issue has been found in PowerDNS Recursor where a remote attacker sending a
DNS query can trigger an out-of-bounds memory read while computing the hash of
the query for a packet cache lookup, possibly leading to a crash
(CVE-2018-16855).

References:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-10851
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-14626
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-14644
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-16855
https://doc.powerdns.com/recursor/security-advisories/powerdns-advisory-2018-04.html
https://doc.powerdns.com/recursor/security-advisories/powerdns-advisory-2018-06.html
https://docs.powerdns.com/recursor/security-advisories/powerdns-advisory-2018-07.html
https://docs.powerdns.com/recursor/security-advisories/powerdns-advisory-2018-09.html
https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/thread/U5BJ2CLRPCLSDHOH3VAABZZP4GVKGLL5/
========================

Updated packages in core/updates_testing:
========================
pdns-recursor-4.1.8-1.mga6

from pdns-recursor-4.1.8-1.mga6.src.rpm

CC: (none) => mitya
Assignee: mitya => qa-bugs

Comment 5 Herman Viaene 2019-01-03 11:41:06 CET
MGA6-32 MATE on IBM Thinkpad R50e
No installation issues.
Ref to bug 13521 Comment 2 for testing at CLI:
# systemctl start pdns
# systemctl -l status pdns
● pdns.service - PowerDNS Authoritative Server
   Loaded: loaded (/usr/lib/systemd/system/pdns.service; enabled; vendor preset: enabled)
   Active: active (running) since do 2019-01-03 11:19:09 CET; 6s ago
     Docs: man:pdns_server(1)
           man:pdns_control(1)
           https://doc.powerdns.com
 Main PID: 22390 (pdns_server)
   CGroup: /system.slice/pdns.service
           └─22390 /usr/sbin/pdns_server --guardian=no --daemon=no --disable-syslog --log-timestamp=no -

jan 03 11:19:09 xxx.yyy.zzz pdns_server[22390]: UDP server bound to 0.0.0.0:53
jan 03 11:19:09 xxx.yyy.zzz pdns_server[22390]: TCP server bound to 0.0.0.0:53
jan 03 11:19:09 xxx.yyy.zzz pdns_server[22390]: PowerDNS Authoritative Server 4.1.5 (C) 2001-201
jan 03 11:19:09 xxx.yyy.zzz pdns_server[22390]: Using 32-bits mode. Built using gcc 5.5.0.
jan 03 11:19:09 xxx.yyy.zzz pdns_server[22390]: PowerDNS comes with ABSOLUTELY NO WARRANTY. This
jan 03 11:19:09 xxx.yyy.zzz pdns_server[22390]: Polled security status of version 4.1.5 at start
jan 03 11:19:09 xxx.yyy.zzz pdns_server[22390]: Creating backend connection for TCP
jan 03 11:19:09 xxx.yyy.zzz pdns_server[22390]: About to create 3 backend threads for UDP
jan 03 11:19:09 xxx.yyy.zzz systemd[1]: Started PowerDNS Authoritative Server.
jan 03 11:19:09 xxx.yyy.zzz pdns_server[22390]: Done launching threads, ready to distribute ques

# systemctl start pdns-recursor
[root@mach6 diafilmroes]# systemctl -l status pdns-recursor
● pdns-recursor.service - PowerDNS Recursor
   Loaded: loaded (/usr/lib/systemd/system/pdns-recursor.service; enabled; vendor preset: enabled)
   Active: active (running) since do 2019-01-03 11:21:53 CET; 13s ago
     Docs: man:pdns_recursor(1)
           man:rec_control(1)
           https://doc.powerdns.com
 Main PID: 22536 (pdns_recursor)
   CGroup: /system.slice/pdns-recursor.service
           └─22536 /usr/sbin/pdns_recursor --daemon=no --write-pid=no --disable-syslog --log-timestamp=n

jan 03 11:21:53 xxx.yyy.zzz pdns_recursor[22536]: Listening for TCP queries on 127.0.0.1:5300
jan 03 11:21:53 xxx.yyy.zzz systemd[1]: Started PowerDNS Recursor.
jan 03 11:21:53 xxx.yyy.zzz pdns_recursor[22536]: Set effective group id to 968
jan 03 11:21:53 xxx.yyy.zzz pdns_recursor[22536]: Set effective user id to 968
jan 03 11:21:53 xxx.yyy.zzz pdns_recursor[22536]: Launching 3 threads
jan 03 11:21:53 xxx.yyy.zzz pdns_recursor[22536]: Done priming cache with root hints
jan 03 11:21:53 xxx.yyy.zzz pdns_recursor[22536]: Done priming cache with root hints
jan 03 11:21:53 xxx.yyy.zzz pdns_recursor[22536]: Done priming cache with root hints
jan 03 11:21:53 xxx.yyy.zzz pdns_recursor[22536]: Done priming cache with root hints
jan 03 11:21:53 xxx.yyy.zzz pdns_recursor[22536]: Enabled 'epoll' multiplexer

# netstat -pantu | grep pdns
tcp        0      0 127.0.0.1:5300          0.0.0.0:*               LISTEN      22536/pdns_recursor 
tcp        0      0 0.0.0.0:53              0.0.0.0:*               LISTEN      22390/pdns_server   
udp        0      0 0.0.0.0:53              0.0.0.0:*                           22390/pdns_server   
udp        0      0 127.0.0.1:5300          0.0.0.0:*                           22536/pdns_recursor 

$ dig mageia.org @127.0.0.1 -p 53

; <<>> DiG 9.10.8-P1 <<>> mageia.org @127.0.0.1 -p 53
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 28669
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1680
;; QUESTION SECTION:
;mageia.org.			IN	A

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: do jan 03 11:24:00 CET 2019
;; MSG SIZE  rcvd: 39

$ dig mageia.org @127.0.0.1 -p 5300

; <<>> DiG 9.10.8-P1 <<>> mageia.org @127.0.0.1 -p 5300
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36575
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;mageia.org.			IN	A

;; ANSWER SECTION:
mageia.org.		1800	IN	A	163.172.148.228

;; Query time: 209 msec
;; SERVER: 127.0.0.1#5300(127.0.0.1)
;; WHEN: do jan 03 11:24:29 CET 2019
;; MSG SIZE  rcvd: 55

Results OK with bug 13521, additional check:
stopped pdns and pdns-recursor, started dnsmasq again and then
$ nslookup mageia.org
Server:		192.168.2.1
Address:	192.168.2.1#53

Non-authoritative answer:
Name:	mageia.org
Address: 163.172.148.228
which is consistent with result above.

Whiteboard: (none) => MGA6-32-OK
CC: (none) => herman.viaene

Comment 6 Lewis Smith 2019-01-03 20:31:23 CET
I need a hot key for you too, Herman, to say 'thanks'.
Advisory from comment 4, validating.

Keywords: (none) => advisory, validated_update
CC: (none) => lewyssmith, sysadmin-bugs

Comment 7 Mageia Robot 2019-01-05 19:31:50 CET
An update for this issue has been pushed to the Mageia Updates repository.

https://advisories.mageia.org/MGASA-2019-0009.html

Resolution: (none) => FIXED
Status: NEW => RESOLVED


Note You need to log in before you can comment on or make changes to this bug.