有没有人试过 使用 程序 (抓包、爬虫)下载 应用商店内的应用 ,然后 刷 下载量?

Metro2033 发布于 2016/05/05 18:47
阅读 3K+
收藏 1

用 通常的 对 网站、app 抓包的方式 ,获取 到 应用商店(应用宝、360商店 等) 的 下载地址,然后 使用程序 下载,能 实现吗?

如果能这样的话,商店的某个 应用的 下载量 直接就刷上去了。。。


我分别 使用 wireshark 和 fiddler  尝试了一下  应用宝  ,因为 对 协议 不是 特别了解,所以 也没有 获取到具体的地址。。。也不知道 到底 可不可行。。。




当 点击下载 ,从fiddler 可以 观察到 8-9 个 http 连接,但是 这个 连接 和平时 看到的网站的连接 不一样 :好像 请求头和响应头 都是 字节的形式,而且 好像 请求参数 也不是 明文的,因为看不到 参数。

这个 地址 就是 应用宝的 ip 了。。


查看其中一个,请求头 只有使用  十六进制的 格式查看 才能看到。。


可以看到 右侧的是"翻译"的请求头


响应 也是一样 ,使用 字节的格式 查看,然后 看到 “翻译”  响应头,但是 响应内容 是些 啥 就看不大出来了。。



而且 可以看到  响应返回的 MIME  信息为 application/octet-stream ,表示  二进制文件

而且 长度 也不是 文件大小,有可能 是 多次 建立连接,多次 传输。。。




(但是 我看了 其他的 非 下载的链接 返回的也是这样的。。。没有通常的 text/html,就是说 非下载 的页面  也是 字节的 形式 返回的?)





然后 使用 wireshark  试了下。

因为 wireshark  可以监测到所有的 协议,所以 点击一次下载 产生了 几十个 连接。



然后 查看其中 的一个 http 协议的连接。


其实 和 fiddler  的结果 是 一样的  可以看到 ip地址和端口 等, 没有参数,也就 是 没有找到 地址。

这跟 通常的网页 的 结果 是不一样的,没有 找到 理想的 

http://www.aaaa.com/video/2016-04/29/1.pdf 类似的地址。。。

在应用宝的网页 上 虽然 能得到类似的 文件地址,但是 估计 这个下载 不会 算在 下载量中的。。

还有 就是 可以看到 在 http 请求前 有几次(按 3次握手来说的话,应该是 3次吧。。) tcp 的连接,看到 有文章 说 http 的请求 是 依靠tcp的 建立的

所以 到底 这个 过程 是怎么样的,就是 整个 连接传输的过程,应该不是 一般 的http 请求、响应 过程。。


然后 有可能 实现 程序下载应用商店 内的 app吗?



加载中
1
pseudo
pseudo
两年前就是干这个的。像这种请求都是加密的,如果是明文早就被刷爆了。最常见的方式是通过逆向app找到加密函数,分析协议参数,这种方法太麻烦耗时也长;后来用xposed+avd模拟真实手机参数,通过程序控制avd自动点击来刷。劝你还是别干这个,不道德也没前途。我当初就误入了岐途,等醒悟过来想做点有意义的东西发现之前的经验有一半都用不上。
Metro2033
Metro2033
。。。哦,学习了。。
0
顿顿顿顿文
顿顿顿顿文

这种统计一般都是经过应用去统计的吧? 用爬虫原理的,我觉得是不能达到刷下载量的目的的,,另外,获取到下载链接,如果有验证的话,一般把登录后的token值加到请求cookie里面就好了,,

Metro2033
Metro2033
下载量 能不能刷 是下一步的。。我想 先 实现 能够爬虫下载 app
Metro2033
Metro2033
还是说 不能这样找,有其他的方法?
Metro2033
Metro2033
。。。我说的就是找不到 具体的地址啊,我理想的 就是 类似 www.aaa.com/1/2/3.jpg 这种 文件 地址,,,当然,它这个不是。。
0
tomczhen
tomczhen
爬虫模拟就行了,抓包都不用,不过得切换代理换IP。其实可以去万能的淘宝看看有没有付费业务,这个比刷榜简单。
Metro2033
Metro2033
。。。 我还是没明白,我要做的就是 用爬虫模拟啊;我上面所说的 就是要找到 具体的地址 ,然后才能用程序请求啊,但是没找到。。
0
Metro2033
Metro2033

