Headline
GHSA-j827-6rgf-9629: Layui has DOM Clobbering gadgets that leads to Cross-site Scripting
Summary
A DOM Clobbering vulnerability has been discovered in layui
that can lead to Cross-site Scripting (XSS) on web pages where attacker-controlled HTML elements (e.g., img
tags with unsanitized name
attributes) are present.
It’s worth noting that we’ve identifed similar issues in other popular client-side libraries like Webpack (CVE-2024-43788) and Vite (CVE-2024-45812), which might serve as valuable references.
Backgrounds
DOM Clobbering is a type of code-reuse attack where the attacker first embeds a piece of non-script, seemingly benign HTML markups in the webpage (e.g. through a post or comment) and leverages the gadgets (pieces of js code snippet) living in the existing libraries to transform it into executable code.
Impact
This vulnerability can lead to cross-site scripting (XSS) on websites that uses layui
library and allow users to inject certain scriptless HTML tags with improperly sanitized name
or id
attributes.
Patch
This problem has been patched in Layui 2.9.17. You can find the official fix announcement at: https://layui.dev/notes/share/security-currentscript.html
Summary
A DOM Clobbering vulnerability has been discovered in layui that can lead to Cross-site Scripting (XSS) on web pages where attacker-controlled HTML elements (e.g., img tags with unsanitized name attributes) are present.
It’s worth noting that we’ve identifed similar issues in other popular client-side libraries like Webpack (CVE-2024-43788) and Vite (CVE-2024-45812), which might serve as valuable references.
Backgrounds
DOM Clobbering is a type of code-reuse attack where the attacker first embeds a piece of non-script, seemingly benign HTML markups in the webpage (e.g. through a post or comment) and leverages the gadgets (pieces of js code snippet) living in the existing libraries to transform it into executable code.
Impact
This vulnerability can lead to cross-site scripting (XSS) on websites that uses layui library and allow users to inject certain scriptless HTML tags with improperly sanitized name or id attributes.
Patch
This problem has been patched in Layui 2.9.17. You can find the official fix announcement at:
https://layui.dev/notes/share/security-currentscript.html
References
- GHSA-j827-6rgf-9629
- layui/layui@f756b41
- https://layui.dev/notes/share/security-currentscript.html