问题描述
我有 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) 保护通道,因此第三方无法在您不知情的情况下更改数据。与此相关的所有其他保护手段都是次要的。