现在很多网站都是通过卖VIP会员盈利的,为了让用户更有购买欲望,有的时候会把内容展示一小部分,然后隐藏绝大多部分,让你看完一点还想看就忍不住付钱了:),产品经理的愿景是很美好的,但是开发人员的水平是参差不齐的,最终实现的效果可能就会有各种各样的问题,甚至留下安全隐患。
以某考公教育网站为例,在做题的时候对于一些名师点评之类的是收费内容,不开会员的话看不到完整内容,下图是Chrome打开web端的答题页面定位到完整的vip内容的过程:

将其复制到fehelper插件格式化观察,通过Ctrl+F用关键字定位到那个字段,可以看到确实是拿到了完整的内容:

这家公司在它所属的考公行业内应该能排到前三吧...所以除了web端还有Android端和iOS端,来看下其Android端,它的Android端有证书绑定,挂代理抓包就是这个样子:

根本抓不到包的:

过证书绑定有很多种方式,这里采用肉师傅的r0capture,直接通杀证书绑定,在pixel2上启动这个app,然后wifi adb连接查看其包名:

开始抓包:
python r0capture.py -U com.打码.android.servant -v -p ./pkg/001-xxx/001.pcap
然后在app上去触发查看vip内容的请求,用wireshark打开捕捉到的.pcap包,用wireshark筛选规则只查看响应包:
http.response
然后按照大小排序,前几个比较大的选一个复制(因为有题目描述之类的,所以响应体会比较大,大概率是排在前面的):

然后还是用fehelper解码:

得到明文的响应体,然后还是使用fehelper将其格式化:

与Android页面上对一下,由此石锤Android端也是存在此漏洞:

Android端与web端并不是同一个接口,猜测接口应该只是个后端靠前的代理,调用的更后端的业务应该是调用的同一个方法...写那个方法的人要被祭天了...
iOS也大概率是存在此漏洞的,不过鄙人对iOS的逆向熟悉程度属实捉急,因此不在此处石锤了。