CVE-2019-17042
rsyslog: heap-based overflow in contrib/pmcisconames/pmcisconames.c
Severity by source
Trivy's own label is CRITICAL. Rated critical by NVD, Photon OS. Rated lower by Red Hat (medium), Amazon (medium), Oracle (medium), Ubuntu (low).
Description
An issue was discovered in Rsyslog v8.1908.0. contrib/pmcisconames/pmcisconames.c has a heap overflow in the parser for Cisco log messages. The parser tries to locate a log message delimiter (in this case, a space or a colon), but fails to account for strings that do not satisfy this constraint. If the string does not match, then the variable lenMsg will reach the value zero and will skip the sanity check that detects invalid log messages. The message will then be considered valid, and the parser will eat up the nonexistent colon delimiter. In doing so, it will decrement lenMsg, a signed integer, whose value was zero and now becomes minus one. The following step in the parser is to shift left the contents of the message. To do this, it will call memmove with the right pointers to the target and destination strings, but the lenMsg will now be interpreted as a huge value, causing a heap overflow.
Affected packages and fixed versions
| Source | Package | Fixed in |
|---|---|---|
| Photon OS 1.0 | rsyslog | 8.1910.0-2.ph1 |
| Photon OS 2.0 | rsyslog | 8.1910.0-1.ph2 |
| Photon OS 3.0 | rsyslog | 8.1910.0-1.ph3 |
| alpine 3.10 | rsyslog | 8.1904.0-r1 |
| alpine 3.11 | rsyslog | 8.1908.0-r1 |
| alpine 3.12 | rsyslog | 8.1908.0-r1 |
| alpine 3.13 | rsyslog | 8.1908.0-r1 |
| alpine 3.14 | rsyslog | 8.1908.0-r1 |
| alpine 3.15 | rsyslog | 8.1908.0-r1 |
| alpine 3.16 | rsyslog | 8.1908.0-r1 |
| alpine 3.17 | rsyslog | 8.1908.0-r1 |
| alpine 3.18 | rsyslog | 8.1908.0-r1 |
Show all 100 entries from 36 sources
| Source | Package | Fixed in |
|---|---|---|
| Photon OS 1.0 | rsyslog | 8.1910.0-2.ph1 |
| Photon OS 2.0 | rsyslog | 8.1910.0-1.ph2 |
| Photon OS 3.0 | rsyslog | 8.1910.0-1.ph3 |
| alpine 3.10 | rsyslog | 8.1904.0-r1 |
| alpine 3.11 | rsyslog | 8.1908.0-r1 |
| alpine 3.12 | rsyslog | 8.1908.0-r1 |
| alpine 3.13 | rsyslog | 8.1908.0-r1 |
| alpine 3.14 | rsyslog | 8.1908.0-r1 |
| alpine 3.15 | rsyslog | 8.1908.0-r1 |
| alpine 3.16 | rsyslog | 8.1908.0-r1 |
| alpine 3.17 | rsyslog | 8.1908.0-r1 |
| alpine 3.18 | rsyslog | 8.1908.0-r1 |
| alpine 3.19 | rsyslog | 8.1908.0-r1 |
| alpine 3.20 | rsyslog | 8.1908.0-r1 |
| alpine 3.21 | rsyslog | 8.1908.0-r1 |
| alpine 3.22 | rsyslog | 8.1908.0-r1 |
| alpine 3.23 | rsyslog | 8.1908.0-r1 |
| alpine 3.24 | rsyslog | 8.1908.0-r1 |
| alpine 3.7 | rsyslog | 8.31.0-r1 |
| alpine 3.8 | rsyslog | 8.34.0-r1 |
| alpine 3.9 | rsyslog | 8.40.0-r4 |
| alpine edge | rsyslog | 8.1908.0-r1 |
| amazon linux 2 | rsyslog | 8.24.0-52.amzn2 |
| amazon linux 2 | rsyslog-crypto | 8.24.0-52.amzn2 |
| amazon linux 2 | rsyslog-debuginfo | 8.24.0-52.amzn2 |
| amazon linux 2 | rsyslog-doc | 8.24.0-52.amzn2 |
| amazon linux 2 | rsyslog-elasticsearch | 8.24.0-52.amzn2 |
| amazon linux 2 | rsyslog-gnutls | 8.24.0-52.amzn2 |
| amazon linux 2 | rsyslog-gssapi | 8.24.0-52.amzn2 |
| amazon linux 2 | rsyslog-kafka | 8.24.0-52.amzn2 |
| amazon linux 2 | rsyslog-libdbi | 8.24.0-52.amzn2 |
| amazon linux 2 | rsyslog-mmaudit | 8.24.0-52.amzn2 |
| amazon linux 2 | rsyslog-mmjsonparse | 8.24.0-52.amzn2 |
| amazon linux 2 | rsyslog-mmkubernetes | 8.24.0-52.amzn2 |
| amazon linux 2 | rsyslog-mmnormalize | 8.24.0-52.amzn2 |
| amazon linux 2 | rsyslog-mmsnmptrapd | 8.24.0-52.amzn2 |
| amazon linux 2 | rsyslog-mysql | 8.24.0-52.amzn2 |
| amazon linux 2 | rsyslog-pgsql | 8.24.0-52.amzn2 |
| amazon linux 2 | rsyslog-relp | 8.24.0-52.amzn2 |
| amazon linux 2 | rsyslog-snmp | 8.24.0-52.amzn2 |
| amazon linux 2 | rsyslog-udpspoof | 8.24.0-52.amzn2 |
| debian 10 | rsyslog | 8.1901.0-1+deb10u1 |
| debian 11 | rsyslog | 8.1910.0-1 |
| debian 12 | rsyslog | 8.1910.0-1 |
| debian 13 | rsyslog | 8.1910.0-1 |
| debian 14 | rsyslog | 8.1910.0-1 |
| debian 8 | rsyslog | 8.4.2-1+deb8u3 |
| debian 9 | rsyslog | 8.24.0-1+deb9u1 |
| echo | rsyslog | 8.1910.0-1 |
| Oracle Linux 7 | rsyslog | 8.24.0-52.el7 |
| Oracle Linux 7 | rsyslog-crypto | 8.24.0-52.el7 |
| Oracle Linux 7 | rsyslog-doc | 8.24.0-52.el7 |
| Oracle Linux 7 | rsyslog-elasticsearch | 8.24.0-52.el7 |
| Oracle Linux 7 | rsyslog-gnutls | 8.24.0-52.el7 |
| Oracle Linux 7 | rsyslog-gssapi | 8.24.0-52.el7 |
| Oracle Linux 7 | rsyslog-kafka | 8.24.0-52.el7 |
| Oracle Linux 7 | rsyslog-libdbi | 8.24.0-52.el7 |
| Oracle Linux 7 | rsyslog-mmaudit | 8.24.0-52.el7 |
| Oracle Linux 7 | rsyslog-mmjsonparse | 8.24.0-52.el7 |
| Oracle Linux 7 | rsyslog-mmkubernetes | 8.24.0-52.el7 |
| Oracle Linux 7 | rsyslog-mmnormalize | 8.24.0-52.el7 |
| Oracle Linux 7 | rsyslog-mmsnmptrapd | 8.24.0-52.el7 |
| Oracle Linux 7 | rsyslog-mysql | 8.24.0-52.el7 |
| Oracle Linux 7 | rsyslog-pgsql | 8.24.0-52.el7 |
| Oracle Linux 7 | rsyslog-relp | 8.24.0-52.el7 |
| Oracle Linux 7 | rsyslog-snmp | 8.24.0-52.el7 |
| Oracle Linux 7 | rsyslog-udpspoof | 8.24.0-52.el7 |
| Oracle Linux 8 | rsyslog | 8.1911.0-3.el8 |
| Oracle Linux 8 | rsyslog-crypto | 8.1911.0-3.el8 |
| Oracle Linux 8 | rsyslog-doc | 8.1911.0-3.el8 |
| Oracle Linux 8 | rsyslog-elasticsearch | 8.1911.0-3.el8 |
| Oracle Linux 8 | rsyslog-gnutls | 8.1911.0-3.el8 |
| Oracle Linux 8 | rsyslog-gssapi | 8.1911.0-3.el8 |
| Oracle Linux 8 | rsyslog-kafka | 8.1911.0-3.el8 |
| Oracle Linux 8 | rsyslog-mmaudit | 8.1911.0-3.el8 |
| Oracle Linux 8 | rsyslog-mmjsonparse | 8.1911.0-3.el8 |
| Oracle Linux 8 | rsyslog-mmkubernetes | 8.1911.0-3.el8 |
| Oracle Linux 8 | rsyslog-mmnormalize | 8.1911.0-3.el8 |
| Oracle Linux 8 | rsyslog-mmsnmptrapd | 8.1911.0-3.el8 |
| Oracle Linux 8 | rsyslog-mysql | 8.1911.0-3.el8 |
| Oracle Linux 8 | rsyslog-pgsql | 8.1911.0-3.el8 |
| Oracle Linux 8 | rsyslog-relp | 8.1911.0-3.el8 |
| Oracle Linux 8 | rsyslog-snmp | 8.1911.0-3.el8 |
| Red Hat | rsyslog | no fix listed |
| Red Hat | rsyslog-gnutls | no fix listed |
| Red Hat | rsyslog-gssapi | no fix listed |
| Red Hat | rsyslog-mysql | no fix listed |
| Red Hat | rsyslog-pgsql | no fix listed |
| Red Hat | rsyslog-relp | no fix listed |
| Red Hat | rsyslog-snmp | no fix listed |
| Red Hat | rsyslog7 | no fix listed |
| Red Hat | rsyslog7-elasticsearch | no fix listed |
| Red Hat | rsyslog7-gnutls | no fix listed |
| Red Hat | rsyslog7-gssapi | no fix listed |
| Red Hat | rsyslog7-mysql | no fix listed |
| Red Hat | rsyslog7-pgsql | no fix listed |
| Red Hat | rsyslog7-relp | no fix listed |
| Red Hat | rsyslog7-snmp | no fix listed |
| ubuntu 16.04-ESM | rsyslog | 8.16.0-1ubuntu3.1+esm1 |
| ubuntu 18.04-ESM | rsyslog | no fix listed |
References
- http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00031.html
- http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00032.html
- https://access.redhat.com/security/cve/CVE-2019-17042
- https://github.com/rsyslog/rsyslog/blob/v8-stable/ChangeLog
- https://github.com/rsyslog/rsyslog/pull/3883
- https://linux.oracle.com/cve/CVE-2019-17042.html
- https://linux.oracle.com/errata/ELSA-2020-1702.html
- https://lists.debian.org/debian-lts-announce/2021/11/msg00030.html
All 13 references
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/KPNCHI7X2IEXRH6RYD6IDPR4PLB5RPC7/
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/W6SUQE25RD37CD24BHKUWMG27U5RQ2FU/
- https://nvd.nist.gov/vuln/detail/CVE-2019-17042
- https://ubuntu.com/security/notices/USN-5419-1
- https://www.cve.org/CVERecord?id=CVE-2019-17042