Security Policy¶
Supported versions¶
| version | supported |
|---|---|
| 0.3.x | ✅ active |
| 0.2.x | ⚠️ critical fixes only |
| < 0.2 | ❌ end-of-life |
py-idp is pre-1.0; the public API may shift between minor versions.
Pin to a minor (py-idp>=0.3,<0.4) in production.
Reporting a vulnerability¶
Please do not open a public GitHub issue for security problems.
Email rollroyces@users.noreply.github.com (or DM via the GitHub profile) with:
- A short description of the issue and impact.
- A minimal reproduction (script, sample document, or trace).
- The affected version (commit SHA or
pip show py-idp | grep Version).
If the noreply relay is unreachable for any reason, you can also reach the maintainer at roycelam@umich.edu.
I aim to acknowledge within 72 hours and ship a fix or mitigation within 14 days for critical issues (RCE, credential leakage, arbitrary code execution via crafted input). Lower-severity issues are bundled into the next regular release.
Scope¶
In scope:
- Deserialization of untrusted input (documents, schemas, fixtures).
- Path traversal in
Document.from_pathand storage backends. - Prompt injection that escapes the extraction sandbox.
- SSRF via user-supplied URLs to
compat/ollama/china:*backends. - The
idp.apiFastAPI server (auth, rate limit, upload-size cap).
Out of scope:
- Vulnerabilities in upstream model weights (Nanonets, Qwen, etc.).
- Issues requiring a maliciously crafted output of an LLM.
- Denial of service via very large legitimate documents.
Hall of fame¶
(no reports yet — be the first)