{"id":763,"date":"2026-04-30T09:58:40","date_gmt":"2026-04-30T09:58:40","guid":{"rendered":"https:\/\/thedigitalfortress.us\/?p=763"},"modified":"2026-04-30T09:58:40","modified_gmt":"2026-04-30T09:58:40","slug":"new-linux-copy-fail-vulnerability-enables-root-access-on-major-distributions","status":"publish","type":"post","link":"https:\/\/thedigitalfortress.us\/?p=763","title":{"rendered":"New Linux &#8216;Copy Fail&#8217; Vulnerability Enables Root Access on Major Distributions"},"content":{"rendered":"<div>\n<p><span class=\"p-author\"><i class=\"icon-font icon-user\">\ue804<\/i><span class=\"author\">Ravie Lakshmanan<\/span><i class=\"icon-font icon-calendar\">\ue802<\/i><span class=\"author\">Apr 30, 2026<\/span><\/span><span class=\"p-tags\">Linux \/ Vulnerability<\/span><\/p>\n<\/div>\n<div id=\"articlebody\">\n<div class=\"separator\" style=\"clear: both;\"><a href=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEhYpnBkrLNj-dAKcwAbvRIvfXg8YDXoO3yfrl3vvXBOBwo2zga2asWZ0at4FLcLbiqQ1N7BsYA2szKbuqeVLBkrD80tMqYguBbqvrhEude6Fe9ayQpNs-meP8h4-f6ReWVeIU0zYp31XU7K-Kgxm5OKdI77HPQWgTx41al_WH3gYkMjEoROl6zvXF8HPRf5\/s1700-e365\/root.jpg\" style=\"display: block;  text-align: center; clear: left; float: left;\"><\/a><\/div>\n<p>Cybersecurity researchers have disclosed details of a Linux local privilege escalation (LPE) flaw that could allow an unprivileged local user to obtain root.<\/p>\n<p>The high-severity vulnerability tracked as <strong><a href=\"https:\/\/www.cve.org\/CVERecord?id=CVE-2026-31431\">CVE-2026-31431<\/a><\/strong> (CVSS score: 7.8) has been codenamed <strong><a href=\"https:\/\/copy.fail\/\">Copy Fail<\/a><\/strong> by Xint.io and Theori.<\/p>\n<p>\u00abAn unprivileged local user can write four controlled bytes into the page cache of any readable file on a Linux system, and use that to gain root,\u00bb the vulnerability research team at Xint.io and Theori <a href=\"https:\/\/xint.io\/blog\/copy-fail-linux-distributions\">said<\/a>.<\/p>\n<p>At its core, the vulnerability stems from a logic flaw in the Linux kernel&#8217;s cryptographic subsystem, specifically within the algif_aead module. The issue was introduced in a <a href=\"https:\/\/github.com\/torvalds\/linux\/commit\/72548b093ee3\">source code commit<\/a> made in August 2017.<\/p>\n<div class=\"dog_two clear\">\n<div class=\"cf\"><a href=\"https:\/\/thehackernews.uk\/ai-security-guide-d-1\" rel=\"nofollow noopener sponsored\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" class=\"lazyload\" alt=\"Cybersecurity\" src=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEjRxP56rpa2W0O_0yc0xgs5l2r4FRV4Wiuq3IqWuFdsd_4g1c3oRVXoHtW9gxo8ObuxmyjqkAf3cD6N1JbVDos7QX99ZHtmeVrg-FUzSnMZLTl1ZFyiSkpqQiw6BcHXz52jr3s42xWEDFOpwWK6HgXOqscGMNkhA5pZK7h6zVV4dpDaLfgy17TidZXVrtUB\/s728-e100\/nudge-d-1.jpg\" width=\"729\" height=\"91\"\/><\/a><\/div>\n<\/div>\n<p>Successful exploitation of the shortcoming could allow a simple 732-byte Python script to edit a setuid binary and obtain root on essentially all Linux distributions shipped since 2017, including Amazon Linux, RHEL, SUSE, and Ubuntu. The Python exploit involves four steps &#8211;<\/p>\n<ul>\n<li>Open an AF_ALG socket and bind to authencesn(hmac(sha256),cbc(aes))<\/li>\n<li>Construct the shellcode payload<\/li>\n<li>Trigger the write operation to the kernel&#8217;s cached copy of \u00ab\/usr\/bin\/su\u00bb<\/li>\n<li>Call execve(\u00ab\/usr\/bin\/su\u00bb) to load the injected shellcode and run it as root<\/li>\n<\/ul>\n<p>While the vulnerability is not remotely exploitable in isolation, a local unprivileged user can get root simply by corrupting the page cache of a setuid binary. The same primitive also has cross-container impacts as the page cache is shared across all processes on a system.<\/p>\n<div class=\"separator\" style=\"clear: both;\"><a href=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEiruJOnU3GSCs2LM43I7P3LvgVHs02zecnSwv249yJAVngDdbaqjejSLjF0upGIBJMZ-Nsm1dwsxn4_HeF92V1MW8gTkRmp4UYp6BbMaxo893xMpnr0FEIUuFgd1zX_VI1skQcq_sOEpyC5vRYluPAqRvUsVrJaB5qx5iTn3yAbikkNURqpP8jxpGh3vrL7\/s1700-e365\/linux-fail.jpg\" style=\"display: block;  text-align: center; clear: left; float: left;\"><img decoding=\"async\" src=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEiruJOnU3GSCs2LM43I7P3LvgVHs02zecnSwv249yJAVngDdbaqjejSLjF0upGIBJMZ-Nsm1dwsxn4_HeF92V1MW8gTkRmp4UYp6BbMaxo893xMpnr0FEIUuFgd1zX_VI1skQcq_sOEpyC5vRYluPAqRvUsVrJaB5qx5iTn3yAbikkNURqpP8jxpGh3vrL7\/s1700-e365\/linux-fail.jpg\" alt=\"\" border=\"0\" data-original-height=\"975\" data-original-width=\"1362\"\/><\/a><\/div>\n<p>In response to the disclosure, Linux distributions have released their own advisories &#8211;<\/p>\n<p>Copy Fail has its echoes in Dirty Pipe (CVE-2022-0847), another Linux kernel LPE vulnerability that could permit unprivileged users to splice data into the page cache of read-only files and ultimately overwrite sensitive files on the system to achieve code execution.<\/p>\n<div class=\"dog_two clear\">\n<div class=\"cf\"><a href=\"https:\/\/thehackernews.uk\/fast-response-not-fast-d\" rel=\"nofollow noopener sponsored\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" class=\"lazyload\" alt=\"Cybersecurity\" src=\"https:\/\/blogger.googleusercontent.com\/img\/b\/R29vZ2xl\/AVvXsEjgi9mu68zRUz1nCLLKmkAA2aBtNfP_JOTXulZoB6yImso1Onk7oM_LI0kdROu8fq5S5oDyMtd1j50W44Ye_8Sl3zQZiE8A9tmFr6kejGKjGh74uoxluF-RyBq_unDQlzjXZHCqQeuYXBoogda5zf0w-zXd6v0rIM7fEw6TcFf_QGWBu5Mop-djkEaOUa5A\/s728-e100\/tl-d.jpg\" width=\"729\" height=\"91\"\/><\/a><\/div>\n<\/div>\n<p>\u00abCopy Fail is the same class of primitive, in a different subsystem,\u00bb Bugcrowd&#8217;s David Brumley <a href=\"https:\/\/www.bugcrowd.com\/blog\/what-we-know-about-copy-fail-cve-2026-31431\/\">said<\/a>. \u00abThe 2017 in-place optimization in algif_aead allows a page-cache page to end up in the kernel\u2019s writable destination scatterlist for an AEAD operation submitted over an AF_ALG socket. An unprivileged process can then drive splice() into that socket and complete a small, targeted write into the page cache of a file it doesn&#8217;t own.\u00bb<\/p>\n<p>What makes the vulnerability dangerous is that it can be reliably triggered and does not require any race condition or kernel offset. On top of that, the same exploit works across distributions.<\/p>\n<p>\u00abThis vulnerability is unique because it has four properties that almost never appear together: it&#8217;s portable, tiny, stealthy, and cross-container,\u00bb a Xint.io spokesperson told The Hacker News in a statement. \u00abIt allows any user account, no matter how low-level, to increase their privilege to full admin access. It also allows them to bypass sandboxing and works across all Linux versions and distributions.\u00bb<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>\ue804Ravie Lakshmanan\ue802Apr 30, 2026Linux \/ Vulnerability Cybersecurity researchers have disclosed details of a Linux local privilege escalation (LPE) flaw that could allow an unprivileged local user to obtain root. The&hellip;<\/p>\n","protected":false},"author":1,"featured_media":764,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[130,110,1474,724,1473,181,1117,61,68],"class_list":["post-763","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-access","tag-copy","tag-distributions","tag-enables","tag-fail","tag-linux","tag-major","tag-root","tag-vulnerability"],"_links":{"self":[{"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=\/wp\/v2\/posts\/763","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=763"}],"version-history":[{"count":0,"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=\/wp\/v2\/posts\/763\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=\/wp\/v2\/media\/764"}],"wp:attachment":[{"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=763"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=763"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/thedigitalfortress.us\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=763"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}