11月9日,喜马拉雅FM在官方微博发布《四问蜻蜓FM 关于数据造假敢不敢正面回应》,喜马拉雅表示,之前提供虎嗅蜻蜓FM造假造假线索,唯一的目的是让广告主投资人看到事实真相。
在此前几天,知乎上由知友曝出的的蜻蜓数据造假门事件。随着后来发酵,知乎上的水军、各种新闻稿的发酵、这是喜马拉雅一场有预谋的“包装曝光”。最后整的连王思聪都关注到了。喜马拉雅在以行业阳光卫士的身份自诩之时,不料在喜马拉雅后院起火了,其后台疯狂刷广告单的秘密操作行为,同样也被知乎网友爆出了 。
昨日还在义正言辞曝光行业内部不正当行为的喜马拉雅居然也藏着巨大的猫腻。今日有知友在知乎中“最近撕得火热的喜马拉雅FM真的很纯粹吗?”问题中发出了图文详细版的抓包喜马拉雅,疯狂刷广告刷量的全过程,要知道这个双十一电商打的火热之时,连苏宁易购都躺着中枪了。
从知乎网友这个帖子看,不难发现虽然喜马拉雅做了代码混淆,但进行恶意刷广告数据的事实恐怕是连国民老公也难拯救!下面为大家贴出大神抓包喜马拉雅安卓端的详细情况:
———————————华丽丽分割线———————————
楼上发的喜马拉雅抓包分析启发了我,我反编译了一下喜马拉雅app。从原来的抓包分析中看到带有ad.ximalaya.com的链接,其中有个find_banner,它请求的内容如下,里面包含doubleclick(这东西是广告第三方监测商)的链接。
在混淆的代码中grep一下find_banner,只出现了一个文件,RecommendCategoryFragmentNew。
看这个名字应该是主页的推荐首页。根据之前抓包情况,在亮屏时能抓到doubleclick和miaozhen的包,那就肯定是在onResume里了。
RecommendCategoryFragmentNew.java中onResume():
这里每次onResume调用都会触发statFocusAd,也就是说,在APP每次启动、前后台切换、解锁时,都会启动广告刷量!
再查看ThirdAdStatUtil.getInstance().statFocusAd(mFocusImages,true):
看名字像是做广告统计的,但是除了所谓的广告统计,其实还会进行广告刷量。注意参数里的third_url就是find_banner里的thirdStatUrl,也就是用户点击的广告地址。
以下是实际执行的广告刷量代码:
这里的s正是这个focusimagemodelnew.third_url。这里代码做了混淆,但是看到start方法像是开个线程去做广告刷量,果不其然:
这里混淆的比较难读,但是刷量的逻辑很清晰的,关键代码就在f.a().a(*)函数中,让我们看看这个函数做了什么:
至此,广告刷量的整个流水线都浮出水面了。
总结,在RecommendCategoryFragmentNew的每次onResume调用,都会向配置的third_url发送一次请求。而这个onResume是在什么时候调用呢?应用启动时,切到后台再切回来时,锁屏再亮屏时,打开其他应用再回来时;而且由于这个fragment是放在viewpager里,那么切到别的tab再切回来时也会调用。所以这个third_url在应用使用期间会被大量频繁的访问,恐怕比真的展示多了不只几倍的量。这也解释印证了楼上童鞋提到的抓包分析里面的现象。
我们再回过头看下哪些第三方广告监测平台倒地中枪。
首页广告api:http://ad.ximalaya.com/ting?name=find_banner&version=4.3.26.2&device=android&operator=3&network=WIFI
测试时请求到的数据截图如下是配置的doubleclick
内容分类中的广告http://mobile.ximalaya.com/mobile/discovery/v1/recommends?channel=and-wap&device=android&includeActivity=true&includeSpecial=true&scale=2&version=4.3.26.2
配置的是秒针的刷量链接.
是否有其他刷量的地方,我没有深挖,因为混淆过再反编译的代码阅读起来实在是不怎么顺畅。但这段广告刷量的逻辑放在onResume里就足以说明一切。
作为一个资深码农,不得不说,喜马拉雅在刷量这件事上确实动了脑筋。一是代码混淆,隐藏的很深;二是动态下发刷量链接,方案可扩展性极强。利用这种原理,除了刷广告监测,其他http类的请求都可以动态生成访问,想象空间还是很大的,有兴趣的同学可以继续研究,(提示一下,启动的时候可以下载其他APP哦,看看有没有同学能分析出来)。
最后附上反编译的source code:
https://github.com/lovetesting/ximalaya_decode
——————————— 跳回来 ———————————
以上就是大神抓包喜马拉雅详细过程。
其实从上周六开始,知乎上一位知友发起的大致名为“蜻蜓FM伪造数据刷日活”的帖子,在各方水军的公关下已经引发了不少或码农或营销网友热议。
这两天,微博、微信公号以及新闻稿等多方渠道中的种种发酵显露无疑,这已经不是音频行业内领军者和老大哥的小打小闹了。
细细想来,喜马拉雅从今年四月以来就一直负面新闻不断,且件件铁证如山。
从今年4月底以来,喜马拉雅FM就曾因ASO刷榜行为被媒体曝光,被苹果商店连续下架两次;
7月,喜马拉雅FM因刷量被华为开发者联盟拉黑三个月;
10月中旬,喜马拉雅FM又开始重操旧业,为最近一次私募股权的融资事件刷量做准备,这些也都是有数据为证的!
这种将投资人和广告主当傻子的行为,最终一定是会狗带的......
这难免令人联想到前不久多家媒体相继报道过的喜马拉雅FM负债、融资难等资金危机以及被广电总局“点名”的新闻,这样看来似乎也能解释的通,为何在舆论这样的风口浪尖下喜马拉雅如破釜沉舟般,敢于站出来揭露音频行业内不规范的、破坏行业规则的行为。
其实喜马拉雅本来是可以在“行业清道夫”的光环下,在国民老公的助力下,得到大众好感(毕竟大家都爱见义勇为者),甚至于是投资人和广告主垂爱,奈何喜马拉雅将用户当傻子,说句难听的这种贼喊捉贼,偷鸡不成蚀把米的行为真真是更加令人厌恶。
最后,有需要的朋友可以去“清道夫”官网下载安卓版代码测试,不过速度要快,开关应该很快就会被关掉。