如果我的网站没有后端代码,它是否容易受到 XSS 攻击?

Is my site vulnerable to a XSS attack if it has no back-end code?

提问人:okay 提问时间:10/23/2023 更新时间:10/23/2023 访问量:88

问:

我有一个网站,我希望人们能够在输入框中输入一个数字(标签迭代 ),然后将其与存储在类 “” 的标签中的预设值相乘,其类迭代也是 。selvaluesel

我所拥有的模糊布局:

function multiply() {
  if(!Number.isInteger(document.getElementsByTagName('input')[sel].value)) sel = undefined;
  else {
    document.getElementById('value').textContent =
      parseInt(document.getElementsByClassName('value')[sel].value) * 
      parseInt(document.getElementsByTagName('input')[sel].value);
  }
}

我没有后端代码,一切都通过 JavaScript 处理。这种输入处理是否会导致任何问题/漏洞?

我试图找到关于这个问题的其他资源,但没有什么能给我一个直接的答案,即当你不使用数据库并使用 JavaScript 处理所有事情时,是否存在任何服务器或用户漏洞。

JavaScript HTML 数据库 清理

评论

0赞 Konrad 10/23/2023
即使是这样,在没有数据库或存储用户数据的网站上会造成什么损害?
0赞 Justinas 10/23/2023
XSS 旨在通过代码注入(例如窃取会话)暴露后端部分。但是,如果没有后端,就没有什么可偷的。我可以在打开的 HTML 文档中更改我想要的任何内容 - 这里的一切都不安全,但它在我的计算机上,所以这里没有损坏
0赞 JoSSte 10/23/2023
如果你没有后端,你可能不容易受到纯 XSS 的攻击,但是在公共设备上注入脚本,你可能会受到这种攻击......如果您有任何形式的登录/会话处理,或者不是作为纯 HTML/JS 托管,则托管您的服务器可能容易受到攻击。如果你是自托管的 - 谷歌如何加强你的设置,否则你可以假设你是安全的。
2赞 jQueeny 10/23/2023
在没有数据库的情况下,您只关心两次攻击。反射的 XSS 和基于 DOM 的 XSS。使用 Reflected,只要您不处理 url 查询参数并将它们写入 DOM,没有人可以构建恶意链接。例如,URL 中的脚本构成机器人的一部分,或向儿童色情网站发出请求等。那么你的客户就不会高兴了!使用基于 DOM 的,您可以正确地使用写回 DOM,因此您在那里是安全的。这个问题更适合 security.stackexchange.comtextContent
0赞 Titus 10/23/2023
你已经用过了,不,没有XSS漏洞。如果您使用了类似的东西,则可能存在漏洞,但在这种情况下,您肯定会将其设置为数字Element.textContent = ..Element.innerHTML = ..

答: 暂无答案