{"id":"CVE-2018-20452","aliases":["DEBIAN-CVE-2018-20452","EUVD-2018-13007","GHSA-3hq6-4m9g-pfg4","RSEC-2023-1","UBUNTU-CVE-2018-20452"],"status":"published","title":"The read_MSAT_body function in ole.c in libxls 1.4.0 has an invalid free that allows attackers to...","description":"The read_MSAT_body function in ole.c in libxls 1.4.0 has an invalid free that allows attackers to cause a denial of service (application crash) or possibly have unspecified other impact via a crafted file, because of inconsistent memory management (new versus free) in ole2_read_header in ole.c.","severity":{"version":"3.0","score":8.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-08","score":0.01505,"percentile":0.74518,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-119"],"published":"2018-12-25T17:00:00Z","modified":"2026-10-23T18:03:04Z","fixes":[{"ecosystem":"Debian:12","package":"r-cran-readxl","fixed_in":["1.2.0.9000-1"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"r-cran-readxl","fixed_in":["1.2.0.9000-1"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"r-cran-readxl","fixed_in":["1.2.0.9000-1"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Debian:12","package":"r-cran-readxl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.2.0.9000-1"}]}]},{"source":"osv","ecosystem":"Debian:13","package":"r-cran-readxl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.2.0.9000-1"}]}]},{"source":"osv","ecosystem":"Debian:14","package":"r-cran-readxl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.2.0.9000-1"}]}]},{"source":"osv","ecosystem":"CRAN","package":"readxl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.1.0"},{"fixed":"1.3.0"}]}],"versions":["0.1.0","0.1.1","1.0.0","1.1.0","1.2.0"],"bundled":2},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"r-cran-readxl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.1.0-1"]},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"r-cran-readxl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.0.0-1build1","1.0.0-2"]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"r-cran-readxl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.3.1-2","1.3.1-2build1"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"r-cran-readxl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.3.1-2build2"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"r-cran-readxl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.4.3-1"]},{"source":"osv","ecosystem":"Ubuntu:25.10","package":"r-cran-readxl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.4.5-1"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"r-cran-readxl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.4.5-1","1.5.0-1"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"r-cran-readxl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.4.5-1"]}],"products":[{"vendor":"libxls_project","product":"libxls"}],"references":[{"url":"https://github.com/evanmiller/libxls/issues/35","tags":["x_refsource_MISC","x_transferred","Exploit","Third Party Advisory","evidence","web","report"]},{"url":"https://security.gentoo.org/glsa/202003-64","tags":["vendor-advisory","x_refsource_GENTOO","x_transferred","advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2018-20452"},{"url":"https://github.com/advisories/GHSA-3hq6-4m9g-pfg4"},{"url":"https://security-tracker.debian.org/tracker/CVE-2018-20452","tags":["advisory"]},{"url":"https://readxl.tidyverse.org/news/index.html#readxl-130","tags":["web"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2017-2896","tags":["web"]},{"url":"https://github.com/evanmiller/libxls/issues/34","tags":["web"]},{"url":"https://ubuntu.com/security/CVE-2018-20452","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2018-20452","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2018-20452","description":"The read_MSAT_body function in ole.c in libxls 1.4.0 has an invalid free that allows attackers to cause a denial of service (application crash) or possibly have unspecified other impact via a crafted file, because of inconsistent memory management (new versus free) in ole2_read_header in ole.c.","status":"published","published":"2018-12-25T17:00:00Z","modified":"2024-08-05T11:58:19.062Z","updated_at":"2026-11-02T14:34:59.872731Z"}],"euvd":[{"id":"EUVD-2018-13007","description":"The read_MSAT_body function in ole.c in libxls 1.4.0 has an invalid free that allows attackers to cause a denial of service (application crash) or possibly have unspecified other impact via a crafted file, because of inconsistent memory management (new versus free) in ole2_read_header in ole.c.","status":"published","published":"2018-12-25T17:00:00Z","modified":"2024-08-05T11:58:19Z","updated_at":"2026-11-03T02:39:30.889297Z"}],"ghsa":[{"id":"GHSA-3hq6-4m9g-pfg4","title":"The read_MSAT_body function in ole.c in libxls 1.4.0 has an invalid free that allows attackers to...","description":"The read_MSAT_body function in ole.c in libxls 1.4.0 has an invalid free that allows attackers to cause a denial of service (application crash) or possibly have unspecified other impact via a crafted file, because of inconsistent memory management (new versus free) in ole2_read_header in ole.c.","status":"published","published":"2022-05-13T01:27:32Z","modified":"2023-02-01T05:07:55Z","cvss":[{"version":"3.0","score":8.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"cwes":["CWE-119"],"updated_at":"2026-11-02T14:50:38.356016Z"}],"nvd":[{"id":"CVE-2018-20452","description":"The read_MSAT_body function in ole.c in libxls 1.4.0 has an invalid free that allows attackers to cause a denial of service (application crash) or possibly have unspecified other impact via a crafted file, because of inconsistent memory management (new versus free) in ole2_read_header in ole.c.","status":"published","published":"2018-12-25T17:29:00.36Z","modified":"2026-06-17T01:52:52.213Z","cvss":[{"version":"3.0","score":8.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high","assessor":"primary"},{"version":"2.0","score":6.8,"vector":"AV:N/AC:M/Au:N/C:P/I:P/A:P","level":"medium","assessor":"primary"}],"cwes":["CWE-119"],"updated_at":"2026-11-02T14:04:52.056758Z"}],"osv":[{"id":"CVE-2018-20452","description":"The read_MSAT_body function in ole.c in libxls 1.4.0 has an invalid free that allows attackers to cause a denial of service (application crash) or possibly have unspecified other impact via a crafted file, because of inconsistent memory management (new versus free) in ole2_read_header in ole.c.","status":"published","published":"2018-12-25T17:29:00.36Z","modified":"2026-10-20T10:48:20.714455443Z","cvss":[{"version":"3.0","score":8.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:44:09.145458Z"},{"id":"DEBIAN-CVE-2018-20452","description":"The read_MSAT_body function in ole.c in libxls 1.4.0 has an invalid free that allows attackers to cause a denial of service (application crash) or possibly have unspecified other impact via a crafted file, because of inconsistent memory management (new versus free) in ole2_read_header in ole.c.","status":"published","published":"2018-12-25T17:29:00.36Z","modified":"2026-10-23T18:03:04.880207987Z","cvss":[{"version":"3.0","score":8.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:45:30.57382Z"},{"id":"UBUNTU-CVE-2018-20452","description":"The read_MSAT_body function in ole.c in libxls 1.4.0 has an invalid free that allows attackers to cause a denial of service (application crash) or possibly have unspecified other impact via a crafted file, because of inconsistent memory management (new versus free) in ole2_read_header in ole.c.","status":"published","published":"2018-12-25T17:29:00Z","modified":"2026-10-17T12:55:03.747771179Z","cvss":[{"version":"3.0","score":8.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:54:17.91743Z"},{"id":"RSEC-2023-1","title":"Double-free and invalid free vulnerabilities","description":"The readxl R package has been found susceptible to vulnerabilities due to its dependency on libxls library version 1.4.0. Two distinct memory management issues were discovered in the read_MSAT and read_MSAT_body functions within the ole.c component of libxls. The first vulnerability is a double-free flaw in the read_MSAT function, which could be exploited by an attacker using a crafted file to cause a Denial of Service (DoS), resulting in an application crash. This vulnerability is different from CVE-2017-2897. The second vulnerability is an invalid free flaw in the read_MSAT_body function. This issue, stemming from inconsistent memory management in the ole2_read_header function, allows attackers to trigger a DoS, application crash, or possibly an unspecified impact through a specially crafted file.","status":"published","published":"2023-07-13T02:37:06.6Z","modified":"2025-05-19T19:43:47.604636Z","updated_at":"2026-11-02T15:53:39.492624Z"}]}}
