gpt4 book ai didi

node.js - 用户可以访问我的网站并发送垃圾邮件 Socket.emit(something); 吗?或者对于这种安全问题有保护吗?

转载 作者:太空宇宙 更新时间:2023-11-03 23:06:44 26 4
gpt4 key购买 nike

我正在使用socket.io,客户端看起来像这样。

<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io();
socket.emit("sendData", "hello!");
</script>

我想知道是什么阻止了随机用户加入我的网站,查看代码,并使用 chromes 代码 View 应用程序或类似的东西向其中添加以下行:

<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io();
for(i = 0; i < 50; i++) {
socket.emit("sendData", "hello!");
}
</script>

最佳答案

是的,用户可以访问您的网站并执行此操作。

浏览器或 socket.io 中没有内置任何内容来阻止用户执行您的建议。如果您想防止这种情况发生,那么您必须实现自己的保护措施。我不知道你真正想做什么,所以我只能提出广泛的建议,但这些是可以做的事情:

  1. 实现用户身份验证,以便只有经过确认、经过身份验证的用户才能使用您的网站。
  2. 在您的服务器上实现速率限制,以便任何超过正常预期实际用户事件速率的用户都会被断开连接,如果滥用行为继续存在,甚至可能最终被禁止。
  3. 如果您想防止机器人在您的网站上执行操作,请使用验证码等“真人检测”。或者,仅当用户似乎所做的事情超出预期时才强制使用验证码(例如潜在的机器人)。
  4. 检测非原创、重复的通信,并禁止或阻止此类通信(就像您显示的循环所做的那样)。

关于node.js - 用户可以访问我的网站并发送垃圾邮件 Socket.emit(something); 吗?或者对于这种安全问题有保护吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32751346/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com