{"id":"UBUNTU-CVE-2026-5477","details":"An integer overflow existed in the wolfCrypt CMAC implementation, that could be exploited to forge CMAC tags. The function wc_CmacUpdate used the guard `if (cmac-\u003etotalSz != 0)` to skip XOR-chaining on the first block (where digest is all-zeros and the XOR is a no-op). However, totalSz is word32 and wraps to zero after 2^28 block flushes (4 GiB), causing the guard to erroneously discard the live CBC-MAC chain state. Any two messages sharing a common suffix beyond the 4 GiB mark then produce identical CMAC tags, enabling a zero-work prefix-substitution forgery. The fix removes the guard, making the XOR unconditional; the no-op property on the first block is preserved because digest is zero-initialized by wc_InitCmac_ex.","modified":"2026-05-20T16:26:41.046133444Z","published":"2026-04-10T06:16:00Z","upstream":["CVE-2026-5477"],"references":[{"type":"REPORT","url":"https://ubuntu.com/security/CVE-2026-5477"},{"type":"REPORT","url":"https://www.cve.org/CVERecord?id=CVE-2026-5477"},{"type":"REPORT","url":"https://github.com/wolfSSL/wolfssl/pull/10102"}],"affected":[{"package":{"name":"wolfssl","ecosystem":"Ubuntu:16.04:LTS","purl":"pkg:deb/ubuntu/wolfssl?arch=source&distro=xenial"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.4.8+dfsg-1"],"ecosystem_specific":{"binaries":[{"binary_version":"3.4.8+dfsg-1","binary_name":"libcyassl5"},{"binary_name":"libwolfssl0","binary_version":"3.4.8+dfsg-1"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-5477.json"}},{"package":{"name":"wolfssl","ecosystem":"Ubuntu:18.04:LTS","purl":"pkg:deb/ubuntu/wolfssl?arch=source&distro=bionic"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.10.2+dfsg-2","3.12.0+dfsg-1","3.12.2+dfsg-1","3.13.0+dfsg-1"],"ecosystem_specific":{"binaries":[{"binary_version":"3.13.0+dfsg-1","binary_name":"libwolfssl15"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-5477.json"}},{"package":{"name":"wolfssl","ecosystem":"Ubuntu:20.04:LTS","purl":"pkg:deb/ubuntu/wolfssl?arch=source&distro=focal"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.1.0+dfsg-2","4.2.0+dfsg-1","4.2.0+dfsg-2","4.2.0+dfsg-3","4.3.0+dfsg-2"],"ecosystem_specific":{"binaries":[{"binary_name":"libwolfssl24","binary_version":"4.3.0+dfsg-2"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-5477.json"}},{"package":{"name":"wolfssl","ecosystem":"Ubuntu:22.04:LTS","purl":"pkg:deb/ubuntu/wolfssl?arch=source&distro=jammy"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.6.0-3","5.0.0-1","5.1.1-1","5.2.0-1","5.2.0-2"],"ecosystem_specific":{"binaries":[{"binary_version":"5.2.0-2","binary_name":"libwolfssl32"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-5477.json"}},{"package":{"name":"wolfssl","ecosystem":"Ubuntu:24.04:LTS","purl":"pkg:deb/ubuntu/wolfssl?arch=source&distro=noble"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["5.5.4-2","5.5.4-2.1","5.6.4-2","5.6.6-1.2","5.6.6-1.3","5.6.6-1.3build1"],"ecosystem_specific":{"binaries":[{"binary_version":"5.6.6-1.3build1","binary_name":"libwolfssl42t64"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-5477.json"}},{"package":{"name":"wolfssl","ecosystem":"Ubuntu:25.10","purl":"pkg:deb/ubuntu/wolfssl?arch=source&distro=questing"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["5.7.2-0.1"],"ecosystem_specific":{"binaries":[{"binary_name":"libwolfssl42t64","binary_version":"5.7.2-0.1"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-5477.json"}},{"package":{"name":"wolfssl","ecosystem":"Ubuntu:26.04:LTS","purl":"pkg:deb/ubuntu/wolfssl?arch=source&distro=resolute"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["5.7.2-0.1","5.8.2-1.2","5.8.4-1","5.9.1-0.1"],"ecosystem_specific":{"binaries":[{"binary_name":"libwolfssl44","binary_version":"5.9.1-0.1"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-5477.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N"},{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N"},{"type":"Ubuntu","score":"medium"}]}