App被逆向,修改了其中的会员权限怎么办?

前言

最近公司的APP被逆向了,修改了其中的会员判断逻辑,并且还增加了广告,对公司带来了一定的影响和损失。特别是会员这块,修改了以后,让非会员用户也享受了会员的权益,影响了公司的收益,后果大家知道的…。所以说一个好的产品在架构设计的时候就应该考虑到各种情况。

如何解决

方案一 app加固

加固是一个快速的方案,用一些高级的第三方加固方案,常用的360加固保,收费从18000元/年-72000元/年。一般的公司看到这个价格估计都放弃了,特别是App本身没有带来有限价值的情况下。再细想一些,加固也是相对的,只是增加了逆向的难度(如果我是做这个加固方案设计的,就能很轻松的破解这套设计规则),对于高手来说也没有太大的难度,也没有解决最本质的问题。其次我们也需要考虑app本身的功能,被逆向修改后会有什么影响,如果影响不大,可以不用加固方案。

方案二 权限由服务端判断

由于前期架构的问题,服务端将会员所需要的数据一次性返回,具体的会员逻辑判断由客户端判断,只要是会员,即可进入下一个界面,使用相关的功能。权限在app本地判断,就相当危险了,只要会一些逆向的人,找到相关的代码,将会员权限全部返回true就可以直接使用,因此在没有加固的保护下,逆向就很容易了。针对以上描述的问题,客户端和服务端同时修改,权限交由服务端判断。具体实现如下:

  1. 服务端在上一级界面不返回下一级界面的全部数据,用户点击需要会员的功能,加入下一个界面,发起请求,服务端根据用户的token判断该用户是否开通会员,有则返回相关界面数据,否则返回开通会员的提示数据。
  2. 客户端收到服务端返回的数据,根据与服务端预定的字段值,不是会员,则界面显示相应的开通会员功能。

这样将会员的权限提供给服务端判断,很好的解决了被逆向的问题。这种设计,即使app被逆向了,黑客修改了app的代码,但具体的权限判断在服务端,也不会影响到主要流程这块。但对服务端要求更高了,需要合理的架构设计和安全措施,防止黑客的攻击。

总结

有条件的情况下尽量方案一和方案二结合使用,增加逆向成本和保证相关的核心功能安全。

安全是个永恒的话题,道高一尺魔高一丈,因此我们要保持一颗敬畏的心,时刻做好的相应的防范措施,保证再被黑的情况,尽量减少损失。

如果读者有其他的防逆向方案,欢迎推荐,共同打造一个安全的产品。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值