{"id":"CVE-2022-41720","aliases":["AZL-79038","AZL-98604","BELL-CVE-2022-41720","BIT-golang-2022-41720","DEBIAN-CVE-2022-41720","EUVD-2022-44894","GHSA-cvf9-g74c-vv79","GO-2022-1143","SUSE-SU-2022:4397-1","SUSE-SU-2022:4398-1","SUSE-SU-2023:0871-1","SUSE-SU-2023:2312-1","openSUSE-SU-2024:12552-1","openSUSE-SU-2024:12553-1"],"status":"published","title":"Restricted file access on Windows in os and net/http","description":"On Windows, restricted files can be accessed via os.DirFS and http.Dir. The os.DirFS function and http.Dir type provide access to a tree of files rooted at a given directory. These functions permit access to Windows device files under that root. For example, os.DirFS(\"C:/tmp\").Open(\"COM1\") opens the COM1 device. Both os.DirFS and http.Dir only provide read-only filesystem access. In addition, on Windows, an os.DirFS for the directory (the root of the current drive) can permit a maliciously crafted path to escape from the drive and access any path on the system. With fix applied, the behavior of os.DirFS(\"\") has changed. Previously, an empty root was treated equivalently to \"/\", so os.DirFS(\"\").Open(\"tmp\") would open the path \"/tmp\". This now returns an error.","severity":{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-09","score":0.01279,"percentile":0.70197,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-22"],"published":"2022-12-07T16:08:45Z","modified":"2026-11-03T06:02:45Z","fixes":[{"ecosystem":"Bitnami","package":"golang","fixed_in":["1.18.9","1.19.4"],"sources":["osv"]},{"ecosystem":"Debian:12","package":"golang-1.19","fixed_in":["1.19.4-1"],"sources":["osv"]},{"ecosystem":"Go","package":"stdlib","fixed_in":["1.18.9","1.19.4"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Azure Linux:3","package":"golang","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"1.25.7-1"}]}]},{"source":"osv","ecosystem":"Azure Linux:3","package":"golang","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.27.0"},{"last_affected":"1.27.1-1"}]}]},{"source":"osv","ecosystem":"Bitnami","package":"golang","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"1.18.9"},{"introduced":"1.19.0"},{"fixed":"1.19.4"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"golang-1.19","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.19.4-1"}]}]},{"source":"osv","ecosystem":"Go","package":"stdlib","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"1.18.9"},{"introduced":"1.19.0-0"},{"fixed":"1.19.4"}]}]},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Module for Development Tools 15 SP3","package":"go1.19","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.19.4-150000.1.18.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Module for Development Tools 15 SP4","package":"go1.19","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.19.4-150000.1.18.1"}]}],"bundled":2},{"source":"osv","ecosystem":"openSUSE:Leap 15.3","package":"go1.19","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.19.4-150000.1.18.1"}]}],"bundled":2},{"source":"osv","ecosystem":"openSUSE:Leap 15.4","package":"go1.19","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.19.4-150000.1.18.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Module for Development Tools 15 SP3","package":"go1.18","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.18.9-150000.1.40.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Module for Development Tools 15 SP4","package":"go1.18","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.18.9-150000.1.40.1"}]}],"bundled":2},{"source":"osv","ecosystem":"openSUSE:Leap 15.3","package":"go1.18","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.18.9-150000.1.40.1"}]}],"bundled":2},{"source":"osv","ecosystem":"openSUSE:Leap 15.4","package":"go1.18","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.18.9-150000.1.40.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Module for Containers 15 SP4","package":"container-suseconnect","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.4.0-150000.4.24.1"}]}],"bundled":5},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS","package":"container-suseconnect","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.4.0-150000.4.24.1"}]}],"bundled":5},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS","package":"container-suseconnect","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.4.0-150000.4.24.1"}]}],"bundled":5},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP3-ESPOS","package":"container-suseconnect","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.4.0-150000.4.24.1"}]}],"bundled":5},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS","package":"container-suseconnect","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.4.0-150000.4.24.1"}]}],"bundled":5},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 15 SP1-LTSS","package":"container-suseconnect","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.4.0-150000.4.24.1"}]}],"bundled":5},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 15 SP2-LTSS","package":"container-suseconnect","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.4.0-150000.4.24.1"}]}],"bundled":5},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 15 SP3-LTSS","package":"container-suseconnect","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.4.0-150000.4.24.1"}]}],"bundled":5},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 15 SP1","package":"container-suseconnect","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.4.0-150000.4.24.1"}]}],"bundled":5},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 15 SP2","package":"container-suseconnect","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.4.0-150000.4.24.1"}]}],"bundled":5},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 15 SP3","package":"container-suseconnect","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.4.0-150000.4.24.1"}]}],"bundled":5},{"source":"osv","ecosystem":"SUSE:Enterprise Storage 7","package":"container-suseconnect","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.4.0-150000.4.24.1"}]}],"bundled":5},{"source":"osv","ecosystem":"SUSE:Enterprise Storage 7.1","package":"container-suseconnect","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.4.0-150000.4.24.1"}]}],"bundled":5},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Module for Development Tools 15 SP4","package":"go1.18-openssl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.18.10.1-150000.1.9.1"}]}],"bundled":28},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP3-ESPOS","package":"go1.18-openssl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.18.10.1-150000.1.9.1"}]}],"bundled":28},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS","package":"go1.18-openssl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.18.10.1-150000.1.9.1"}]}],"bundled":28},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Real Time 15 SP3","package":"go1.18-openssl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.18.10.1-150000.1.9.1"}]}],"bundled":28},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 15 SP3-LTSS","package":"go1.18-openssl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.18.10.1-150000.1.9.1"}]}],"bundled":28},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 15 SP3","package":"go1.18-openssl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.18.10.1-150000.1.9.1"}]}],"bundled":28},{"source":"osv","ecosystem":"SUSE:Enterprise Storage 7.1","package":"go1.18-openssl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.18.10.1-150000.1.9.1"}]}],"bundled":28},{"source":"osv","ecosystem":"openSUSE:Leap 15.4","package":"go1.18-openssl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.18.10.1-150000.1.9.1"}]}],"bundled":28},{"source":"osv","ecosystem":"openSUSE:Leap 15.5","package":"go1.18-openssl","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.18.10.1-150000.1.9.1"}]}],"bundled":28},{"source":"osv","ecosystem":"openSUSE:Tumbleweed","package":"go1.18","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.18.9-1.1"}]}],"bundled":2},{"source":"osv","ecosystem":"openSUSE:Tumbleweed","package":"go1.19","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.19.4-1.1"}]}],"bundled":2}],"products":[{"vendor":"go standard library","product":"net/http"},{"vendor":"go standard library","product":"os"},{"vendor":"golang","product":"go"}],"references":[{"url":"https://go.dev/issue/56694","tags":["x_transferred","Issue Tracking","Vendor Advisory","advisory","web","report"]},{"url":"https://go.dev/cl/455716","tags":["x_transferred","Patch","Vendor Advisory","advisory","web","fix"]},{"url":"https://groups.google.com/g/golang-announce/c/L_3rmdT0BMU/m/yZDrXjIiBQAJ","tags":["x_transferred","Patch","Release Notes","Third Party Advisory","advisory","web"]},{"url":"https://pkg.go.dev/vuln/GO-2022-1143","tags":["x_transferred","Patch","Vendor Advisory","advisory","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2022-41720","tags":["web","advisory"]},{"url":"https://github.com/advisories/GHSA-cvf9-g74c-vv79"},{"url":"https://docs.bell-sw.com/security/cves/CVE-2022-41720","tags":["advisory"]},{"url":"https://pkg.go.dev","tags":["web"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/41xxx/CVE-2022-41720.json","tags":["advisory"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2022-41720","tags":["advisory"]},{"url":"https://www.suse.com/support/update/announcement/2022/suse-su-20224397-1/","tags":["advisory"]},{"url":"https://bugzilla.suse.com/1200441","tags":["report"]},{"url":"https://bugzilla.suse.com/1206134","tags":["report"]},{"url":"https://bugzilla.suse.com/1206135","tags":["report"]},{"url":"https://www.suse.com/security/cve/CVE-2022-41717","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-41720","tags":["web"]},{"url":"https://www.suse.com/support/update/announcement/2022/suse-su-20224398-1/","tags":["advisory"]},{"url":"https://bugzilla.suse.com/1193742","tags":["report"]},{"url":"https://www.suse.com/support/update/announcement/2023/suse-su-20230871-1/","tags":["advisory"]},{"url":"https://bugzilla.suse.com/1208270","tags":["report"]},{"url":"https://bugzilla.suse.com/1208271","tags":["report"]},{"url":"https://bugzilla.suse.com/1208272","tags":["report"]},{"url":"https://bugzilla.suse.com/1209030","tags":["report"]},{"url":"https://www.suse.com/security/cve/CVE-2022-41723","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-41724","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-41725","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2023-24532","tags":["web"]},{"url":"https://www.suse.com/support/update/announcement/2023/suse-su-20232312-1/","tags":["advisory"]},{"url":"https://bugzilla.suse.com/1183043","tags":["report"]},{"url":"https://bugzilla.suse.com/1198423","tags":["report"]},{"url":"https://bugzilla.suse.com/1198424","tags":["report"]},{"url":"https://bugzilla.suse.com/1198427","tags":["report"]},{"url":"https://bugzilla.suse.com/1199413","tags":["report"]},{"url":"https://bugzilla.suse.com/1200134","tags":["report"]},{"url":"https://bugzilla.suse.com/1200135","tags":["report"]},{"url":"https://bugzilla.suse.com/1200136","tags":["report"]},{"url":"https://bugzilla.suse.com/1200137","tags":["report"]},{"url":"https://bugzilla.suse.com/1201434","tags":["report"]},{"url":"https://bugzilla.suse.com/1201436","tags":["report"]},{"url":"https://bugzilla.suse.com/1201437","tags":["report"]},{"url":"https://bugzilla.suse.com/1201440","tags":["report"]},{"url":"https://bugzilla.suse.com/1201443","tags":["report"]},{"url":"https://bugzilla.suse.com/1201444","tags":["report"]},{"url":"https://bugzilla.suse.com/1201445","tags":["report"]},{"url":"https://bugzilla.suse.com/1201447","tags":["report"]},{"url":"https://bugzilla.suse.com/1201448","tags":["report"]},{"url":"https://bugzilla.suse.com/1202035","tags":["report"]},{"url":"https://bugzilla.suse.com/1203185","tags":["report"]},{"url":"https://bugzilla.suse.com/1204023","tags":["report"]},{"url":"https://bugzilla.suse.com/1204024","tags":["report"]},{"url":"https://bugzilla.suse.com/1204025","tags":["report"]},{"url":"https://bugzilla.suse.com/1204941","tags":["report"]},{"url":"https://bugzilla.suse.com/1208491","tags":["report"]},{"url":"https://www.suse.com/security/cve/CVE-2022-1705","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-1962","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-24675","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-27536","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-27664","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-28131","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-28327","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-2879","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-2880","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-29526","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-29804","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-30580","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-30629","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-30630","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-30631","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-30632","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-30633","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-30634","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-30635","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-32148","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-32189","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-41715","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2022-41716","tags":["web"]},{"url":"","tags":["advisory"]}],"sources":{"cve":[{"id":"CVE-2022-41720","title":"Restricted file access on Windows in os and net/http","description":"On Windows, restricted files can be accessed via os.DirFS and http.Dir. The os.DirFS function and http.Dir type provide access to a tree of files rooted at a given directory. These functions permit access to Windows device files under that root. For example, os.DirFS(\"C:/tmp\").Open(\"COM1\") opens the COM1 device. Both os.DirFS and http.Dir only provide read-only filesystem access. In addition, on Windows, an os.DirFS for the directory (the root of the current drive) can permit a maliciously crafted path to escape from the drive and access any path on the system. With fix applied, the behavior of os.DirFS(\"\") has changed. Previously, an empty root was treated equivalently to \"/\", so os.DirFS(\"\").Open(\"tmp\") would open the path \"/tmp\". This now returns an error.","status":"published","published":"2022-12-07T16:11:18.867Z","modified":"2025-04-23T15:43:46.208Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high","assessor":"adp"}],"updated_at":"2026-11-02T14:34:28.374916Z"}],"euvd":[{"id":"EUVD-2022-44894","description":"On Windows, restricted files can be accessed via os.DirFS and http.Dir. The os.DirFS function and http.Dir type provide access to a tree of files rooted at a given directory. These functions permit access to Windows device files under that root. For example, os.DirFS(\"C:/tmp\").Open(\"COM1\") opens the COM1 device. Both os.DirFS and http.Dir only provide read-only filesystem access. In addition, on Windows, an os.DirFS for the directory (the root of the current drive) can permit a maliciously crafted path to escape from the drive and access any path on the system. With fix applied, the behavior of os.DirFS(\"\") has changed. Previously, an empty root was treated equivalently to \"/\", so os.DirFS(\"\").Open(\"tmp\") would open the path \"/tmp\". This now returns an error.","status":"published","published":"2022-12-07T16:11:18Z","modified":"2025-04-23T15:43:46Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high"}],"updated_at":"2026-11-02T20:52:13.655516Z"}],"ghsa":[{"id":"GHSA-cvf9-g74c-vv79","title":"On Windows, restricted files can be accessed via os.DirFS and http.Dir. The os.DirFS function and...","description":"On Windows, restricted files can be accessed via os.DirFS and http.Dir. The os.DirFS function and http.Dir type provide access to a tree of files rooted at a given directory. These functions permit access to Windows device files under that root. For example, os.DirFS(\"C:/tmp\").Open(\"COM1\") opens the COM1 device. Both os.DirFS and http.Dir only provide read-only filesystem access. In addition, on Windows, an os.DirFS for the directory (the root of the current drive) can permit a maliciously crafted path to escape from the drive and access any path on the system. With fix applied, the behavior of os.DirFS(\"\") has changed. Previously, an empty root was treated equivalently to \"/\", so os.DirFS(\"\").Open(\"tmp\") would open the path \"/tmp\". This now returns an error.","status":"published","published":"2022-12-07T18:30:26Z","modified":"2023-01-28T05:05:50Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high"}],"cwes":["CWE-22"],"updated_at":"2026-11-02T14:44:22.854564Z"}],"nvd":[{"id":"CVE-2022-41720","description":"On Windows, restricted files can be accessed via os.DirFS and http.Dir. The os.DirFS function and http.Dir type provide access to a tree of files rooted at a given directory. These functions permit access to Windows device files under that root. For example, os.DirFS(\"C:/tmp\").Open(\"COM1\") opens the COM1 device. Both os.DirFS and http.Dir only provide read-only filesystem access. In addition, on Windows, an os.DirFS for the directory (the root of the current drive) can permit a maliciously crafted path to escape from the drive and access any path on the system. With fix applied, the behavior of os.DirFS(\"\") has changed. Previously, an empty root was treated equivalently to \"/\", so os.DirFS(\"\").Open(\"tmp\") would open the path \"/tmp\". This now returns an error.","status":"published","published":"2022-12-07T17:15:10.293Z","modified":"2026-06-17T05:03:42.497Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high","assessor":"primary"},{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high","assessor":"secondary"}],"cwes":["CWE-22"],"updated_at":"2026-11-02T14:07:33.239526Z"}],"osv":[{"id":"AZL-79038","title":"CVE-2022-41720 affecting package golang 1.25.7-1","description":"On Windows, restricted files can be accessed via os.DirFS and http.Dir. The os.DirFS function and http.Dir type provide access to a tree of files rooted at a given directory. These functions permit access to Windows device files under that root. For example, os.DirFS(\"C:/tmp\").Open(\"COM1\") opens the COM1 device. Both os.DirFS and http.Dir only provide read-only filesystem access. In addition, on Windows, an os.DirFS for the directory (the root of the current drive) can permit a maliciously crafted path to escape from the drive and access any path on the system. With fix applied, the behavior of os.DirFS(\"\") has changed. Previously, an empty root was treated equivalently to \"/\", so os.DirFS(\"\").Open(\"tmp\") would open the path \"/tmp\". This now returns an error.","status":"published","published":"2022-12-07T17:15:10Z","modified":"2026-04-21T04:34:35.727499Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high"}],"updated_at":"2026-11-02T15:28:10.017343Z"},{"id":"AZL-98604","title":"CVE-2022-41720 affecting package golang 1.27.1-1","description":"On Windows, restricted files can be accessed via os.DirFS and http.Dir. The os.DirFS function and http.Dir type provide access to a tree of files rooted at a given directory. These functions permit access to Windows device files under that root. For example, os.DirFS(\"C:/tmp\").Open(\"COM1\") opens the COM1 device. Both os.DirFS and http.Dir only provide read-only filesystem access. In addition, on Windows, an os.DirFS for the directory (the root of the current drive) can permit a maliciously crafted path to escape from the drive and access any path on the system. With fix applied, the behavior of os.DirFS(\"\") has changed. Previously, an empty root was treated equivalently to \"/\", so os.DirFS(\"\").Open(\"tmp\") would open the path \"/tmp\". This now returns an error.","status":"published","published":"2022-12-07T17:15:10Z","modified":"2026-09-16T06:39:01Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high"}],"updated_at":"2026-11-02T15:28:12.596039Z"},{"id":"BELL-CVE-2022-41720","title":"CVE-2022-41720 does not affect BellSoft software","status":"withdrawn","published":"2023-08-31T12:15:53.370995Z","modified":"2026-01-26T09:47:24.161776Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high"}],"updated_at":"2026-11-02T15:28:17.151188Z"},{"id":"CVE-2022-41720","title":"Restricted file access on Windows in os and net/http","description":"On Windows, restricted files can be accessed via os.DirFS and http.Dir. The os.DirFS function and http.Dir type provide access to a tree of files rooted at a given directory. These functions permit access to Windows device files under that root. For example, os.DirFS(\"C:/tmp\").Open(\"COM1\") opens the COM1 device. Both os.DirFS and http.Dir only provide read-only filesystem access. In addition, on Windows, an os.DirFS for the directory (the root of the current drive) can permit a maliciously crafted path to escape from the drive and access any path on the system. With fix applied, the behavior of os.DirFS(\"\") has changed. Previously, an empty root was treated equivalently to \"/\", so os.DirFS(\"\").Open(\"tmp\") would open the path \"/tmp\". This now returns an error.","status":"published","published":"2022-12-07T16:11:18.867Z","modified":"2026-10-28T02:30:21.254857172Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","level":"high"}],"updated_at":"2026-11-02T15:44:26.860704Z"},{"id":"BIT-golang-2022-41720","title":"Restricted file access on Windows in os and net/http","description":"On Windows, restricted files can be accessed via os.DirFS and http.Dir. The os.DirFS function and http.Dir type provide access to a tree of files rooted at a given directory. These functions permit access to Windows device files under that root. For example, os.DirFS(\"C:/tmp\").Open(\"COM1\") opens the COM1 device. Both os.DirFS and http.Dir only provide read-only filesystem access. In addition, on Windows, an os.DirFS for the directory (the root of the current drive) can permit a maliciously crafted path to escape from the drive and access any path on the system. With fix applied, the behavior of os.DirFS(\"\") has changed. Previously, an empty root was treated equivalently to \"/\", so os.DirFS(\"\").Open(\"tmp\") would open the path \"/tmp\". This now returns an error.","status":"published","published":"2024-03-06T10:58:08.803Z","modified":"2026-09-08T08:47:49.065013582Z","updated_at":"2026-11-02T15:28:30.70064Z"},{"id":"DEBIAN-CVE-2022-41720","description":"On Windows, restricted files can be accessed via os.DirFS and http.Dir. The os.DirFS function and http.Dir type provide access to a tree of files rooted at a given directory. These functions permit access to Windows device files under that root. For example, os.DirFS(\"C:/tmp\").Open(\"COM1\") opens the COM1 device. Both os.DirFS and http.Dir only provide read-only filesystem access. In addition, on Windows, an os.DirFS for the directory (the root of the current drive) can permit a maliciously crafted path to escape from the drive and access any path on the system. With fix applied, the behavior of os.DirFS(\"\") has changed. Previously, an empty root was treated equivalently to \"/\", so os.DirFS(\"\").Open(\"tmp\") would open the path \"/tmp\". This now returns an error.","status":"published","published":"2022-12-07T17:15:10.293Z","modified":"2026-11-03T06:02:45.765328992Z","updated_at":"2026-11-03T06:43:43.638289Z"},{"id":"GO-2022-1143","title":"Restricted file access on Windows in os and net/http","description":"On Windows, restricted files can be accessed via os.DirFS and http.Dir.\n\nThe os.DirFS function and http.Dir type provide access to a tree of files rooted at a given directory. These functions permit access to Windows device files under that root. For example, os.DirFS(\"C:/tmp\").Open(\"COM1\") opens the COM1 device. Both os.DirFS and http.Dir only provide read-only filesystem access.\n\nIn addition, on Windows, an os.DirFS for the directory (the root of the current drive) can permit a maliciously crafted path to escape from the drive and access any path on the system.\n\nWith fix applied, the behavior of os.DirFS(\"\") has changed. Previously, an empty root was treated equivalently to \"/\", so os.DirFS(\"\").Open(\"tmp\") would open the path \"/tmp\". This now returns an error.","status":"published","published":"2022-12-07T16:08:45Z","modified":"2026-02-04T04:08:13.589543Z","updated_at":"2026-11-02T15:47:00.918515Z"},{"id":"openSUSE-SU-2024:12552-1","title":"go1.18-1.18.9-1.1 on GA media","description":"These are all security issues fixed in the go1.18-1.18.9-1.1 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2024-06-15T00:00:00Z","modified":"2026-02-04T02:33:25.415454Z","updated_at":"2026-11-02T16:58:35.751245Z"},{"id":"openSUSE-SU-2024:12553-1","title":"go1.19-1.19.4-1.1 on GA media","description":"These are all security issues fixed in the go1.19-1.19.4-1.1 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2024-06-15T00:00:00Z","modified":"2026-02-04T04:19:20.100736Z","updated_at":"2026-11-02T16:58:35.751245Z"},{"id":"SUSE-SU-2022:4397-1","title":"Security update for go1.19","description":"This update for go1.19 fixes the following issues:\n\nUpdate to version 1.19.4, includes the following security fixes:\n\n- CVE-2022-41717: net/http: limit canonical header cache by bytes, not entries (bsc#1206135).\n- CVE-2022-41720: os, net/http: avoid escapes from os.DirFS and http.Dir on Windows (bsc#1206134).\n","status":"published","published":"2022-12-09T14:59:31Z","modified":"2026-02-04T03:03:21.888248Z","updated_at":"2026-11-02T15:53:51.853735Z"},{"id":"SUSE-SU-2022:4398-1","title":"Security update for go1.18","description":"This update for go1.18 fixes the following issues:\n\nUpdate to version 1.18.9, includes the following security fixes:\n\n- CVE-2022-41717: net/http: limit canonical header cache by bytes, not entries (bsc#1206135)\n- CVE-2022-41720: os, net/http: avoid escapes from os.DirFS and http.Dir on Windows (bsc#1206134)\n","status":"published","published":"2022-12-09T14:59:49Z","modified":"2026-02-04T03:49:15.63224Z","updated_at":"2026-11-02T15:53:51.853735Z"},{"id":"SUSE-SU-2023:0871-1","title":"Security update for container-suseconnect","description":"\nThis update of container-suseconnect fixes the following issue:\n\n- container-suseconnect was rebuilt against the current go1.19 release, fixing security issues and other bugs fixed in go1.19.7.\n\n- CVE-2022-41723: Fixed quadratic complexity in HPACK decoding (bsc#1208270).\n- CVE-2022-41724: Fixed panic with arge handshake records in crypto/tls (bsc#1208271).\n- CVE-2022-41725: Fixed denial of service from excessive resource consumption in net/http and mime/multipart (bsc#1208272).\n- CVE-2023-24532: Fixed incorrect P-256 ScalarMult and ScalarBaseMult results (bsc#1209030).\n\n- CVE-2022-41720: os, net/http: avoid escapes from os.DirFS and http.Dir on Windows (bsc#1206134).\n","status":"published","published":"2023-03-22T13:33:28Z","modified":"2026-02-04T04:24:02.262415Z","updated_at":"2026-11-02T15:53:52.350754Z"},{"id":"SUSE-SU-2023:2312-1","title":"Security update for go1.18-openssl","description":"This update for go1.18-openssl fixes the following issues:\n\n- Add subpackage go1.x-libstd compiled shared object libstd.so (jsc#PED-1962)\n  * Main go1.x package included libstd.so in previous versions\n  * Split libstd.so into subpackage that can be installed standalone\n  * Continues the slimming down of main go1.x package by 40 Mb\n  * Experimental and not recommended for general use, Go currently has no ABI\n  * Upstream Go has not committed to support buildmode=shared long-term\n  * Do not use in packaging, build static single binaries (the default)\n  * Upstream Go go1.x binary releases do not include libstd.so\n  * go1.x Suggests go1.x-libstd so not installed by default Recommends\n  * go1.x-libstd does not Require: go1.x so can install standalone\n  * Provides go-libstd unversioned package name\n  * Fix build step -buildmode=shared std to omit -linkshared\n- Packaging improvements:\n  * go1.x Suggests go1.x-doc so not installed by default Recommends\n  * Use Group: Development/Languages/Go instead of Other\n\n- Improvements to go1.x packaging spec:\n  * On Tumbleweed bootstrap with current default gcc13 and gccgo118\n  * On SLE-12 aarch64 ppc64le ppc64 remove overrides to bootstrap\n    using go1.x package (%bcond_without gccgo). This is no longer\n    needed on current SLE-12:Update and removing will consolidate\n    the build configurations used.\n  * Change source URLs to go.dev as per Go upstream\n  * On x86_64 export GOAMD64=v1 as per the current baseline.\n    At this time forgo GOAMD64=v3 option for x86_64_v3 support.\n  * On x86_64 %define go_amd64=v1 as current instruction baseline\n\n- Update to version 1.18.10.1 cut from the go1.18-openssl-fips\n  branch at the revision tagged go1.18.10-1-openssl-fips.\n  * Merge branch dev.boringcrypto.go1.18 into go1.18-openssl-fips\n  * Merge go1.18.10 into dev.boringcrypto.go1.18\n\n- go1.18.10 (released 2023-01-10) includes fixes to cgo, the\n  compiler, the linker, and the crypto/x509, net/http, and syscall\n  packages.\n  Refs bsc#1193742 go1.18 release tracking\n  * go#57705 misc/cgo: backport needed for dlltool fix\n  * go#57426 crypto/x509: Verify on macOS does not return typed errors\n  * go#57344 cmd/compile: the loong64 intrinsic for CompareAndSwapUint32 function needs to sign extend its 'old' argument.\n  * go#57338 syscall, internal/poll: accept4-to-accept fallback removal broke Go code on Synology DSM 6.2 ARM devices\n  * go#57213 os: TestLstat failure on Linux Aarch64\n  * go#57211 reflect: sort.SliceStable sorts incorrectly on arm64 with less function created with reflect.MakeFunc and slice of sufficient length\n  * go#57057 cmd/go: remove test dependency on gopkg.in service\n  * go#57054 cmd/go: TestScript/version_buildvcs_git_gpg (if enabled) fails on linux longtest builders\n  * go#57044 cgo: malformed DWARF TagVariable entry\n  * go#57028 cmd/cgo: Wrong types in compiler errors with clang 14\n  * go#56833 cmd/link/internal/ppc64: too-far trampoline is reused\n  * go#56711 net: reenable TestLookupDotsWithRemoteSource and TestLookupGoogleSRV with a different target\n  * go#56323 net/http: bad handling of HEAD requests with a body\n","status":"published","published":"2023-05-30T06:54:51Z","modified":"2026-02-04T03:20:56.665396Z","updated_at":"2026-11-02T15:53:53.019382Z"}]}}
