在PHP服务器中验证是否有一个请求来自特定客户端

时间:2013-07-19 15:42:08

标签: php security http verification spoofing

我正在编写一个移动游戏,用户将其高分发送到PHP服务器。

我想在服务器中验证HTTP请求仅来自移动设备。我想拒绝恶意用户通过curl或其他带有假分数的HTTP客户端发送的呼叫。

这样做的标准通常方法是什么?

我认为我可以在移动客户端中输入HTTP消息,但是我需要使用encription键释放二进制文件,如果反编译可以检索它。

谢谢。

2 个答案:

答案 0 :(得分:0)

看看这个:

https://github.com/serbanghita/Mobile-Detect

这是非常准确的,但它不会阻止伪造用户代理的客户。

一般来说,最好的办法是让客户做出任何决定。

以Eve Online等游戏为例。您所做的每个操作都作为用户操作发送到服务器,然后服务器验证操作并做出相应的决定。 如果服务器依靠客户端来决定一艘船正在造成多大的伤害,那么游戏就会受到训练师黑客攻击的影响。

答案 1 :(得分:0)

您可以使用JavaScript获取有关用户客户端的信息,例如Br​​owser CodeName,Browser Name,Browser Version,Platform,User-agent header,User-agent language等。

可能存在可行的库(可能像Flosculu所提到的那样)可以帮助您进行移动专门检测,但您必须了解所有这些信息都可以被操纵,它主要取决于您如何传输数据,所以也许你不应该过度思考这个问题,而应该关注安全的数据传输方法。

快速搜索指向this mobile detection scripts

但是再次......你不能依赖这样的东西,但如果它不是太耗费时间,那么无论如何都要为脚本添加另一个验证,如果它让你感觉更好:)