PatchPivot is a defensi workspace for tracking security
patches, organizing reproducible research, and carrying findings through
responsible disclosure.
This repository is not an exploitation framework and is not a replacement for
human authorization, scoping, or disclosure review. It is a workbench for
defensi research: patch diffing, source review, binary
analysis, fuzzing harnesses, crash triage, mapping, and coordinated
reporting.
PatchPivot can be dri, by an MCP-aware research CLI such as a
proprietary Ink Security CLI, by erosolar --profile ,
or by any orchestrator that can read and write the in directories
described below.
The workflow starts from a recently fixed or security-relevant
commit:
1. Identify the patch, ad, affected range, and bug class.
2. Compare and patched code to isolate the primitive that changed.
3. Search for related code paths where the same primitive may still exist.
4. Build minimal harnesses around the relevant parser, syscall, library, or
binary interface.
5. Fuzz and triage crashes inside an isolated lab.
6. Reduce e to a defensible proof of impact.
7. Report through HackerOne, Bugcrowd, PSIRT, CERT/CC, an internal
ad process, or another authorized coordinated disclosure channel.
PatchPi separates the durable research record from bulky,
en artifacts. The repository stores source notes, harness
code, minimized proof material, and disclosure records. Large binaries,
decompiler projects, raw fuzzing corpora, , crash dumps, and tool
caches should li the repo in an artifact store.
An in directory normally contains:
Minimum local requirements:
scripts/patch-watch.mjsscripts/new-in.shRecommended research tooling:
kali-linux-e metapackage for a broad toolsetanalyzeHeadless for repeatable decompilation pipelinesThis repository does not currently ship an MCP server, Kali image, Ghidra plugin,
or proprietary Ink Security CLI source. It defines a filesystem contract
that those tools can drive.
Create a manual in:
Populate intel/sources.md and README.md, then drive the in with
your preferred operator:
or, for an MCP-aware proprietary CLI:
The exact CLI name and flags depend on the private implementation. The important
contract is that the orchestrator treats the finding directory as the source of
truth and writes durable e back into the expected subdirectories.
Run the patch watcher:
Run one target only:
Limit fallback date range when no previous state exists:
The first run for each target seeds state/watch-state.json and queues nothing.
The second and later runs queue candidate in.
If a proprietary Ink Security CLI is used to dri, treat the
CLI as an orchestration layer rather than a hidden database. The CLI may be
closed-source, but the research record it produces should remain inspectable in
this repository.
Recommended responsibilities:
Recommended commands:
Recommended exit codes:
Recommended JSON-lines event stream:
Recommended proprietary-source boundary:
Suggested run-log location:
Suggested run-log minimum fields:
scripts/patch-watch.mjs is intentionally small and auditable.
Input:
targets.yamlstate/watch-state.json--target, --since, --dry-runLocal cache:
.cache/mirrors/<target> stores bare Git mirrorsgit clone --bare --filter=blob:nonegit fetch --filter=blob:none originState behavior:
lastSha, the watcher records current HEAD and queueslastSha, the watcher inspects lastSha..HEADlastSha ad to current HEADCandidate heuristic:
Queue output:
The queued intel/sources.md includes:
The watcher is not a oracle. It is a triage feeder.
Targets are declared in targets.yaml:
Fields:
name: short stable slug used for cache and finding namesproduct: human-readable product labelrepo: upstream source repository URLad: ad feed, RSS feed, mailing list, or portal URLbounty: disclosure program URL when one existsnotes: portfolio rationale and bug-class hintsGood targets usually have:
Current checked-in targets include Linux kernel, Chromium/V8, OpenSSL, WebKit,
and glibc.
Use these statuses consistently in findings/<slug>/README.md:
Record:
Output:
intel/sources.mdREADME.md hypothesisCollect only what is needed and legally permitted:
Record SHA-256 hashes for binaries and large inputs. Keep hea out of
Git.
Suggested external artifact layout:
For source-a targets:
For binary-only targets:
Output:
diff/patch-analysis.txtSearch for code that repeats the same unsafe assumption:
Record candidates in the table with status and rationale.
Harnesses should be minimal, reproducible, and scoped:
Useful build modes:
Do not turn a proof into a weapon. The goal is to pro and impact
inside the authorized lab, not to add persistence, stealth, lateral mo,
credential access, or payload delivery.
For fuzzing:
Recommended external layout:
Commit only stable, minimal, disclosure-safe inputs under crashes/.
Correlate crash behavior with code:
Output:
triage/*.txtcrashes/*.txtREADME.md status and tableEvery in must end in a coordinated channel:
disclosure.md should include:
Update disclosures/log.md after submission.
MCP is useful as the control plane for repeatable research. PatchPi
MCP tools to operate on explicit finding directories and produce auditable files,
not hidden chat-only state.
Recommended MCP tool groups:
MCP safety controls:
finding path for every tool callExample kali_lab.run request:
Example kali_lab.run response:
Example ghidra_headless.analyze request:
Example ghidra_headless.analyze response:
Example MCP en :
Expected MCP run record:
kali-linux-e is useful because it provides a broad security research
tool in in one en. In PatchPivot it should be used as an isolated
analysis backend, not as an unrestricted attack box.
Recommended setup:
Isolation recommendations:
Useful Kali package families:
PatchPivot does not require Kali specifically. Ubuntu, Debian, Fedora, Nix,
Windows with WSL2, macOS, or cloud runners can drive the same finding structure
as long as the required tools are a.
Headless Ghidra is the preferred repeatable binary-analysis backend when source
is una or when the source patch must be correlated with shipped binaries.
Typical headless flow:
Recommended exports:
Suggested output location:
Headless Ghidra can run on:
For large targets, keep Ghidra projects outside Git and commit only exported
summaries.
PatchPi well with source-centric security tooling:
rg for fast literal and regex searchessearch examples:
When an MCP source-analysis tool produces results, store:
Each result should include:
Cloud is useful for bursty builds, large fuzzing jobs, and headless binary
analysis. Use ephemeral infrastructure and keep sensiti controlled.
Recommended pattern:
Worker requirements:
Good cloud jobs:
Poor cloud jobs:
Some research targets, crash samples, or generated binaries may trigger endpoint
security controls. Treat AV or EDR en as controlled labs.
Appropriate uses:
Controls:
PatchPivot's AV-lab role is e collection for defense, not e.
This project assumes authorized research only.
In scope:
Out of scope:
Every finding must land in a disclosure terminal:
A finding is not closed until disclosure.md and disclosures/log.md reflect
the coordinated outcome.
1. Edit targets.yaml.
2. Add a unique name.
3. Add the upstream source repo when a.
4. Add the ad feed or portal.
5. Add bounty or PSIRT information.
6. Explain the target's value in notes.
7. Run the watcher in dry-run mode.
8. Run the watcher normally once to seed state.
9. Review queued candidates on later runs.
Example:
Manual path:
Watcher path:
Then:
1. Update findings/<slug>/README.md.
2. Fill intel/sources.md.
3. Add intel/scope.md if an MCP or lab runner will execute tools.
4. Add diff e under diff/.
5. Add harness code under harness/.
6. Add minimized proof inputs and logs under crashes/.
7. Add debugger and decompiler notes under triage/.
8. Draft and submit disclosure.md.
9. Update disclosures/log.md.
Safe to automate:
Keep human-supervised:
High-value impro:
schemas/ directory for finding metadata and disclosure terminalnew-in script for Windows-natiThe checked-in findings demonstrate the intended e shape:
CF: glibc scanf allocation off-by-one analysis,CMS: OpenSSL CMS AEAD parameter parsing analysis,C: Linux kernel AF_ALG/splice mapping andCNF: V8 JIT type-confusion methodology.C: ANGLE/WebKit rendering-backend mapping.These examples are research records. Reproduce or extend them only in authorized
lab en.
开发语言:JavaScript
Star 数:1
该项目属于防护思路方向的开源资源,代码结构清晰,适合安全研究人员学习参考。项目围绕PatchPivot is a defensive variant-analysis workspace for tracking security patches, organizing reproducible research, and carrying findings through responsible disclosure.展开,提供了可运行的实现,对理解相关安全机制、工具原理与攻防技术具有较高的研究价值。
从技术实现角度看,此类项目的核心在于对底层原理的深入理解与工程化落地。开发者在研究过程中可以结合官方文档与社区讨论,梳理项目的初始化流程、核心模块职责与数据流转,逐步掌握其中的技术细节与设计思路。
1. 下载源码压缩包,解压到本地环境。
2. 根据项目类型准备对应的运行环境与依赖。
3. 按照 README 中的步骤完成配置与部署。
4. 在隔离的测试环境中运行验证,避免影响生产系统。
本资源来源于开源社区,仅供安全研究、技术学习与合法授权范围内的攻防演练使用,请勿用于任何非法或侵害他人权益的用途。使用本项目产生的一切后果由使用者自行承担。
| 资源标题 | patchpivot - PatchPivot is a defensive variant-analysis workspa |
| 所属分类 | 防护思路 |
| 发布作者 | admin |
| 发布时间 | 2026-10-06 00:29:56 |
| 下载权限 | 免费下载 |
| 附件数量 | 2 个下载链接 |
| 浏览次数 | 225 |
| 讨论数量 | 0 |
| 主题状态 | 正常讨论中 |