防止欺骗攻击——如何确保我的客户端收到来自真实服务器的命令?

Preventing spoofing attack - how to ensure my client receives orders from the real server?

我正在开发与网站集成的 Chrome 扩展程序。我的用户登录后可以在该网站上执行操作。

我有一个 Socket.IO 服务器向我的 Chrome 分机发送命令。命令到达后,扩展程序会从主机网站调用本地功能。然后,拥有自己 API 的经过身份验证的活动会话的主机网站将调用一些 update/insert 调用。

我最近意识到一个潜在的安全问题,那就是 - 如果有人在我的扩展客户端组织上欺骗我的服务器地址,他可以很容易地滥用它来代表我的服务器发送他自己的参数 (image 2) .

有什么聪明的方法可以确保我的客户端与真实服务器而不是冒名顶替者通信吗?

使用 HTTPS 安全连接。

This is one of the features of HTTPS (SSL/TLS) - it can prevent a MITM attack and prevent the destination server from being impersonated.