// XSS (跨站脚本攻击) 示例代码
// 不安全的代码示例,容易受到 XSS 攻击
function unsafeFunction(userInput) {
document.getElementById("content").innerHTML = userInput;
}
// 安全的做法:对用户输入进行转义处理
function safeFunction(userInput) {
const escapedInput = userInput
.replace(/&/g, "&")
.replace(/</g, "<")
.replace(/>/g, ">")
.replace(/"/g, """)
.replace(/'/g, "'");
document.getElementById("content").innerHTML = escapedInput;
}
// 解释:
// 在不安全的代码中,用户输入直接被插入到 HTML 中,如果用户输入包含恶意脚本,就会被执行。
// 例如,如果 userInput 是 "<script>alert('XSS')</script>",则会弹出一个警告框。
// 在安全的做法中,我们对用户输入进行了转义处理,将特殊字符转换为对应的 HTML 实体,
// 这样即使用户输入了恶意脚本,也不会被执行,而是作为普通的文本显示。
上一篇:nestjs jwt
下一篇:js class继承
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站