docs: scan #99 — mims-harvard/ToolUniverse (1 real, reported privately) - #139
Merged
Conversation
…orted privately) The class is an intra-repo guard differential: a well-reasoned shared security module documents two independent controls for the project's network servers, and every surface installs both except two, which install one and not the other. In the shipped default the missing one is the only control that applies. No rule found it — it came from reading the module's docstring as a spec and tabulating which implementations satisfy it. Reported via GitHub PVR (GHSA-mv53-jxjr-hp8g, triage) with a runnable differential built from the project's own helpers, carrying a positive control (local client still gets 200) and a negative control (the project's own sibling surface rejects the same request). Detail withheld from the post. Also notable: the two dependency tools disagreed and both were right — pip-audit read pyproject.toml (0 findings, the user install path), Trivy read uv.lock (97, the contributor path the developer guide prescribes). The dependency-scan-unaudited-lockfile meta-finding caught the gap first. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Scan #99 in the public series. 284 findings, 1 real after curation, reported privately via GitHub private vulnerability reporting (
GHSA-mv53-jxjr-hp8g, in triage). Detail is withheld from the published post until the maintainers respond.The finding class — an intra-repo guard differential. The project ships a genuinely well-reasoned shared security module documenting two independent controls for its network servers; every surface installs both except two, which install one and not the other. In the shipped default configuration the missing control is the only one that would have applied. No scanner emitted this: it came from reading the module's own docstring as a specification and tabulating which implementations satisfy it.
The report carries a runnable differential built from the project's own helpers imported verbatim, with a positive control (the legitimate local client still gets
200, so the fix breaks nothing) and a negative control (the project's own sibling surface rejects the identical request).Two dependency tools disagreed and both were right — pip-audit read
pyproject.tomland reported 0 across 156 packages; Trivy readuv.lockand reported 97. Open floors describe the user install, the lockfile describes the contributor install the developer guide prescribes. Both paths are real. Thedependency-scan-unaudited-lockfilemeta-finding flagged the gap before I did — second time in three days.82 Gitleaks hits, 0 secrets: a repo wrapping ~600 scientific databases is made of high-entropy strings, and the one real hardcoded key is the vendor's documented public demo key.
Three files updated as required:
docs/scans/mims-harvard-tooluniverse.md, thedocs/index.mdtable (99 rows), and thedocs/scan-log.mdarchive (99 entries). Withheld detail grepped out of all three.🤖 Generated with Claude Code