boss直聘 __zp_stoken__ 逆向分析

声明:

本文章中所有内容仅供学习交流使用,不用于其他任何目的,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!
有相关问题请第一时间头像私信联系我删除博客!

前言

zp_stoken 风控有点恶心搞了很久才百分百成功了剩下解决验证码即可。

逆向分析

主要监测点就是要处理要window.top和window的关系。

{

"ancestorOrigins": {

},

"href": "about:blank",

"origin": "null",

"protocol": "about:",

"host": "",

"hostname": "",

"port": "",

"pathname": "blank",

"search": "",

"hash": ""

}

location里面什么都没有,值在window.top.location里面。

然后就是把node的一些监测点建议全部清除。可以参考boda、零点、挽风开源里面怎么去除监测点的,全部清除。

最后python代码

复制代码
#
import time

import requests
seed = ""
ts = ""
session = requests.session()
headers = {
    "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36 Edg/131.0.0.0",
    "x-requested-with": "XMLHttpRequest"
}
cookies = {

}
url = "/zpgeek/search/joblist.json"
params = {
    "scene": "1",
    "query": "fff",
    "city": "101280100",
    "experience": "",
    "payType": "",
    "partTime": "",
    "degree": "",
    "industry": "",
    "scale": "",
    "stage": "",
    "position": "",
    "jobType": "",
    "salary": "",
    "multiBusinessDistrict": "",
    "multiSubway": "",
    "page": "1",
    "pageSize": "30"
}
response = session.get(url, headers=headers, cookies=cookies, params=params)
data = response.json()['zpData']

seed = data['seed']
ts = data['ts']
print(seed, ts)
for i in range(1,10):
    result = requests.get("http://127.0.0.1:3000/", json=dict(session.cookies),
                          params={'url': "", 'seed': seed, 'ts': ts}).json()
    token = result['_abck']
    print(token)
    session.cookies.set('__zp_stoken__', token)
    response = session.get(url, headers=headers, params=params)
    print(response.json())
    params['page'] = i
    time.sleep(1)

结果

总结

1.出于安全考虑,本章未提供完整流程,调试环节省略较多,只提供大致思路,具体细节要你自己还原,相信你也能调试出来。

相关推荐
itzixiao几秒前
L1-054 福到了(15 分)[java][python]
java·python·算法
Flittly4 分钟前
【SpringSecurity新手村系列】(7)基于资源权限码(Authority)的接口权限控制实战
java·spring boot·安全
斯维赤6 分钟前
Python学习超简单第十一弹:邮件发送
开发语言·python·学习
qq_372154236 分钟前
如何配置表中某列的排序权重_全文索引配置与权重分配
jvm·数据库·python
接着奏乐接着舞。14 分钟前
【Node】用来处理CPU密集型任务的利器Worker Threads
node.js
还是阿落呀14 分钟前
如何判断一个年份是否为闰年?
python
2501_9142459317 分钟前
CSS如何使用-nth-of-type精确选择列表项_通过元素类型限制提升样式健壮性
jvm·数据库·python
ECT-OS-JiuHuaShan18 分钟前
哲学的本质,是递归因果
java·开发语言·人工智能·科技·算法·机器学习·数学建模
overmind19 分钟前
oeasy Python 124 序列_字符串_string_str
开发语言·python
吕源林24 分钟前
Golang如何做本地缓存加速_Golang本地缓存教程【核心】
jvm·数据库·python