繁体   English   中英

如何防止本地客户端访问我们的API

[英]how to prevent native clients from accessing our api

我们有一个PHP REST API和一个angularjs客户端。

我们没有,也没有任何本地客户端,只有浏览器。

攻击者使用虚假帐户制作了一个虚假网站,并用其进行所有付款,我们的目标是防止这种情况的发生。

现在,我们找到了一种阻止网站服务器访问我们的API的方法,并且浏览器无法发出跨域请求,但是没有任何方法可以阻止攻击者制作访问我们API的桌面应用。

如何检测客户端是浏览器而不是本机客户端?

聚苯乙烯

我知道浏览器可以嵌入到桌面应用程序中,现在我可以接受,但不是纯本地客户端。

达到此结果的唯一方法是对Javascript执行challenge-response机制,因此“本地客户端”将不得不解析和评估结果,而如果不嵌入浏览器或Javascript V8引擎则很难。

只需用PHP在JavaScript中打印令牌,然后JS就必须进行密码计算。 多态性越多,没有嵌入式浏览器就很难实现自动化机器人。

但是,您无法使用JavaScript解释器(例如Google的V8引擎)停止本机应用程序(该应用程序笨重但速度很快)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM