当前位置:网站首页 > R语言数据分析 > 正文

zipsigner签名教程(zip sign)



最近在找工作,写写文章记录点能力吧,要不然就真是菜鸟了,我劝以后的萌新也 没事儿研究时写写记录一下 都是吹牛的资本.
前些年在抖音做短视频小说 SD AI绘画 语音合成了 虽然全系列做成了一个统一软件可以比现在市场很多类似的优秀,但是无奈举债多,没有能力再创业了,所以分享一下内容给后来朋友们,后续可能会分享一下抖音剪映语音识别的接口流程,和抖音豆包AI 全链路API,白嫖算力,看大家热情吧,原业务是抓取知乎的盐故事实时上新内容, 来为做小说创作的朋友们提供一个小说热度帅选的功能.主要维度有两个一个是点赞 一个是评论量,很简单抓取历史和秒更上新便是.
写了个GUI 界面丑陋勿喷 但是功能实用,这里主要是为了介绍知乎的算法的.下面进入正题
在这里插入图片描述

知乎的app 很多内容还是直接使用的web 只是知乎在app中自定义了浏览器头,识别浏览器让一些内容显示和屏蔽
知乎的web 隐藏了很多app 的内容但是却暴漏了他们的一些算法缺陷,让我们可以借助web加密来和通过app的api
HttpCanary 俗称小黄鸟是手机端的抓包工具,有的时候比pc上的软件好用,环境证书安装 何使用啥的自己去搜吧,
VMOS Pro 是虚拟机可以模拟一个完整的手机系统 这里模拟我们需要注意选择模拟安卓7.1的 64位 这个虚拟机还支持root 一键安装xposed 再加上Frida 什么的爽的不要

为什么要这么做呢就是高版本安卓系统修改加强了ssl 体系认证 导致三方证书无法方便正常使用 ,
如果直接在原机器安装后抓包 抓包工具是无发抓取到知乎任何数据的,
上面这套下来基本市场9成的app都可以抓到了(之前我测试微信竟然可以),但是某些大厂还是抓不到的 比如抖音 他自己重写了底层网络内容在so里 包括一些ssl证书认证的内容,可以绕开虚拟机直接和外部通讯.即使你外部有抓包工具也抓不到,
所以说知乎技术有待提高. 另外再次声明一下 我抓取的知乎数据访问不高哈,不会对服务器造成影响,只是模拟人类正常访问 然后汇集信息用于热度分析,别给我发律师函

看我标题为是那么要借助浏览器插件hook呢,原因很简单,
代码成本低和逆向成本相对低,
操作成本低(有时候测试和测试逆向过成 我们可以动态修改代码 刷新一下就直接进入浏览器环境了,如果用其他方式替换js可能需要借助抓包工具,或者自己写转发抓包拦截工具,比较麻烦)
只需要一个核心插装就把问题解决了,插件本身 其实也可以直接进行数据处理和网络请求 但是为了节省资源就只有一个浏览器了.不过确实也可以这么做,根据具体场景自己选吧
还有就是为了测试这个方案的可行性,原因是知乎核心算法中包括很多浏览器环境的信息,所以这是综合选择的结果,所以提取hook他的算法做成服务器,
这样也还可以使加密解耦合 为更大范围的抓取做服务支撑如果算法有变 我们都不用改爬虫源代码只要改加密服务器就可以了,不过知乎更新并不是很勤快,用了1年多了这个方法,而且这个方法貌似防爬机制都触发的概率比较低,
来上两章手机截图吧 不一步步演示了
请添加图片描述
下边这张图就是 抓包到的数据了 我圈出的api 就是我们目标的api 我筛选的是一些点赞 评论和简洁的信息 其他自己
分析吧,我只是做信息聚会,
在这里插入图片描述
点进去 切换到请求那一栏 所有请求信息都能看到了 多抓几次你会发现真正需要的和变化参数没几个
请添加图片描述

第一眼肯定是懵逼,多试几次会,然后再结合分享去的web端网页比如 https://www.zhihu.com/xen/market/remix/paid_column/
最后一串是小说集 的id
你会发现请求头直接 6个参数就可以了

 

x-zse-96 其中 black_code 是加密值 前边2.0固定版本 我上图是版的显示是1.0 而网页时2.0
x-zse-93 的 os_vr 是环境的版本 这里由于跟的web版本不一样我们选择从浏览器那边动态获取
cookie 是web环境初始化后的识别信息,不是重点 也从浏览器环境获取就可以了
醒醒啦 主要任务来了

第一步 分析知乎的页面找到算法验证的关键点

在浏览器器调试源码里 找到 vendors.2d292cce3f0653fa0e5e.js
然后搜索 __g._encrypt 结果会出来两个 至于怎么找 不在本次教程范围内 新手可以看我一上篇
能搜索出来两个结果 这里我们只用到第一个 断点刷新一下你们就知道了,这是对上边代码中 baseurl 进行加密的算法
知乎此处比较弱了的点是把这种 关键点api 的值输入和输出 直接暴露了,虽然也是闭包存在,但是我们直接改这里代码就可以修改成全局可用的算法,其实可以学学抖音 再加密混淆一次 就不好找了 他这种应该vue编译出来直接上线了那种 毫无防护手段 作为大厂 还是很意外的写个小工具源代码都能逆向出来

在这里插入图片描述
我们修改方案

 

这样 就把加密算法 提取出来了 时间成本极低 然后 我们就可以用 window._encrypt全局方法做文章了

第二步 写一个浏览器插件 在知乎提取出关键js 放进去 修改指定关键行 然后替换

在这里插入图片描述
新建文件夹 zhihuchajian 这个文件夹地址 一会儿 浏览器 需要用到
然后按照上述目录建立文件结构
下面我给出文件内容
hoook_manager.js

 

manifest.json

 

vendors.2d292cce3f0653fa0e5e.js 这个太大 不粘帖了,自己去改吧 .这个方法把我们插件放在编辑器里 修改js 达到了动态修改页面js 的目的 爽的不要不要的 比追栈效率高不少

第三步 启动 web 启动浏览器远程 debuger 模式 并且加载插件

这个浏览器地址是默认安装的位置 注意修改你名字 这是一个 命令行 在桌面新建一个bat 复制进去修改 保存 再启动

 

–remote-debugging-port 指定浏览器开发端口 9222
–user-data-dir 指定浏览器环境存储的路径 设置这个可以把一个浏览器当作多个浏览器来用
–user-agent 自定义浏览器头
–load-extension 指定自己的浏览器插件路径
上述操作完成基本就你可以看到 自己的插件了
在这里插入图片描述
再去访问 知乎网址 https://www.zhihu.com/xen/market/remix/paid_column/
调试期内 查看源码 就看到
在这里插入图片描述
我们的代码生效了,愉快的玩耍吧, 记得我们的bat 要一直启动不能关闭

第四步 利用python web框 架 暴露一个简单服务,打通浏览器 执行js 完成我们算法认证

 

以上代码弄完还不能正常运行 不过大的操作环境 已经就位 为了给知乎留点面子不写了
但是给大家一点提示
def get_data(light_code):
这个方法我们接收的 light_code 是有固定算法需要计算的不需要浏览器环境 ,不过我提供的关键点 你们向上追栈是可以找到的
流程是 大概就是这几个参数 说到这里自己去搜这几个关键参数就应该找到了 这些一起计算一个明码值 再传给浏览器加密依靠一些浏览器动态信息加密给出暗码 ,再通通过浏览器头发送get 请求,这里就完成了逆向 可以愉快爬了
# os_vr = “101_3_3.1”
# story_id = “”
# url_api = f"/pluton/products/{story_id}/paid_column/section"
# authId = “7481a31d25d73bfc1edf9240df687cf9”
这样我们就可以自己动态修改请求 也可以 还不去关注浏览器内登录信息了 暴露的服务还可以解耦给其他 分布式服务使用 就是一个快乐

到此这篇zipsigner签名教程(zip sign)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • linux修改文件权限为root(linux修改文件权限为rwxrxr)2024-12-05 10:54:07
  • grid布局阮一峰(grid 布局)2024-12-05 10:54:07
  • 启动docker 镜像(docker镜像启动参数)2024-12-05 10:54:07
  • aurora是什么牌子手表是哪国的(aur0ra是什么牌子)2024-12-05 10:54:07
  • noentry怎么读(no they arent怎么读?)2024-12-05 10:54:07
  • bert预训练模型(bert预训练模型可以直接用吗)2024-12-05 10:54:07
  • archwing模块(archwing模块在哪)2024-12-05 10:54:07
  • yarn 打包命令(yarn build命令)2024-12-05 10:54:07
  • chrony 同步(chrony同步间隔怎么设置)2024-12-05 10:54:07
  • fairseq教程(fairness)2024-12-05 10:54:07
  • 全屏图片