引用来自“tomczhen”的评论

爬虫模拟就行了,抓包都不用,不过得切换代理换IP。其实可以去万能的淘宝看看有没有付费业务,这个比刷榜简单。
主要就是 请求和响应 都是 字节的;

不是 通常的 比如 http://www.baidu.com/a/b?p=1,

首先 域名 + 参数的形式,而 这里看到的 是 http://183.61.49.199

只有一个ip,其他参数可能在 字节形式的请求头了,这就不知道 怎么请求了。。


然后 返回也是 http://www.baidu.com/a/b?p=1 这样的链接的话 返回的是 html,直接 获取就行了,可是 他这里 返回的是字节,不是字符,也不知道 怎么接收。。

所以 这里的http  就不知道 怎么搞了。。

还是说 不用管这里的http,而是其他的方法

Metro2033
Metro2033
回复 @tomczhen : 我使用 应用宝的手机app,使用wireshar 拦截到 apk结尾的文件地址,然后看 User-Agent: HalleyService/2.0\r\n 这是什么意思?没见过,百度 也没找到 什么信息
Metro2033
Metro2033
回复 @tomczhen : 还有就是 也没弄清楚 这些莫名其妙的 地址 到底 是怎么回事,跟平常的 html的页面的链接 请求和响应 都 不一样。。以后对协议了解的 多一些 在研究吧。。
Metro2033
Metro2033
回复 @tomczhen : 其实是我找错了 地址了。。不知道为什么 fiddler 上 拦截 的 都是这些 看不明白的连接,换了 charles 就能看到了 文件地址。。然后就能 直接下载了。。
tomczhen
tomczhen
地址可以用fiddler获取,主要还是请求方式和请求头,应用层就可以分析到你要的东西。剩下的就是模拟请求。另外,这个东西真没前途,做个按键脚本都能实现目的,写爬虫还得分析和解决认证。跑个安卓的自动测试脚本操作更容易。
0
Metro2033
Metro2033

引用来自“pseudo”的评论

两年前就是干这个的。像这种请求都是加密的,如果是明文早就被刷爆了。最常见的方式是通过逆向app找到加密函数,分析协议参数,这种方法太麻烦耗时也长;后来用xposed+avd模拟真实手机参数,通过程序控制avd自动点击来刷。劝你还是别干这个,不道德也没前途。我当初就误入了岐途,等醒悟过来想做点有意义的东西发现之前的经验有一半都用不上。

我使用 应用宝的手机app,使用wireshar 拦截到 apk结尾的文件地址

Frame 20723: 248 bytes on wire (1984 bits), 248 bytes captured (1984 bits) on interface 0
Ethernet II, Src: LiteonTe_73:c8:35 (b8:86:87:73:c8:35), Dst: Tp-LinkT_6a:fe:53 (ec:26:ca:6a:fe:53)
Internet Protocol Version 4, Src: 192.168.3.123, Dst: 140.206.160.226
Transmission Control Protocol, Src Port: 59719 (59719), Dst Port: 80 (80), Seq: 1, Ack: 1, Len: 194
Hypertext Transfer Protocol
    GET /16891/A9950A0F0569E78DDBC5EAF8C94EBD26.apk?fsname=com.naviapicloud.itc_0.0.37_43.apk HTTP/1.1\r\n
        [Expert Info (Chat/Sequence): GET /16891/A9950A0F0569E78DDBC5EAF8C94EBD26.apk?fsname=com.naviapicloud.itc_0.0.37_43.apk HTTP/1.1\r\n]
            [GET /16891/A9950A0F0569E78DDBC5EAF8C94EBD26.apk?fsname=com.naviapicloud.itc_0.0.37_43.apk HTTP/1.1\r\n]
            [Severity level: Chat]
            [Group: Sequence]
        Request Method: GET
        Request URI: /16891/A9950A0F0569E78DDBC5EAF8C94EBD26.apk?fsname=com.naviapicloud.itc_0.0.37_43.apk
        Request Version: HTTP/1.1
    Range: bytes=0-\r\n
    User-Agent: HalleyService/2.0\r\n
    Host: dd.myapp.com\r\n
    Connection: Keep-Alive\r\n
    \r\n
    [HTTP request 1/1]
    [Response in frame: 20727]


然后看 User-Agent: HalleyService/2.0\r\n  

这是什么意思?没见过,百度 也没找到 什么信息

返回顶部
顶部