前言
Cookie 反爬虫指的是服务器端通过校验请求头中的 Cookie 值来区分正常用户和爬虫程序的手段,这种手段被广泛应用在 Web 应用中。
这次主要是对各类cookie值加密的网站情况进行分析
学习响应cookie和session的处理
学习基于首页返回的cookie值
声明
本文章中所有内容仅供学习交流使用,不用于其他任何目的,不提供完整代码,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关。
本文章未经许可禁止转载,禁止任何修改后二次传播,擅自使用本文讲解的技术而导致的任何意外,作者均不负责,若有侵权,请联系作者立即删除,请各位自觉遵守相关法律法规。
一. cookie反爬虫
1.1 特征提示
cookie加密一般有一个特征:会对服务器进行多次请求才能有数据
两种形式/情况
- 1.直接访问对方服务器,服务器通过响应头返回给你一个cookie值(一般有一个关键词会在头部,叫做set-cookie)
- 2.第一次请求对方服务器时,对方返回一些JS文件,在浏览器里面通过JS算法等情况获得一个cookie值,然后第二次请求时候携带该JS生成的cookie值 进行请求网站。对方显示正常数据(该方法相对来说比较频繁)
2.2 cookie加密原理
二. 实战分析
- 逆向目标:今日话题-雪球
- 逆向参数:acw_sc__v2/cookie值
首先说明一下,该网站属于我们cookie加密之前举例分析的两种情况中的第二种,也是相对来说使用比较频繁,也比较难的一种
开始分析该网站,因为是cookie加密,所以我一般会选择开启无痕模式对其进行分析比较好,然后对页面进行刷新,会发现直接卡住了,陷入到无限debugger中
acw_sc__v2(阿里系cookie参数基本上都是这个-阿里系的一个特征/例如阿里云/阿里巴巴等等)
对其进行分析(一般开启无痕模式比较好)
如果开启无痕模式后没有给跳debugger,直接对document.cookie进行搜索也可以
然后进行hook技术对其无限debugger进行跳过
对其进行跟栈调试,一直跟栈到最后一步,发现cookie相关位置,打下断点进行测试调试
发现该位置就是我们所需要的位置,找到了acw_sc__v2逆向参数
这个值是由reload函数获得的,所以顿到最后一个断点位置之后进行逐步跟栈分析
这个arg2看起来就是我们要的参数加密数据,打下断点,刷新,分析一下这个位置
经过确认,该位置就是我们需要的位置,然后对其进行扣代码,解析
进去需要解析的位置,如下,将其扣到pycharm中
有混淆,打下断点,在控制台输出一下,逐个将其混淆进行解混淆(也可以直接进行AST语法树解混淆对比),另一个参数也是这样进行分析即可
结果参数展示
最终获取结果
写在最后:
本人写作水平有限,如有讲解不到位或者讲解错误的地方,还请各位大佬在评论区多多指教,共同进步.如有需要代码和讲解交流,可以加本人微信18847868809