欢迎光临
我们一直在努力

【安全机制分析案例(首篇,含索引)】基于Referer白名单校验的JSESSIONID生效机制逆向解析

文章目录

      • 系列文章
      • 结论速览
      • 初始错误假设
        • 用户观察到的现象
        • 第一轮的错误推断(已证伪)
      • 目标站点与页面基本信息
        • 离线素材中保存的本地文件(`化学品安全法规标准合规平台_files/`)
      • 核心机制:两层服务端校验
        • 时序图
        • 两层校验的精确语义
        • 白名单登记规则(实测)
      • 验证实验全记录(A~N)
        • 关键对照:Why \”Please login first\” ≠ \”Not Authorized\”
        • 其他实测数据
      • 关键技术细节
        • `_passport` 令牌
        • `callService` 协议
        • `_command` 常量表(重点)
        • 客户端加密工具(不是校验机制)
        • `getErrorMsg` 中的 passport 抹除
        • “查询”按钮的真实调用链
      • 搜索接口的防护评估(无签名、参数可任意篡改)
        • 结论
        • 防护清单:有 / 没有
        • 参数篡改实验(同会话,`Referer=SearchAllCustomer.jsp`,`_command` 保持搜索命令不变)
        • 由此暴露的服务端分派内幕
        • 两种“URL 编码”不要混淆
        • 风险与合规说明
      • 真实浏览器访问 Main.jsp 的完整请求清单
      • 可复现脚本(curl)
        • 完整示例:先登记目标页再调用(推荐)
        • 最简示例:省略“登记页”,仅 2 条命令
      • 抓取/对接实现建议
        • 生命周期(伪代码)
        • 注意事项
      • 未解细节与后续验证方向
      • 附录:关键数据速查表
        • 会话与令牌样本(2026-09-16)
        • `_passport` 样本
        • cookie jar 形态(`curl -c` 保存结果)
        • 首页附件下载 ID(抓包样本)
        • 缓存逻辑
        • 错误信息对照
        • 检索响应样例(两组,均已实测)

摘要:本文是针对化学品安全法规标准合规平台会话授权(JSESSIONID 生效)机制的逆向分析报告,通过大量 curl 对照实验还原站点真实鉴权逻辑,破除 “点击查询后 JSESSIONID 生效由客户端 PoW/JS 挑战驱动” 的错误假设。 站点实际采用两层服务端校验机制:第一层为会话初始化校验,需完成Main.jsp→Check.jsp?_passport→Main.jsp302 握手流程完成会话初始化;第二层为页面作用域校验,服务端在 Session 内维护已访问页面集合,接口请求的Referer路径必须属于该集合才可放行,仅成功返回 HTTP200 的页面会被登记入白名单,JSESSIONID Cookie 本身不会发生变化,变化的是服务端 Session 内部状态。 平台统一接口callService.action中,_command为服务端预生成的静态密文常量,用于选定后端服务方法;业务参数置于_args,为明文 JSON 经过一次表单 URL 编码,接口不存在签名、时间戳、nonce、分页上限等防篡改校验,仅依靠会话与 Referer 白名单做访问控制。报告完整记录 A‑N 多组验证实验、请求样例、可直接运行的 curl 复现代码,给出会话生命周期伪代码、错误码处理逻辑、抓取对接实现建议,同时列出尚未完全确认的技术疑点供后续研究。 合规声明:本报告仅用于安全机制技术研究学习,请勿将分析结果用于高频、大规模批量爬取目标站点数据;使用相关接口需遵守目标网

赞(0)
未经允许不得转载:171主机测评 » 【安全机制分析案例(首篇,含索引)】基于Referer白名单校验的JSESSIONID生效机制逆向解析
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址