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

相关推荐
实名上网宋凯宣1 天前
Django
后端·python·django
我不会起名字3221 天前
Redis 从 0 到 1(十七):订单 30 分钟不支付自动关闭——ZSet 延迟队列 Go 实现
redis·go·延迟队列·zset·订单
天河归来1 天前
第三方接口不稳定,如何让核心任务继续完成
java·大数据
如若1231 天前
【论文复现】CoFailMed:从零复现医学图像分割的共享失败审计,含完整代码流程与科研绘图
人工智能·python
Knight_AL1 天前
Java 文件下载时文件名中的 `#` 被转换成 `%23`?一次 URL 编码与解码问题排查
java·开发语言
砚底藏山河1 天前
python量化自定义周期 K 线合成
java·开发语言·数据库·python·金融
视觉小萌新1 天前
AI Class 3 · Chapter 1:变量、字符串、list/dict、if/for(python学习-小白版-有经验可跳过)
python·学习·list
猿究院_夏燊1 天前
MySQL 的四种隔离级别
java·数据库·mysql
薛定谔的猫-菜鸟程序员1 天前
软件架构设计师开发资料大全(从入门到精通)
后端·python·系统架构·flask·架构设计师
FungLeo1 天前
成为全栈·Go 后端篇·从 Node SQLite 到 PostgreSQL:把迁移做成独立交付物
postgresql·golang·sqlite·go·数据库迁移·成为全栈