最近开始使用 socket.io - 在将站点发布到 public 之前我应该采取哪些安全措施?
Recently started using socket.io - what security measures should I take before releasing the site to the public?
套接字服务器不处理任何登录或用户的任何输入,它只是在 mysql 数据库可用时将信息传递给用户。在我不知道使用它进行开发时应该注意哪些事项之前,我没有使用过 socket.io。例如,有人可以访问 .js "server" 的内容吗?因为我的包含一些敏感数据,例如 sql 凭据。
socket.io
与任何 Web 服务器和 Web 请求具有几乎相同的安全问题。如果您没有做任何愚蠢的事情来公开您的服务器端文件,它们通常是不可访问的。我们必须查看您的实际服务器端代码才能知道您是否不小心暴露了那里的任何内容。保护你的服务器和你的 SQL 数据库的主要事情是你必须验证所有传入参数以确保没有你不期望的东西被发送给你,这可能会导致你的代码意外地做一些不希望做的事情.
还有一件大事要确保您避免使用 SQL 查询它以确保发送给您的任何内容都不会直接放入 SQL 查询中,因为这会暴露您到 SQL 注入攻击,攻击者向您发送您不期望的参数,您将这些参数放入 SQL 查询,最终允许他们 运行 他们自己的 SQL SQL 服务器。有很多written about SQL Injection in other articles如果你想了解更多
既然你说你不处理任何登录,你大概知道你可以获得任意数量的 socket.io 连接并且几乎任何人都可以连接(无论是从浏览器还是从其他一些自定义书面代理)。
套接字服务器不处理任何登录或用户的任何输入,它只是在 mysql 数据库可用时将信息传递给用户。在我不知道使用它进行开发时应该注意哪些事项之前,我没有使用过 socket.io。例如,有人可以访问 .js "server" 的内容吗?因为我的包含一些敏感数据,例如 sql 凭据。
socket.io
与任何 Web 服务器和 Web 请求具有几乎相同的安全问题。如果您没有做任何愚蠢的事情来公开您的服务器端文件,它们通常是不可访问的。我们必须查看您的实际服务器端代码才能知道您是否不小心暴露了那里的任何内容。保护你的服务器和你的 SQL 数据库的主要事情是你必须验证所有传入参数以确保没有你不期望的东西被发送给你,这可能会导致你的代码意外地做一些不希望做的事情.
还有一件大事要确保您避免使用 SQL 查询它以确保发送给您的任何内容都不会直接放入 SQL 查询中,因为这会暴露您到 SQL 注入攻击,攻击者向您发送您不期望的参数,您将这些参数放入 SQL 查询,最终允许他们 运行 他们自己的 SQL SQL 服务器。有很多written about SQL Injection in other articles如果你想了解更多
既然你说你不处理任何登录,你大概知道你可以获得任意数量的 socket.io 连接并且几乎任何人都可以连接(无论是从浏览器还是从其他一些自定义书面代理)。