如何避免 OTP 验证的响应操作

问题描述

我有 OTP 验证功能,前端(React JS)正在向后端(rails)发送请求,根据响应,我在前端将移动验证设置为 true 或 false。

成功响应:

HTTP/1.1 200 OK

{"success":true}

无法处理的实体响应:

HTTP/1.1 422 Unprocessable Entity

{"success":false}

用户获得无法处理的实体时,用户正在使用 Burp Suite 更改响应并将修改后的响应发送到前端

HTTP/1.1 200 OK

{"success":true}

前端具有设置仅对收到的响应进行移动验证的逻辑。

考虑在响应中添加 OTP 并在前端验证它,但用户也可以存根。

我怎样才能避免这种情况?

解决方法

您必须使用 TLS (HTTPS) 保护通道,因此第三方无法在您不知情的情况下更改数据。与此相关的所有其他保护手段都是次要的。