支付宝 AR 红包轻易破解的过程

奇思妙想 · yaoang · Created at · Last by d_clock Replied at · 10938 hits
3533 1482512777

  今天(2016.12.23)发现支付宝上线了一个功能:AR红包。简单说一下,就是某人发布一个实景图片,其他人只要找到这个实景,通过手机摄像头扫描下来就可以领取红包。图片是被加了黑线的,所以必须要找到实景拍摄。如图:


  我本来今天是想去找找的,但是我发现,大家拍的都是自己的手,自己的脸,同事的身体部位,公司的内部,根本不可能去寻找到(从这点来说,阿里做产品太弱了,这么大的Bug,换了腾讯肯定不会)。那么,这么多红包满天飞,自己写代码补全图片能不能使用呢?
  说干就干。
  过程1:
  先把中间图片内容抓下来。写了getMoney.py,通过覆盖黑色条纹的方法来达到补全的目的。见下面两张图:(大家看明白方法了吗?)

  
    
  扫描一下,哈哈,成功了,这个红包大概10块钱。上传到github给大家玩一下。
  代码位置:
  https://github.com/yaoang/alipay_hongbao_images
  

  但是getMoney.py还是很麻烦:需要抓取中间的图片,一不小心就抓错像素;参数调整非常麻烦。

  过程二:
  所以,中间图片的位置在手机里都是固定的,直接全屏抓图就行了。

  第二个程序getMoney_iphone_6sp.py,直接针对苹果6sp手机进行图片处理。不同的手机只要修改下参数就可以。处理结果如下:


  扫描成功,可是这次只领到几分钱,真坑啊……

  顺便总结一下这个红包活动:
  1,策划小坑,没太仔细考察使用场景的活动:大家都往家里和公司里拍,外人根本不可能领到,也只有公司里面的小伙伴自己玩耍了。当然,自己公司玩玩也行,就是上班谁让你老玩这个的?如果大家都上街找那多好玩。
  2,验证方式太傻。所谓的AR什么的没感觉到,其实就是对比图片。
  3,如果想用来打广告,招亲什么的,这招倒是省钱办大事了。

共收到 1 条回复
30
d_clock · #1 ·

不错不错,高手在民间。

需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up