评论

关于云开发的反爬、反抓、反刷、反反翻译的一些思考

全云开发的小程序的反爬、反抓、反刷、反反翻译的一些探讨。

最近接了个项目,甲方对于反爬、反抓包、反刷流量的要求令人发指,对我有限的代码保安知识真是一个巨大的挑战;

以下是一些经验总结:

一、关于反刷

本项目有大量的图片,放在云存储里,甲方怕有黑方用户不停地刷流量,造成套餐爆掉,所以特别要求,实际情况也确实发生了,仅不到100用户的时候,存储读取次数,一天就有10多万次,免费套餐被爆。采取措施如下:

1、关闭的有官方的页面收藏sitemap

{
  "desc": "",
  "rules": [{
  "action": "disallow",
  "page": "*"
  }]
}

2、限制用户访问次数,比如限时超过1000次打开详情页就禁止,结果该方案被黑方破解数次,前后经历了多次方案:

将次数限制写在缓存里(删除小程序清缓存被破解);

将限时按手机时间来获取(修改手机时间被破解);

限时按服务器时间,次数写在云表里,才算解决;

二、关于反爬反抓

甲方有一些保密数据,由一些保密参数组成,通过运算得到一个价格再公布出去,一开始以为是云开发,读数据库和云函数都是保密的,结果惨遭泄密。

方案一:通过aggregate聚合,计算参数聚合出最终价格,悲伤的是,集合里的数字保存的字符串,不支持聚合的计算操作,云开发还没有任何办法批量将字符串形式的数字转成number,除非删库重建,一开始就保存成number。惨痛的教训,今后慎重,该是number的就number,别看前端可以随意,数据库里必须区分;

方案二:写一个页面,管理员输入参数,然后生成价格,应用到每一个doc里,结果数据量太大,批量修改集合所有数据的某字段值,目前用云开发完全没法实现

最终方案:通过云函数来获取doc列表,在云函数里读取参数表,计算后生成价格,应用到每一条列表,然后再返回给小程序端;

结论:云函数是运行在微信服务器上的,还是安全的。

关于图片反爬反抓,结论:无解;

三、关于反翻译

官方的事,我们毫无办法。

设置里,什么混淆、什么代码保护等都勾上了,还是挡不住;


更多内容:

最后一次编辑于  2020-10-20  
点赞 3
收藏
评论

3 个评论

  • 张有釜
    张有釜
    2020-10-15

    按老哥你的分析 对方课能是通过手动恶意攻击的

    我感觉应该是买的IP直接攻击的

    还有这个最好别暴露啊 也许人家就在看你的帖子呢

    2020-10-15
    赞同
    回复 3
    • 老张
      老张
      2020-10-15
      是甲方的小程序被攻击。让他们来呗,出问题了,找我解决,正好收点劳务费。
      2020-10-15
      回复
    • 张有釜
      张有釜
      2020-10-16回复老张
      严重怀疑 你攻击的...
      2020-10-16
      回复
    • 老张
      老张
      2020-10-16回复张有釜
      哈,你提醒我了。这样可以吗?
      2020-10-16
      回复
  • admin
    admin
    2020-09-29

    收藏了,没想到云开发这么容易被抓包,源代码是不是也很容易搞到啊

    2020-09-29
    赞同
    回复 3
    • 老张
      老张
      2020-09-29
      反编译是可以立即得到小程序的伪代码的(编译后源码)
      2020-09-29
      回复
    • admin
      admin
      2020-09-29回复老张
      那云函数的代码呢?
      2020-09-29
      回复
    • 老张
      老张
      2020-09-29回复admin
      那个破解不了。
      2020-09-29
      回复
  • 晓易
    晓易
    发表于小程序端
    2020-09-27
    图片路径加密,限制用户拉取数据上限,一定程度上可缓解图片被爬被抓。
    2020-09-27
    赞同
    回复 1
    • 老张
      老张
      2020-09-27
      还真不知道在云存储图片的路径cloudID上怎么加密?
      2020-09-27
      回复
登录 后发表内容