关于接口安全的问题,求一个解决办法

app的接口如何防止被别人用工具请求,apk可能已经被反编译。假如加一个签名验证,别人重新反编译apk知道了签名方法,还是可以用工具请求。有什么好的方法可以解决

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
最佳答案

apk先反编译加固,api参数和返回数据用ase加密传输,但会影响接口性能,鱼和熊掌不可兼得

1年前 评论
讨论数量: 13

这个可能防止不了哦,现在到处都是抖音小红书这些去水印的小程序。都是抓包就能获取接口信息然后去通信的😂😂😂

1年前 评论
win27149 (楼主) 1年前
kkokk (作者) 1年前
邢闯洋 1年前
kkokk (作者) 1年前
win27149 (楼主) 1年前
Mutoulee

1、公共签名,首先这类的接口意味着是对外正常开放的,人家按照你的签名方法正常请求,就是一个正常用户,你不能阻止。如果你发现了这类恶意请求,可以考虑从IP、Agent、Header方面过滤阻止;

2、Token类的,相当于用户身份验证,那他只要能注册成为你系统的正常用户,或者拿到你某用户信息其实也可以正常请求,也算是你的正常用户。

所以,如果人家经过各种手段把自己包装成一个正常的请求,你是没有办法阻止的,只能通过服务器/网络策略来处理。

1年前 评论

只能提高门槛,不能彻底杜绝

1年前 评论
win27149 (楼主) 1年前

apk先反编译加固,api参数和返回数据用ase加密传输,但会影响接口性能,鱼和熊掌不可兼得

1年前 评论

是的,什么事情都没有绝对的安全,只是相对的提高门槛。不知道你是什么项目安全程度需要做到这么高,问出这么高深的问题。加密方法用c++编译为.so让客户端调用,同时客户端也做一些禁止代理抓捕的操作,混淆加密等提高门槛,还有各种加密服务器验证机制,只是在你付出的成本和别人破解的成本之间博弈,说到底是金钱的博弈。

1年前 评论

已经到这个地步了,增加破解难度的同时,自身在架构上也会大幅增加难度!如果真遇到专业团队,或者 API 对他们来说有一定的价值,人家就死磕到底,破解只是时间问题。

但是我很好奇你们是怎么分析出 API 被人盗用了,通过 IP、Header 还是请求行为判断?如果是的话那么可以从这方面入手,增加对 API 请求的大数据分析,然后生成对应的拦截策略!

如果他们的请求与正常用户无异,人工都无法判断了,那么就放任不管吧!绝对的安全跟开放和便捷本身就是矛盾的,如果你的 API 只是服务间通讯,安全等级可以做的很高。但是如果是 ToC,那么你没法限制用户的使用环境必须在一个安全的环境下!

1年前 评论

现在的关键点还是增加反编译apk的难度,因为如果这个做不好,其它的做了也是徒劳。

1年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!