📦 锁匠(Lockpicker)
v1.0.1图形界面de a user through capturing and analyzing a HAR file from their own 记录ged-in browser 会话, 提取ing the minimum auth material needed, m应用ing the ex...
运行时依赖
安装命令
点击复制技能文档
Lockpicker 指南从用户拥有的浏览器会话开始,向外工作。不要从猜测端点开始。
核心规则 仅使用此方法访问和操作用户授权的服务。 使用用户自己的已认证浏览器会话。 重现用户可以手动执行的工作流程。 更喜欢捕获的证据而不是推测。 不要强制隐藏端点、模糊认证或超出请求的范围。 如果 cookie、csrf 或认证头已过期,请从浏览器会话中刷新它们,而不是尝试绕过。 警告用户,重放私人 Web 调用可能会违反网站条款,可能会在不通知的情况下中断,并可能锁定或限制帐户。 最小化敏感信息的保留:仅存储实际需要的认证材料,保留在本地,并避免将其复制到聊天中,除非用户明确选择这样做。
工作流程 确认目标操作。 捕获一个成功的手动运行的干净 HAR。 从同一个浏览器会话中提取认证材料。 隔离确切的请求链。 识别可重用的常量和动态字段。 将工作流重建为本地脚本。 先测试一个项目。 只有在成功后才添加队列、调度或批处理。
步骤 1:确认目标操作 用一句话写下用户的目标。 例如:安排带有一张图片的帖子、发布草稿的画廊项目、上传文件并提交元数据、为稍后发布创建一个排队的帖子。 还要记录成功条件:返回的 ID、可见的已安排项目、发布的永久链接、创建的草稿。
步骤 2:捕获干净的 HAR 在捕获之前阅读 references/har-capture-checklist.md。 捕获一个干净的成功运行,尽量减少额外的噪音。 首选此序列:打开一个新标签页、打开 DevTools 网络、保留日志、禁用缓存、清除旧请求、仅执行一次目标操作、在成功后立即导出 HAR。 如果一个网站使用分块上传或多个链式调用,请确保 HAR 包括完整的序列。
步骤 3:提取认证材料 阅读 references/auth-materials.md。 仅收集实际需要的用于重放的材料,通常是: Cookie 头 csrf 令牌 Authorization 头(如果存在) 客户端头(如果请求依赖于它们) 将它们保存为本地运行文件,除非用户请求另一个位置。
步骤 4:隔离请求链 阅读 references/request-analysis-patterns.md。 将工作流分为阶段,例如: 初始化 追加/上传 最终化 状态/轮询 变异/创建 确认/读回 对于每个阶段,识别: 方法 URL 查询参数 所需头 身体形状 从前一个响应中复制的值 忽略装饰噪音,例如分析、被动 feed 刷新和无关的 GraphQL 调用。
步骤 5:识别可重用和动态字段 将每个字段标记为: 常量(在运行中) 认证/会话派生 每个请求生成 用户提供的内容 从前一个步骤返回 例如:查询 ID 可能是可重用的,直到网站更改它;csrf 来自会话;媒体 ID 来自上传;初始化/最终化的安排时间戳是用户提供的;永久链接可能是从返回的 rest ID 派生出来的。
步骤 6:重建为本地脚本 保持第一个脚本狭窄。 首选的第一次形状:一个执行一个已知的工作流的脚本,从头到尾。 纯文本认证文件 一个媒体文件 一个文本有效载荷 一个调度时间戳(如果相关) JSON 输出文件,保留步骤结果 使用捆绑的帮助程序: scripts/extract_har_requests.py 以总结和过滤 HAR 请求 scripts/extract_cookie_headers.py 以从匹配的 HAR 请求中提取 cookie / csrf / authorization 材料 scripts/diff_request_shapes.py 以比较两个请求 JSON 形状并识别动态字段 scripts/scaffold_direct_client.py 以从一个捕获的请求 JSON 生成一个第一次重放脚本
步骤 7:先测试一个项目 不要先批处理。 验证: 上传成功 返回的 ID 看起来真实 最终的变异成功 用户可见的结果存在 如果第一次测试失败,请将失败的请求与 HAR 进行比较,而不是猜测。
步骤 8:添加队列或调度 仅在单个项目成功后。 使用队列清单,当用户想要重复运行时。 包括字段,例如: scheduled_at 文本 媒体文件 状态 结果 ID 永久链接 备注 更喜欢小批处理和生产站点之间的暂停。
帮助脚本 总结匹配的 HAR 请求 python scripts/extract_har_requests.py capture.har --contains graphql --contains upload --out requests.json 从匹配的请求中提取认证材料 python scripts/extract_cookie_headers.py capture.har --contains x.com/i/api/graphql --out-dir runtime-auth 比较两个请求形状 python scripts/diff_request_shapes.py request-a.json request-b.json 为第一次直接客户端脚本搭建框架 python scripts/scaffold_direct_client.py request.json --out first_client.py
何时阅读参考资料 在捕获之前阅读 references/har-capture-checklist.md。 在提取 cookie 材料时阅读 references/auth-materials.md。