Files
Marius CiepluchandClaude Opus 5.5 53c9a7cc65 bench(pairs): real fix-commit pairs for the short families
97 advisory-fix pairs, one repository each (309 advisories examined, 212
rejected with reasons in research-2026-10-01.md): a public fix commit
distinct from its parent, the advisory-named function declared on both
sides with a changed body. Pointer pairs: materialize.py reads one file
per side from a shallow blobless fetch into the pair cache and verifies
them with the label builder's matcher (verification.json, bytes read).

learn/sources.toml lists the catalog as the advisory-fixes source. Label
snapshot: negative repository groups untrusted_destination 8->25, path
3->21, output_encoding 1->22, deserialization 0->21, access_control 0->20;
all five reach the per-family floor. Five pairs on reserved repositories
were dropped after the reserved-population guard flagged them.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01EmM1j46qgKMh3zqD1QMwEo
2026-10-01 11:51:28 +02:00

59 KiB

Advisory-fix pairs: research log (2026-10-01)

Purpose: give the learned decision engine defensible negatives for the families that had none or few (repository groups with a fixed-side negative before this: untrusted_destination 8, path 3, output_encoding 1, deserialization 0, access_control 0; commit 658f2d5 dropped 108 invented negatives). A pair is a public fix commit for a published advisory (CVE/GHSA), distinct from its parent, where the advisory-named function is declared on both sides and its body changes. The positive is the function at the parent, the negative the same function at the fix.

Method

  • Enumeration. One lane per family worked the GitHub advisory database (gh api /advisories?ecosystem=<eco>&cwes=<n>) per ecosystem (pip, npm, maven, composer, go, rubygems, nuget), newest first, with web search only to locate a fix commit an advisory did not link. The family is the advisory's CWE through ruleset/families.toml.
  • Exclusions before examination. Every repository already named under benchmarks/ (its github.com URL or a catalog repo =, collected with the reserved-population files excluded by name and never opened) and every repository already claimed by another lane: one pair per repository across the whole catalog.
  • Metadata only. Advisories, commits, file lists, repository size and licence came from gh api. The two versions of the one vulnerable file were read through materialize.py --candidate: a shallow blobless fetch (--filter=blob:none, depth 2) into the pair cache and git show <sha>:<path>. No scanner, rule, engine, plane task or model ran on any of these repositories. Repositories over ~150 MB (size > 150000 KB) were rejected unread.
  • Acceptance. The checker cuts the function on both sides with the label builder's own matcher (learn.excerpt.function_bounds) and accepts only when both sides declare it and its body (lines after the declaration, whitespace-normalised) differs. Fixes in large release/squash commits, fixes outside any function (route tables, config, templates), functions deleted or renamed by the fix and family mismatches were rejected.
  • Reserved population. After the catalog was written, tests/test_independent_population.py:: test_no_reserved_repository_is_referenced_by_the_development_tree flagged five accepted repositories (2 path, 1 deserialization, 2 access_control). They were dropped; their rows below are kept as rejections with the name and advisory withheld, and their cache entries deleted. Two rejected rows (one output_encoding, one deserialization) also named reserved repositories; their names and ids are withheld the same way (the lane tallies below keep their original rejection reasons).
  • Licences. SPDX id from the API; where the API said NOASSERTION the LICENSE file name/text was read through the API (rack MIT, handlebars.java Apache-2.0, omnifaces Apache-2.0, og-image MIT, django-cms BSD-3-Clause, C1 CMS MPL-1.1). Permissive licences were preferred; 7 accepted pairs are copyleft (GPL/AGPL/LGPL/MPL), used where too few permissive candidates in a language qualified.

Known limits

  • The function matcher is the label builder's, so excerpts inherit its limits: for htmlsanitizer-dosanitize-0ac53dc (C#) the span runs to the end of the class and for zeppelin-fromjson-8368579 (Java) it takes in the next method. Both functions' own bodies change; the label is path::function, unaffected.
  • Multi-commit fixes use the commit before the first fix commit as parent (LiteDB); merge-commit fixes use the first parent (truelayer-dotnet, weasyprint, oqtane, jellyfin and others noted in their rows).
  • jellyfin's advisory (GHSA-4vx8-xhc9-qg6x) is a repository advisory not in the global database.

Counts

family examined accepted rejected
untrusted_destination 33 17 16
path 43 18 25
output_encoding 98 21 77
deserialization 60 21 39
access_control 75 20 55
total 309 97 212

Rejections by reason, per lane (lane tallies; the rows carry each reason):

  • untrusted_destination (16): repository over 150 MB 5; family mismatch or no destination check added 3; licence (AGPL, non-OSI, LGPL fallback unused) 3; fix commit unusable 2; claimed by another lane 2; not verified, quota met 1.
  • path (25): repository over 150 MB 10; matcher cannot declare the function on a side 4; viable reserves not needed 4; reserved repository 2; fix in a large mixed commit 2; claimed by another lane 1; family mismatch 1; vulnerable method is a setter 1.
  • output_encoding (77): fix is validation/filtering, not encoding 15; fix only in a template or non-code file 15; repository over 150 MB 14; no fix commit 11; multi-file, release or merge-sweep commit 8; other (body unchanged, ambiguous name, unnamed arrow) 7; copyleft skipped 5; duplicate or claimed 2.
  • deserialization (39): repository over 150 MB 11; no usable fix commit 10; different flaw type 6; function deleted or unnamed 3; referenced commit does not hold the fix 3; blocklist-only edit 2; other (proprietary licence, withdrawn, bundled multi-advisory commit) 3; reserved repository 1.
  • access_control (55): repository over 150 MB 22; fix outside any function body 7; duplicate repository 6; matcher limit 4; release or large feature commit 3; licence 3; no single function to label 3; reserved repository 2; anonymous route callback 2; no fix commit 2; family mismatch 2; class-level check only 1.

Rows (one per examined advisory)

untrusted_destination

Order: per ecosystem (pip, npm, maven, composer, go, rubygems, nuget), CWE-918 then CWE-601, newest first; only advisories whose repository was not in used-repos.txt/claims.txt and that carry a commit reference were examined.

advisory repo language framework verdict reason licence size KB
GHSA-5923-r76v-mprm https://github.com/remram44/taguette python tornado accepted _go_to_next gains next-URL validation BSD-3-Clause 11345
GHSA-5p9j-w2wx-qx4c https://github.com/nitely/spirit python django accepted custom_login gains safe_redirect host check MIT 12295
GHSA-28mg-98xm-q493 https://github.com/archivy/archivy python flask accepted login gains same-host next check MIT 1212
GHSA-jgmv-j7ww-jx2x https://github.com/koajs/koa javascript koa accepted back() gains same-origin referrer check MIT 4006
GHSA-w6x9-28jw-hq7j / GHSA-998g-7v5w-cr7g https://github.com/magicmirrororg/magicmirror javascript express rejected family mismatch: referenced fix commit adds Socket.IO IP allow-listing (access control), not destination validation MIT 27595
GHSA-5g86-85rp-f9hx https://github.com/papra-hq/papra typescript hono rejected AGPL-3.0 and fix moves the guard into a new http-client helper (fix-added function); permissive alternatives available AGPL-3.0 31963
GHSA-ppf9-4ffw-hh4p https://github.com/feathersjs/feathers typescript feathers accepted getRedirect gains authority-injection check on redirect param MIT 45420
GHSA-v93c-cxj5-c398 https://github.com/jenkinsci/google-login-plugin java jenkins accepted doCommenceLogin inverted isSafeToRedirectTo check fixed Apache-2.0 131
GHSA-fxr3-gvm4-m8vc https://github.com/hs-web/hsweb-framework java spring rejected repository already claimed by another lane (path) Apache-2.0 34602
GHSA-whpp-xv3h-rwxf https://github.com/spring-projects/spring-ws java spring rejected fix is a broad multi-file refactor (new sender abstraction, interceptor ordering); no single function gains the guard Apache-2.0 25006
GHSA-pp3c-cf6j-m3ff https://github.com/oblac/jodd-http java rejected family mismatch: fix is CRLF/path encoding in path(), not destination validation BSD-2-Clause 326
GHSA-4hr2-xf7w-jf76 https://github.com/line/centraldogma java armeria rejected repo > 150 MB (153095 KB); referenced commit only touches test server and webapp 403 handling Apache-2.0 153095
GHSA-q7mc-fc87-v7w7 https://github.com/openrefine/openrefine java rejected repo > 150 MB (407619 KB) BSD-3-Clause 407619
GHSA-qjp4-4jvr-xqg3 https://github.com/spring-ai-community/mcp-security java spring rejected advisory-referenced commit changes only README (config/docs) Apache-2.0 830
GHSA-wrxc-mr2w-cjpv https://github.com/getgrav/grav php grav accepted redirect() gains leading-slash normalisation MIT 35084
GHSA-gmxh-hjfv-qc2w https://github.com/benjaminjonard/koillection php symfony accepted fetchWithHttpClient gains NoPrivateNetworkHttpClient MIT 58355
GHSA-hhpq-7wg4-36jm https://github.com/cakephp/authentication php cakephp accepted getLoginRedirect gains backslash and // rejection MIT 2767
GHSA-7j2f-6h2r-6cqc https://github.com/koel/koel php laravel accepted createForEpisode gains isSafeUrl guard before download MIT 29419
GHSA-wqv2-4wpg-8hc9 https://github.com/miniflux/v2 go net/http accepted checkLogin gains relative-path-only redirect check Apache-2.0 38867
GHSA-mpf7-p9x7-96r3 https://github.com/axllent/mailpit go net/http accepted doHead gains URL validation and internal-IP blocking dialer MIT 4336
GHSA-c4v7-xg93-qf8g https://github.com/gogs/gogs go macaron rejected repo > 150 MB (212268 KB) MIT 212268
GHSA-jp94-3292-c3xv https://github.com/heartcombo/devise ruby rails accepted redirect_url gains path extraction from Referer MIT 5944
GHSA-67m4-qxp3-j6hh https://github.com/truelayer/truelayer-dotnet csharp accepted GetPayment gains NotAUrl check and path-append MIT 1707
GHSA-vx6p-q4gj-x6xx https://github.com/owen2345/camaleon-cms ruby rails rejected repository already claimed by another lane (path) MIT 61387
GHSA-vfm5-cr22-jg3m https://github.com/abpframework/abp csharp aspnetcore rejected repo > 150 MB (3069476 KB); LGPL-3.0 LGPL-3.0 3069476
GHSA-ff4q-64jc-gx98 https://github.com/duendesoftware/identityserver csharp aspnetcore rejected non-OSI licence (Duende RPL, spdx NOASSERTION "Other"); fix spans 5 commits NOASSERTION 63296
GHSA-2vvr-5757-qp87 https://github.com/jenkinsci/cas-plugin java jenkins accepted determineTargetUrl gains isSafeToRedirectTo check MIT 273
GHSA-7899-w6c4-vqc4 https://github.com/misskey-dev/summaly typescript rejected fix only plumbs a followRedirects option through; no destination check added to a vulnerable function MIT 903
GHSA-q8hw-4fvp-9rwv https://github.com/nuxt-modules/og-image typescript nuxt accepted font-assets resolve() gains external-URL classification and SSRF-guarded fetch; licence file is MIT (GitHub reports NOASSERTION because of an appended woff-lib notice) MIT 39785
GHSA-983w-rhvv-gwmv https://github.com/kozea/weasyprint python accepted default_url_fetcher stops following redirects (redirect-based SSRF guard bypass) BSD-3-Clause 35995
GHSA-7gwp-5pfp-969j https://github.com/mlflow/mlflow python flask rejected repo > 150 MB (1487459 KB) Apache-2.0 1487459
GHSA-42fc-7w97-8vrc https://github.com/xwiki-contrib/macro-plantuml java xwiki rejected LGPL-2.1 (GitHub licence null); held as fallback only, target met with permissive pairs LGPL-2.1 2160
GHSA-pm5p-7w5h-jm5q https://github.com/alextselegidis/easyappointments php codeigniter rejected not verified: PHP quota reached (4 accepted); claim released; fix spans 4 commits GPL-3.0 49915

path

Order: GitHub reviewed advisories with cwes=22,23,36,73,98, per ecosystem (composer, pip, npm, go, maven, rubygems, nuget), newest first; repositories in used-repos.txt or claims.txt filtered out before examination. Every candidate was verified with materialize.py --candidate ("ok": true).

advisory repo language framework verdict reason licence size KB
GHSA-xv8g-76mx-2rxc https://github.com/plank/laravel-mediable php laravel accepted sanitizePath gains segment normalisation MIT 2135
GHSA-5vpg-rj7q-qpw2 https://github.com/yiisoft/yii2 php yii accepted renderPhpFile isolates included path from extract() BSD-3-Clause 91537
(id withheld) reserved repository (name withheld) php rejected the repository is reserved for the independent evaluation (reserved-population guard test)
(id withheld) reserved repository (name withheld) php rejected the repository is reserved for the independent evaluation (reserved-population guard test)
GHSA-c7r6-vx3h-w5g2 https://github.com/SpartnerNL/Laravel-Excel php laravel rejected deferred: fix removes a raw-write branch rather than adding containment (held as reserve) MIT 4033
GHSA-g4c3-4g96-6g4m https://github.com/chamilo/chamilo-lms php rejected repo > 150 MB GPL-3.0 1664356
GHSA-c6f4-wj38-m3g3 https://github.com/grokability/snipe-it php laravel rejected repo > 150 MB AGPL-3.0 332721
GHSA-hhmc-q9hp-r662 https://github.com/codeigniter4/codeigniter4 php codeigniter rejected repo > 150 MB MIT 396388
GHSA-7hxc-f267-h5q7 https://github.com/craftcms/cms php craft rejected repo > 150 MB NOASSERTION 1077350
GHSA-xjvc-pw2r-6878 https://github.com/flarum/framework php flarum rejected repo > 150 MB MIT 190820
GHSA-2mfj-r695-5h9r https://github.com/Dolibarr/dolibarr php rejected repo > 150 MB GPL-3.0 1748373
GHSA-chm7-4vch-h8vr https://github.com/TYPO3/typo3 php typo3 rejected repo > 150 MB GPL-2.0 660207
GHSA-6wh5-mw9h-5c3w https://github.com/shopware/shopware php symfony rejected repo > 150 MB MIT 533542
GHSA-vp2f-cqqp-478j https://github.com/AzuraCast/AzuraCast php rejected repo > 150 MB AGPL-3.0 269902
GHSA-6vqf-6fhm-7rc6 https://github.com/OpenMage/magento-lts php magento rejected repo > 150 MB OSL-3.0 154085
GHSA-cj54-hpcc-gj6h https://github.com/thumbor/thumbor python tornado accepted load decodes before containment check MIT 55333
GHSA-9jj8-v89v-xjvw https://github.com/dgtlmoon/changedetection.io python flask accepted static_content strict sanitisation Apache-2.0 48192
GHSA-83w8-p2f5-377r https://github.com/fastify/fastify-static javascript fastify accepted pumpSendToReply gains dot-dot segment rejection MIT 818
GHSA-g84c-rxfj-3j2c https://github.com/webpack/webpack-dev-middleware javascript express accepted getFilenameFromUrl gains containment check MIT 16072
GHSA-2mf3-mr2r-r4vf https://github.com/gina-io/swig javascript rejected checker: resolve (ret.resolve assignment) not declared on either side MIT 3310
GHSA-3vfr-4gwf-qxfp https://github.com/avwo/whistle javascript rejected fix in a large mixed feature commit MIT 103125
GHSA-79qf-vqgc-7xx3 https://github.com/apostrophecms/apostrophe javascript apostrophe rejected repository claimed by another lane MIT 52259
GHSA-frvp-7c67-39w9 https://github.com/honojs/node-server typescript hono rejected checker: serveStatic (const arrow function) not declared on either side MIT 654
GHSA-g72f-jw3w-mgh7 https://github.com/naorsabag/openhop typescript fastify accepted filePath gains flow-id validation MIT 83174
GHSA-rxjr-6c9q-h67x https://github.com/logto-io/logto typescript rejected vulnerable function is a const arrow (createStaticFileProxy); fix moves logic into new helper getSafeStaticFilePath; MPL-2.0 MPL-2.0 119764
GHSA-hrh2-vp3x-79xf https://github.com/XhmikosR/decompress javascript rejected extractFile is a const arrow function (checker cannot declare it); library not web MIT 966
GHSA-9gfj-28hw-jchp https://github.com/knowns-dev/knowns go accepted DocStore.Get gains containment via safepath MIT 82181
GHSA-964w-f6gj-5236 https://github.com/goshs-labs/goshs go accepted upload gains dot-dot rejection + containment MIT 9952
GHSA-vvp7-h4fj-m28w https://github.com/gtsteffaniak/filebrowser go accepted subtitlesHandler gains basename + track allow-list Apache-2.0 100116
GHSA-3gmf-p6r4-q8m6 https://github.com/apache/wicket java wicket accepted save gains contained target resolution Apache-2.0 133763
GHSA-vjmr-f5fc-vr2w https://github.com/hs-web/hsweb-framework java spring accepted createStaticSavePath gains basename + charset check Apache-2.0 34602
GHSA-hrmj-8fm9-cg8x https://github.com/jenkinsci/external-workspace-manager-plugin java jenkins accepted computeCustomPath gains dot-dot rejection (merge commit, first parent) MIT 2920
GHSA-g29j-rwfv-h99w https://github.com/jknack/handlebars.java java spring accepted getResource gains normalise + prefix containment (LICENSE text is Apache-2.0; gh reports NOASSERTION) Apache-2.0 4451
GHSA-mxw3-3hh2-x2mh https://github.com/rack/rack ruby rack accepted check_forbidden gains separator-anchored containment (MIT-LICENSE; gh reports NOASSERTION) MIT 10834
GHSA-pxcc-8665-phx8 https://github.com/lsegal/yard ruby accepted check_static_cache gains dot-dot rejection + cleanpath MIT 9468
GHSA-jw5g-f64p-6x78 https://github.com/owen2345/camaleon-cms ruby rails accepted fetch_file gains valid_folder_path? guard MIT 61387
GHSA-pjxv-w3qj-j8m3 https://github.com/mguinness/elFinder.AspNet csharp aspnet accepted ExtractAsync gains GetFullPath containment BSD-2-Clause 1110
GHSA-62mm-xwmv-crhg https://github.com/khoj-ai/khoj python fastapi rejected not pursued: AGPL-3.0 and permissive Python pairs sufficed (home_static_files gains resolve+is_relative_to; viable reserve) AGPL-3.0 117280
GHSA-2xmw-f8j8-wfxc https://github.com/ddnexus/pagy ruby rejected vulnerable method is the setter locale= (name not expressible as a pair function name) MIT 41635
GHSA-fh2f-xfxc-q9cc https://github.com/bablilayoub/openhole go rejected family mismatch: fix is URL/proxy path escaping, not filesystem access MIT 1581
GHSA-vr5f-w35q-98jp https://github.com/perses/perses go rejected not pursued: fix in list.go helper unrelated to the named project-path sink (4 lines) Apache-2.0 45211
GHSA-6q65-j4jw-9cg8 https://github.com/riganti/dotvvm csharp dotvvm rejected not pursued: C# already covered; GetVersionHash debug-mode only (viable reserve) Apache-2.0 65853
GHSA-mvvp-gwgc-5hrp https://github.com/trannamtrung1st/elFinder.Net.Core csharp aspnet rejected fix spread over many files/new exception types (security release commit) Apache-2.0 218

output_encoding

Family: output encoding (XSS CWE-79/80/83, header/CRLF injection CWE-113, improper encoding CWE-116). Order: per ecosystem (pip, npm, maven, composer, go, rubygems, nuget), GitHub advisory API newest first, CWE-79 first then CWE-116/113/80; composer additionally walked for 2025 (published=2025-01-01..2025-12-31). Every accepted pair passed materialize.py --candidate ("ok": true, bytes_read > 0). Accepted: 21; by language: {'python': 4, 'typescript': 4, 'java': 3, 'php': 4, 'go': 2, 'ruby': 2, 'csharp': 2}; by framework: {'tornado': 1, '(none)': 10, 'django': 1, 'express': 1, 'jquery': 1, 'hono': 1, 'jsf': 1, 'jenkins': 1, 'silverstripe': 1, 'laravel': 1, 'fiber': 1, 'rails': 1} Rejected: 77 Notes:

  • htmlsanitizer-dosanitize-0ac53dc: the checker's C# function matcher overshoots (excerpt ~490 lines, runs past DoSanitize to the end of the class); the DoSanitize body itself does change. Review before use.
  • omnifaces/omnifaces: gh reports NOASSERTION; LICENSE.txt is the Apache License 2.0 text.
  • template-load-28cff3a (gofiber/template): Load() flips pongo2 autoescape on; mechanism recorded as other.
  • htmlpublisher-plugin: advisory has no commit ref; fix commit found by searching the repo for SECURITY-3706.
advisory repo language framework verdict reason licence size KB
GHSA-pr2v-jx2c-wg9f https://github.com/tornadoweb/tornado python tornado accepted write_error escapes reason with xhtml_escape Apache-2.0 11646
GHSA-r5pr-887v-m2w9 https://github.com/bloomberg/memray python - rejected fix only changes a template file (base.html) Apache-2.0 -
GHSA-8whx-v8qq-pq64 https://github.com/dgtlmoon/changedetection.io python flask rejected fix only changes route converter in decorator; function body unchanged Apache-2.0 -
GHSA-gqgw-jghv-mxwx https://github.com/jazzband/tablib python - accepted export_book builds the title element via ElementTree so the dataset title is HTML-escaped MIT 2021
GHSA-g97x-gvcm-x72h https://github.com/lepture/mistune python - accepted render_admonition escapes class option BSD-3-Clause 1533
GHSA-w7rv-gfp4-j9j3 https://github.com/mixxorz/slippers python django accepted attr_string uses format_html MIT 1580
GHSA-58cw-g322-p94v https://github.com/lepture/mistune python - rejected duplicate repository (same fix commit as GHSA-g97x, already accepted) BSD-3-Clause 1533
GHSA-6wxc-8mgq-w26m https://github.com/WeblateOrg/weblate javascript django rejected fix rewrites static JS (search.js) into a new structure; spans many files, not a single function gaining escaping GPL-3.0 -
GHSA-gx2m-mcc2-r4p3 https://github.com/WeblateOrg/wlc python - rejected skipped: GPL-3.0 licence while permissive candidates remained GPL-3.0 -
GHSA-2jp7-wwpg-3p9w https://github.com/ether/etherpad typescript express accepted getHTMLFromAtext escapes data-* attribute values Apache-2.0 52436
GHSA-gcr2-9v8m-gq45 https://github.com/dicebear/dicebear typescript - accepted addRotate xml-escapes rotate MIT 32762
GHSA-hvqh-jw65-wcpq https://github.com/devbridge/jQuery-Autocomplete typescript jquery accepted formatGroup encodes category via textContent MIT 1018
GHSA-cr32-g25g-vxjj https://github.com/showdownjs/showdown javascript - rejected fix is a large feature commit (safeMode, 21 files incl. dist bundles) MIT -
GHSA-7pw4-f3q4-r2p2 https://github.com/withastro/astro typescript astro rejected repository over 150 MB (gh size 237090 KB) MIT 237090
GHSA-f48w-9m4c-m7f5 https://github.com/withastro/astro typescript astro rejected repository over 150 MB; fix is name validation, not encoding MIT 237090
GHSA-hxh3-vqpv-xpqv https://github.com/honojs/hono typescript hono accepted resolveChildEarly escapes plain string children MIT 9959
GHSA-gfhx-hw2g-v5hg https://github.com/yahoo/serialize-javascript javascript - rejected fix is a module-level regex change; function-level change does not add escaping of a single value BSD-3-Clause -
GHSA-3wgp-x9p5-c7cc https://github.com/appium/appium typescript express rejected fix is a 35-file refactor isolating test endpoints, not an encoding change Apache-2.0 -
GHSA-8rr6-2qw5-pc7r https://github.com/pmd/pmd java - rejected repository over 150 MB (gh size 605139 KB) BSD-4-Clause 605139
GHSA-v3f3-rf6r-43x5 https://github.com/jenkinsci/coverage-plugin java jenkins rejected fix is id validation in constructor, not output encoding MIT -
GHSA-hrvf-g648-rf3m https://github.com/plantuml/plantuml java - rejected fix removes SVG export feature; no escaping added GPL-3.0 -
GHSA-cpm7-cfpx-3hvp https://github.com/NationalSecurityAgency/emissary java jersey rejected fix filters nav links by pattern (validation), not encoding Apache-2.0 -
GHSA-fp43-vj7g-pg92 https://github.com/omnifaces/omnifaces java jsf accepted getUpdateScript escapeJS on hash param (LICENSE.txt is Apache-2.0; gh reports NOASSERTION) Apache-2.0 17380
GHSA-34pm-923j-7wf8 https://github.com/kestra-io/kestra typescript vue rejected fix only in Vue UI/markdown plugin config; Java not involved; small one-line regex change, not escaping Apache-2.0 -
GHSA-rrvf-5w4r-3x7v https://github.com/apache/zeppelin java - accepted fromJson html-escapes package fields Apache-2.0 115311
GHSA-86jx-wr74-xr74 https://github.com/apache/zeppelin shell - rejected fix is in a shell script (bin/interpreter.sh); duplicate repository Apache-2.0 115311
GHSA-3pxv-7cmr-fjr4 https://github.com/apache/logging-log4j2 java - rejected repository over 150 MB (gh size 154432 KB) Apache-2.0 154432
GHSA-7m5c-fgwf-mwph https://github.com/spring-projects/spring-hateoas java spring rejected no fix commit referenced; fix concerns forwarded-header link base, not value encoding Apache-2.0 8118
GHSA-f8h4-46xv-h7jj https://github.com/jenkinsci/htmlpublisher-plugin java jenkins accepted publishReports attribute-escapes job name/urls (fix commit found via SECURITY-3706 commit search) MIT 520
GHSA-w22p-4x9f-486v https://github.com/jenkinsci/github-plugin java jenkins rejected fix only changes a groovy view and a JS file; no Java function gains escaping MIT -
GHSA-43ph-42gv-7965 https://github.com/jenkinsci/buildgraph-view-plugin java jenkins rejected fix commit not found (no ref, commit search found none) MIT -
GHSA-vqxv-6xrh-49cp https://github.com/OpenIdentityPlatform/OpenAM java - rejected repository over 150 MB (523119 KB); fix mostly in .ftl template NOASSERTION 523119
GHSA-vmj7-7xmm-4349 https://github.com/Silverpeas/Silverpeas-Core java - rejected repository over 150 MB; sonar sweep in JSPs AGPL-3.0 244355
GHSA-hwmc-r6mf-jh83 https://github.com/spatie/schema-org php - accepted toScript json_encode gains JSON_HEX_TAG MIT 9488
GHSA-7mpf-4465-7fc2 https://github.com/wintercms/winter php laravel rejected repository already claimed by another lane MIT -
GHSA-mf2p-wjp4-99pq https://github.com/redaxo/core php - rejected repository over 150 MB (512235 KB) MIT 512235
GHSA-w998-qmw9-mf4m https://github.com/redaxo/core php - rejected repository over 150 MB (512235 KB) MIT 512235
GHSA-5h77-88j3-r659 https://github.com/YOURLS/YOURLS php - rejected fix is hostname validation in yourls_get_domain, not encoding MIT -
GHSA-v65j-hff3-753c https://github.com/StarCitizenWiki/mediawiki-extensions-EmbedVideo php mediawiki rejected fix rewrites the formatter into mustache templates, not a function gaining escaping GPL-2.0 1874
GHSA-vx89-p3j7-8xqc https://github.com/statamic/cms php laravel rejected fix only changes an antlers template file MIT -
(id withheld) reserved repository (name withheld) php rejected the repository is reserved for the independent evaluation (reserved-population guard test)
GHSA-vv3x-j2x5-36jc https://github.com/filamentphp/filament php laravel rejected repository over 150 MB (596400 KB) MIT 596400
GHSA-m4g4-86qc-v8w7 https://github.com/silverstripe/silverstripe-versioned php silverstripe accepted getRestoreMessage raw2xml-escapes title/link/URLSegment BSD-3-Clause 1581
GHSA-p9h3-gvpq-5539 https://github.com/grokability/snipe-it php laravel rejected repository over 150 MB (332721 KB) AGPL-3.0 332721
GHSA-mwqm-4fw3-cjvr https://github.com/symfony/ux typescript symfony rejected changed code is an inline arrow inside an unnamed config block; no named function to pair MIT 61584
GHSA-ffmg-hfvg-jhg9 https://github.com/getgrav/grav php - rejected fix is integer coercion / style validation, not encoding MIT 35084
GHSA-3432-fmrf-7vmh https://github.com/chrome-php/chrome php - accepted __construct json_encodes selector before JS interpolation MIT 668
GHSA-p632-58pp-c9xg https://github.com/moonshine-software/moonshine php laravel accepted resolvePreview escapes relation preview MIT 34925
GHSA-6mp4-q625-mxjp https://github.com/YOURLS/YOURLS php - rejected fix validates JSONP callback name (allow pattern), not encoding MIT -
GHSA-7j46-f57w-76pj https://github.com/getformwork/formwork typescript - rejected merge commit of an 11-file TS refactor (innerHTML usage sweep) MIT -
GHSA-j226-63j7-qrqh https://github.com/barryvdh/laravel-translation-manager php laravel rejected fix sanitizes locale filename in controller plus view-file escaping; primary escaping in template MIT -
GHSA-8jqm-8qm3-qgqm https://github.com/xyproto/algernon go - accepted HTMLLink sanitizes filename text/url BSD-3-Clause 118399
GHSA-q23m-vm9r-5745 https://github.com/stefanprodan/podinfo go - rejected fix sets response headers (content type, CSP), no encoding of the value Apache-2.0 -
GHSA-cf57-c578-7jvv https://github.com/TecharoHQ/anubis go - rejected fix is redirect validation, not encoding MIT 30939
GHSA-9cwv-pxcr-hfjc https://github.com/lf-edge/ekuiper go - rejected fix validates config key, not encoding Apache-2.0 141862
GHSA-3v85-fqvh-7rxf https://github.com/lin-snow/Ech0 go gin rejected repository over 150 MB (151487 KB) and AGPL-3.0 AGPL-3.0 151487
GHSA-4mq2-gc4j-cmw6 https://github.com/gofiber/template go fiber accepted Load enables pongo2 autoescape (was hard-coded off) MIT 2887
GHSA-rqv2-m695-f8j4 https://github.com/modelcontextprotocol/registry go - rejected fix adds URL validation (reject metacharacters), not encoding MIT -
GHSA-45q4-x4r9-8fqj https://github.com/go-vikunja/vikunja go - rejected AGPL-3.0; fix spreads over many identically named ToMail methods (ambiguous function name) AGPL-3.0 134951
GHSA-mcv8-8m8x-48pg https://github.com/gohugoio/hugo go - rejected fix reorders URL escaping vs dangerous-URL check (no new escaping of the value); same shape as goldmark Apache-2.0 146470
GHSA-c97m-vxhj-p7j6 https://github.com/yuin/goldmark go - rejected fix adds a dangerous-URL filter / reorders existing escaping, not new encoding MIT 19839
GHSA-52c5-vh7f-26fx https://github.com/etaminstudio/prosemirror_to_html ruby - accepted render_opening_tag escapes attribute values MIT 58
GHSA-g7xq-xv8c-h98c https://github.com/phlex-ruby/phlex ruby - rejected fix tightens javascript: href detection (validation), not encoding MIT -
GHSA-xv9c-mjw8-79gf https://github.com/sidekiq-cron/sidekiq-cron ruby sidekiq rejected fix only changes ERB view templates MIT -
GHSA-r8xx-8vm8-x6wj https://github.com/resque/resque ruby sinatra rejected fix only changes an ERB view template MIT -
GHSA-5xq9-h3j2-jxvc https://github.com/fetlife/rollout-ui ruby sinatra rejected escaping added via new helper and slim templates; no existing function body gains escaping MIT -
GHSA-97jw-64cj-jc58 https://github.com/ViewComponent/view_component ruby rails accepted render_in escapes unsafe around_render output MIT 5458
GHSA-cqf3-vpx7-rxhw https://github.com/pay-rails/pay ruby rails rejected fix normalises the back param to a path in a new before_action (validation), not encoding MIT -
GHSA-x2xw-hw8g-6773 https://github.com/alphagov/tech-docs-gem javascript - rejected merge commit; fix in bundled JS asset MIT -
GHSA-ghjv-mh6x-7q6h https://github.com/avo-hq/avo javascript rails rejected fix in a Stimulus JS controller adding DOMPurify (dependency added) NOASSERTION -
GHSA-4f7c-pmjv-c25w https://github.com/apache/logging-log4net csharp - accepted FormatXml masks XML-invalid chars in all attributes Apache-2.0 9591
GHSA-j92c-7v7g-gj3f https://github.com/mganss/HtmlSanitizer csharp - accepted DoSanitize sanitizes template content (note: checker excerpt overshoots to ~490 lines) MIT 2942
GHSA-hc72-vj3g-5g2g https://github.com/SeriaWei/ZKEACMS csharp aspnetcore rejected GPL-3.0 and fix sanitizes Title/Html while advisory names ParentID; used only as fallback, not needed GPL-3.0 51448
GHSA-4rr6-2v9v-wcpc https://github.com/restsharp/RestSharp csharp - rejected fix is CRLF rejection in a constructor initializer (validation), not encoding; better candidates found Apache-2.0 41466
GHSA-vcfc-9wcp-j623 https://github.com/ServiceStack/ServiceStack csharp servicestack rejected repository over 150 MB (471601 KB) NOASSERTION 471601
GHSA-93h6-wx7r-mgfp https://github.com/serenity-is/Serenity csharp aspnetcore rejected referenced commits are a version bump and an upload extension denylist, not encoding MIT 141943
GHSA-8x6f-956f-q43w https://github.com/spassarop/antisamy-dotnet csharp - rejected referenced commits are tests-only and a 40-file release merge BSD-3-Clause -
GHSA-8v6j-gc74-fmpp https://github.com/michaelschwarz/Ajax.NET-Professional csharp - rejected fix changes a constant and core.js, no function body gains encoding MIT -
GHSA-gfwx-w7gr-fvh7 https://github.com/nltk/nltk python - rejected not pursued: fix spread over two commits; Python quota reached first Apache-2.0 -
GHSA-v87v-83h2-53w7 https://github.com/lepture/mistune python - rejected no fix commit referenced; duplicate repository (mistune accepted via GHSA-g97x) BSD-3-Clause -
GHSA-542p-wvx7-72m4 https://github.com/litestar-org/litestar python litestar rejected no fix commit referenced in advisory - -
GHSA-fj2m-qvh9-jq4q https://github.com/LearningCircuit/local-deep-research python flask rejected fix spans two PRs and two commits; CWE-918 mixed in - -
GHSA-pf93-j98v-25pv https://github.com/homeassistant-ai/ha-mcp python - rejected no fix commit referenced in advisory - -
GHSA-2gmv-2r3v-jxj2 https://github.com/ParzivalHack/PySpector python - rejected no fix commit referenced in advisory - -
GHSA-63v4-w882-g4x2 https://github.com/MervinPraison/PraisonAI python - rejected no fix commit referenced in advisory - -
GHSA-gx93-m64w-5m6h https://github.com/allure-framework/allure2 java - rejected no fix commit referenced in advisory - -
GHSA-f2hp-qw27-8wfq https://github.com/apache/storm java - rejected no fix commit referenced in advisory - -
GHSA-hw5c-xm3c-v96w https://github.com/spring-projects/spring-webflow java spring rejected no fix commit referenced in advisory - -
GHSA-v84m-gfw5-hm2w https://github.com/apache/syncope java - rejected no fix commit referenced in advisory - -
GHSA-fq9h-c788-fx73 https://github.com/OpenIdentityPlatform/OpenAM java - rejected repository over 150 MB (523119 KB); only a release tag referenced NOASSERTION 523119
GHSA-w3cp-g2pf-65wh https://github.com/silverstripe/silverstripe-cms php silverstripe rejected escaping moved into a helper added by the fix (ListViewForm only calls it); stronger PHP candidates available - -
GHSA-gvrw-qqp5-jgc5 https://github.com/silverstripe/silverstripe-framework php silverstripe rejected fix strips on* attributes from iframe embeds (filtering), not encoding - -
GHSA-38x5-rcv4-xf7x https://github.com/symfony/ux php symfony rejected fix validates child component tag name (rejects), not encoding MIT 61584
GHSA-8hgv-xc77-jmcr https://github.com/getgrav/grav php - rejected fix is a 12-file sandbox/policy change closing four findings MIT 35084
GHSA-8559-gwj3-q37r https://github.com/EasyCorp/EasyAdminBundle php symfony rejected 14-file merge commit; escaping lands in twig templates and a new twig filter - -
GHSA-f7hx-fqxw-rvvj https://github.com/PHPMailer/PHPMailer php - rejected viable (attachAll quotes attachment names) but LGPL-2.1 and permissive PHP candidates sufficed LGPL-2.1 32067
GHSA-3w28-36p9-w929 https://github.com/gogs/gogs go - rejected repository over 150 MB (212268 KB) MIT 212268
GHSA-rh3r-8pxm-hg4w https://github.com/navidrome/navidrome go - rejected GPL-3.0; permissive Go candidates preferred (not inspected further) GPL-3.0 73256

deserialization

Order: GitHub advisory API cwes=502 per ecosystem (composer, pip, maven, rubygems, nuget, npm, go), newest first, skipping repositories in used-repos.txt / claims.txt; plus one web search for npm (js-yaml). Every advisory examined is listed.

advisory repo language framework verdict reason licence size KB
GHSA-v7m3-fpcr-h7m2 https://github.com/zumba/json-serializer php accepted unserializeObject gains @type class allow-list MIT 185
GHSA-gwfr-jfjf-92vv https://github.com/getgrav/grav php rejected fix bundled in multi-advisory security commit (c66dfeb/5a12f9b), FileCache signing spans several functions; deferred MIT 35084
GHSA-w23p-wrp7-ch38 https://github.com/pimcore/pimcore php symfony rejected repo > 150 MB (547161 KB) NOASSERTION 547161
(id withheld) reserved repository (name withheld) php rejected the repository is reserved for the independent evaluation (reserved-population guard test)
(id withheld) reserved repository (name withheld) php rejected the repository is reserved for the independent evaluation (reserved-population guard test)
GHSA-2pm6-9fhx-vvg3 https://github.com/CPS-IT/mailqueue php typo3 accepted fromFile unserialize option fixed to allowed_classes GPL-2.0 1340
GHSA-r33w-fg8j-9c94 https://github.com/cesargb/laravel-magiclink php laravel accepted getActionAttribute drops legacy unserialize fallback (v2.25.1, #148) MIT 414
GHSA-rf88-776r-rcq9 https://github.com/saloonphp/saloon php rejected fix d418356 deletes AccessTokenAuthenticator::unserialize (function absent on fixed side) MIT 3417
GHSA-g82f-9pw7-773w https://github.com/concretecms/concretecms php concrete5 rejected repo > 150 MB (311501 KB) MIT 311501
GHSA-2ff2-mx52-q8wp https://github.com/octobercms/october php laravel rejected licence NOASSERTION (October CMS proprietary licence); SessionMaker lives in separate backend package NOASSERTION 80274
GHSA-h29g-c9cx-c73q https://github.com/torrentpier/torrentpier php rejected scanner-vendor report with no named function or fix commit MIT 42409
GHSA-jr8m-x4p7-p3v5 https://github.com/tomasnorre/crawler php typo3 accepted fetchUrlContents unserialize(header) -> json_decode GPL-3.0 21616
GHSA-rpj2-4hq8-938g https://github.com/kevin1024/vcrpy python accepted deserialize yaml.load -> safe cassette loader MIT 1936
GHSA-vqxf-v2gg-x3hc https://github.com/docling-project/docling-core python accepted load_from_yaml FullLoader -> SafeLoader MIT 111592
GHSA-339m-4qw5-j2g3 https://github.com/tendenci/tendenci python django rejected repo > 150 MB (247990 KB) NOASSERTION 247990
GHSA-jg22-mg44-37j8 https://github.com/aio-libs/aiohttp python aiohttp accepted CookieJar.load pickle.load -> JSON / restricted unpickler Apache-2.0 45467
GHSA-9cfw-f3f9-7mm7 https://github.com/agronholm/apscheduler python rejected no fix commit found (serializer files untouched since 2024) MIT -
GHSA-w8v5-vhqr-4h9v https://github.com/grantjenks/python-diskcache python rejected no fix commit (unpatched) Apache-2.0 -
GHSA-32vr-5gcf-3pw2 https://github.com/MervinPraison/PraisonAI python rejected advisory points to TS file agent.service.ts with JSON_SCHEMA; fix commit not identifiable MIT 111588
GHSA-74vm-8frp-7w68 https://github.com/WaterFutures/EPyT-Flow python accepted my_load_from_json type lookup restricted to registered classes MIT 8484
GHSA-q3g8-rjrx-59ph https://github.com/openstack/ironic python rejected family mismatch: crafted JSON causes service crash (DoS), no object deserialization Apache-2.0 65012
GHSA-34wm-4hw7-qfjv https://github.com/feast-dev/feast python rejected repo > 150 MB (302944 KB) Apache-2.0 302944
GHSA-c2jg-5cp7-6wc7 https://github.com/pipecat-ai/pipecat python rejected repo > 150 MB (202165 KB) BSD-2-Clause 202165
GHSA-fjqc-hq36-qh5p https://github.com/langchain-ai/langgraph python rejected repo > 150 MB (529300 KB) MIT 529300
GHSA-hg58-x52p-859c https://github.com/datapizza-labs/datapizza-ai python accepted RedisCache.get pickle.loads -> JSON codec (e83beeb, #122) MIT 4552
GHSA-7c5v-895v-w4q5 https://github.com/jooby-project/jooby java jooby accepted SessionStoreImpl.strToObject ObjectInputStream -> pac4j Serializer Apache-2.0 80305
GHSA-jmw5-58c7-587h https://github.com/apache/karaf-decanter java karaf accepted LoggingEventObjectInputStream gains JEP 290 allow-list filter Apache-2.0 9096
GHSA-f5cx-h789-j959 https://github.com/powsybl/powsybl-core java accepted SparseMatrix.read gains ObjectInputFilter allow-list MPL-2.0 76236
GHSA-4hvc-qwr2-f8rv https://github.com/redisson/redisson java accepted CustomObjectInputStream.resolveClass gains allowedClasses check Apache-2.0 37067
GHSA-85qj-f5wg-rwp9 https://github.com/spring-attic/spring-statemachine java spring rejected referenced commit only adds Kryo-customizer constructors; kryo registration fix not in a single function body Apache-2.0 18758
GHSA-c459-2m73-67hj https://github.com/sofastack/sofa-hessian java rejected blocklist-only: serialize.blacklist resource edited, no function change Apache-2.0 736
GHSA-h2wm-p2vg-6pw4 https://github.com/rails/kredis ruby rails accepted Json#cast_value JSON.load -> JSON.parse MIT 363
GHSA-977c-63xq-cgw3 https://github.com/opensearch-project/opensearch-ruby ruby accepted verify_open_search YAML.load -> YAML.safe_load Apache-2.0 7171
GHSA-5c5f-7vfq-3732 https://github.com/jmespath/jmespath.rb ruby accepted search JSON.load -> JSON.parse Apache-2.0 283
GHSA-gfhp-jgp6-838j https://github.com/Orckestra/C1-CMS-Foundation csharp asp.net accepted CompositeSerializationBinder.BindToType tightened type allow-list (licence.txt = MPL-1.1, gh reports NOASSERTION) MPL-1.1 70369
GHSA-5q7q-qqw2-hjq7 https://github.com/michaelschwarz/Ajax.NET-Professional csharp asp.net rejected referenced commit c89e39b only changes core.js / constant (XSS), no deserializer change MIT 491
GHSA-3x49-g6rc-c284 https://github.com/litedb-org/LiteDB (was https://github.com/mbdavid/LiteDB) csharp accepted BsonMapper.Deserialize _type assignability + type check (2-commit fix d72c677..4382ff4) MIT 62686
GHSA-mm62-wxc8-cf7m https://github.com/commenthol/serialize-to-js javascript accepted deserialize sanitizes input before new Function eval MIT 79
GHSA-hw46-vg6w-88fj https://github.com/inikulin/replicator javascript rejected fix lives in anonymous transform fromSerializable methods of an object literal; no named function on both sides MIT 89
GHSA-vr6p-vq2p-6j74 https://github.com/likec4/likec4 typescript rejected withdrawn advisory (dependency bump) MIT 241395
GHSA-r399-636x-v7f6 https://github.com/langchain-ai/langchainjs typescript rejected repo > 150 MB (703349 KB) MIT 703349
GHSA-vc9j-fhvv-8vrf https://github.com/LLK/scratch-vm javascript rejected repo > 150 MB (843174 KB), archived, AGPL AGPL-3.0 843174
GHSA-3rxj-6cgf-8cfw https://github.com/lxsmnsyc/seroval typescript rejected referenced commit ce9408e is a version/changelog bump; code fix commit not identifiable MIT 4086
GHSA-mv8w-475r-vwqw https://github.com/lxsmnsyc/seroval typescript rejected no fix commit referenced; 1.5.3 tag absent MIT 4086
GHSA-2gmp-34j9-fqjm https://github.com/inikulin/replicator javascript rejected fix PR #19 never merged (no public fix commit) MIT 89
GHSA-4jwp-vfvf-657p https://github.com/mongodb/js-bson javascript rejected family mismatch: JSON parsing/serialization correctness, no fix commit referenced Apache-2.0 11832
GHSA-xxvw-45rp-3mj2 https://github.com/nodeca/js-yaml javascript rejected no fix commit referenced; fix added safeLoad, load unchanged MIT -
GHSA-rp7v-4384-hfrp https://github.com/k8sgpt-ai/k8sgpt go rejected family mismatch: prompt injection Apache-2.0 29142
GHSA-hcrc-79hj-m3qh https://github.com/wazuh/wazuh python rejected repo > 150 MB (572768 KB) NOASSERTION 572768
GHSA-33cr-m232-xqch https://github.com/cheqd/cheqd-node go rejected family mismatch: non-deterministic JSON unmarshalling (consensus), fix in dependency ibc-go Apache-2.0 -
GHSA-rcxc-wjgw-579r https://github.com/t2bot/matrix-media-repo go rejected family mismatch: untrusted file formats thumbnailed (CWE-434) MIT 122419
GHSA-f5wc-c3c7-36mc https://github.com/golang/crypto go rejected family mismatch: agent constraints dropped; not on GitHub source location BSD-3-Clause -
GHSA-9g64-r942-fvmp https://github.com/apache/activemq-nms-openwire csharp accepted TrustedClassFilter.BindToType rejects unresolved types (AMQNET-844) Apache-2.0 8190
GHSA-76mw-6p95-x9x5 https://github.com/pac4j/pac4j java rejected fix in 4.0.0 removes InternalAttributeHandler (function absent on fixed side) Apache-2.0 77232
GHSA-f984-3wx8-grp9 https://github.com/xuxueli/xxl-rpc java rejected no fix commit (GHSL report, unpatched) Apache-2.0 28236
GHSA-ww7r-278h-48mh https://github.com/QuantConnect/Lean csharp rejected repo > 150 MB (587662 KB) Apache-2.0 587662
GHSA-wq34-7f4g-953v https://github.com/MarimerLLC/csla csharp rejected repo > 150 MB (289501 KB) MIT 289501
GHSA-49rj-9fvp-4h2h https://github.com/remix-run/react-router typescript react-router accepted turbo-stream unflatten hydrate drops attacker-chosen global constructor for TYPE_ERROR (5981192, #14986; follow-up bc77b32 in single-fetch.tsx) MIT 52291
GHSA-p9x5-jp3h-96mm https://github.com/QwikDev/qwik typescript qwik rejected no fix commit referenced; release-tag only, not identified in the commit window MIT 107595
GHSA-9m65-766c-r333 https://github.com/TanStack/router typescript tanstack rejected no fix commit referenced by the advisory (not pursued after target reached) MIT 113156

access_control

Advisories examined via gh api /advisories?ecosystem=<eco>&cwes=284,285,306,425,566,639,862,863&type=reviewed (newest first; first page per ecosystem, then further pages for go/npm/pip/maven), plus Jellyfin repository advisories for C#. Used/claimed repositories were filtered before examination.

advisory repo language framework verdict reason licence size KB
GHSA-q4c5-2j6f-r476 https://github.com/nautobot/nautobot python django rejected repo > 150 MB; fix removes the endpoint (no function body gains a check) Apache-2.0 290947
GHSA-x287-5c68-36wp https://github.com/openwisp/openwisp-ipam python django accepted export_view gains org-scoped get_object_or_404 BSD-3-Clause 36425
GHSA-2q2q-jr9g-v9rf https://github.com/weblateorg/weblate python django rejected repo > 150 MB GPL-3.0 5814773
GHSA-2cm6-r77w-6g96 https://github.com/mlflow/mlflow python flask rejected repo > 150 MB Apache-2.0 1487459
GHSA-49f7-whx5-4256 https://github.com/topoteretes/cognee python fastapi rejected repo > 150 MB Apache-2.0 259125
GHSA-8qj2-c6q4-f399 https://github.com/django-cms/django-cms python django accepted render_object_structure gains view-permission check (LICENSE file is BSD-3-Clause text; API says NOASSERTION) BSD-3-Clause 123368
GHSA-c7c5-5j6r-q957 https://github.com/djust-org/djust python djust rejected no fix commit referenced; fix spread over several entry points (shared chokepoint) MIT 64392
GHSA-47w6-gwp4-w6vc https://github.com/vantage6/vantage6 python flask rejected no fix commit referenced in advisory Apache-2.0 55556
GHSA-8fq9-273g-6mrg https://github.com/avo-hq/avo ruby rails rejected fix only edits before_action list (no function body change) NOASSERTION 33036
GHSA-c273-c6vg-4pv5 https://github.com/publify/publify ruby rails accepted update takes id only from access-checked params[:id] MIT 33042
GHSA-4825-p4xm-pcf2 https://github.com/spree/spree ruby rails rejected repo > 150 MB BSD-3-Clause 323664
GHSA-wr57-hqmp-fgvh https://github.com/umbraco/umbraco-cms csharp aspnetcore rejected repo > 150 MB MIT 476443
GHSA-v46j-h43h-rwrm https://github.com/autolab/autolab ruby rails rejected fix is skip_before_action/action_auth_level declarations, body unchanged Apache-2.0 11321
GHSA-mqq5-j7w8-2hgh https://github.com/alchemycms/alchemy_cms ruby rails accepted nested gains authorize! :show (fix commit found by path history; advisory lists none) BSD-3-Clause 45245
GHSA-c43c-rf7g-5xpg https://github.com/katello/katello ruby rails rejected repo > 150 MB GPL-2.0 278197
GHSA-q79h-67vx-m9xg https://github.com/decidim/decidim ruby rails rejected repo > 150 MB AGPL-3.0 325767
GHSA-89vx-jh4q-vg3w https://github.com/deepstreamio/deepstream.io typescript rejected fix only adds an entry to the rules map (data), no function body change MIT 11065
GHSA-4qpv-39hg-f7fx https://github.com/jhb-software/payload-plugins typescript payload rejected no licence declared in repository none 5748
GHSA-wr5r-wqp2-x4fh https://github.com/apostrophecms/apostrophe javascript apostrophe rejected checker resolves a different move declaration ("body is unchanged") MIT 52259
GHSA-h3rm-78g3-j7cp https://github.com/better-auth/better-auth typescript rejected repo > 150 MB MIT 158549
GHSA-g74q-6g2f-874x https://github.com/tinacms/tinacms typescript rejected repo > 150 MB Apache-2.0 934072
GHSA-jxpj-9j24-w337 https://github.com/apolloconfig/apollo java spring accepted ReleaseController.get gains config-visibility check Apache-2.0 58145
GHSA-9jjc-fw8x-fmwx https://github.com/moquette-io/moquette java accepted publishWill gains canWrite topic authorization Apache-2.0 6555
GHSA-mpff-xhg4-vr45 https://github.com/jenkinsci/mcp-server-plugin java jenkins accepted getReplayScripts gains Item.EXTENDED_READ check MIT 734
GHSA-g7c6-wxjf-8564 https://github.com/jenkinsci/github-branch-source-plugin java jenkins rejected permission check lands in helper/signature change, not the doFill body MIT 3508
GHSA-9v77-j4xv-34gq https://github.com/jenkinsci/ec2-fleet-plugin java jenkins rejected family mismatch: fix adds endpoint validation (SSRF) Apache-2.0 1464
GHSA-hwvp-7xqv-8jx3 https://github.com/jenkinsci/git-parameter-plugin java jenkins rejected no licence declared in repository none 1340
GHSA-9284-fjc3-fmmj https://github.com/sakaiproject/sakai java rejected repo > 150 MB ECL-2.0 568413
GHSA-xqr9-4wvv-gvch https://github.com/openremote/openremote java rejected repo > 150 MB NOASSERTION 310763
GHSA-2rgp-f66f-4499 https://github.com/intranda/goobi-viewer-core java rejected repo > 150 MB GPL-2.0 726110
GHSA-mpmw-f6h6-3g26 https://github.com/wintercms/winter php winter rejected fix adds guarded list and a new formExtendQuery method; no existing body changes (same repo also accepted via GHSA-3277) MIT 69889
GHSA-3277-h8g9-qj5f https://github.com/wintercms/winter php winter accepted getFileRecord scopes file_id lookup to the widget relation MIT 69889
GHSA-575r-357h-fhch https://github.com/grokability/snipe-it php laravel rejected repo > 150 MB AGPL-3.0 332721
GHSA-xxpx-f366-4xpq https://github.com/craftcms/cms php yii rejected repo > 150 MB NOASSERTION 1077350
GHSA-rm67-g9ch-vxff https://github.com/poweradmin/poweradmin php rejected repo > 150 MB GPL-3.0 520322
GHSA-f97c-ph8j-8vff https://github.com/pimcore/pimcore php symfony rejected repo > 150 MB NOASSERTION 547161
(id withheld) reserved repository (name withheld) php rejected the repository is reserved for the independent evaluation (reserved-population guard test)
(id withheld) reserved repository (name withheld) php rejected the repository is reserved for the independent evaluation (reserved-population guard test)
(id withheld) reserved repository (name withheld) php rejected the repository is reserved for the independent evaluation (reserved-population guard test)
GHSA-g2fm-8hr4-j82h https://github.com/easycorp/easyadminbundle php symfony accepted getSymfonyControllerFqcn gains access_control re-check of the dispatched route MIT 50855
GHSA-4227-9989-jrhx https://github.com/perses/perses go echo accepted proxyUnsavedGlobalDatasource gains GlobalSecret read permission check Apache-2.0 45211
GHSA-cjgj-2fwf-4c2w https://github.com/perses/perses go echo rejected duplicate repository (perses already accepted) Apache-2.0 45211
GHSA-p5vg-v7mj-f6q4 https://github.com/frain-dev/convoy go rejected proprietary licence (Convoy licence agreement) NOASSERTION 88612
GHSA-xcw9-qmmf-vqxj https://github.com/amir20/dozzle go rejected repo > 150 MB MIT 164912
GHSA-992g-9cr3-vm5x https://github.com/hatchet-dev/hatchet go rejected repo > 150 MB MIT 219555
GHSA-v684-q882-jgmq https://github.com/siyuan-note/siyuan go rejected repo > 150 MB AGPL-3.0 786842
GHSA-5ww9-jg6q-38r7 https://github.com/filebrowser/filebrowser go accepted resourceDeleteHandler scopes share deletion to d.user.ID (repo archived) Apache-2.0 24323
GHSA-qm33-p5p9-f8vg https://github.com/juev/nebula-mesh (now https://github.com/forgekeep/nebula-mesh) go net/http accepted handleGetAuditLog gains actorIsAdmin gate MIT 5724
GHSA-598g-h2vc-h5vg https://github.com/juev/nebula-mesh go net/http rejected duplicate repository; referenced commit 9d8bcd7 is a later hardening, not this fix MIT 5724
GHSA-7rx3-5wx3-5v76 https://github.com/forgekeep/nebula-mesh go net/http rejected duplicate repository MIT 5724
GHSA-v5m8-5455-qw2x https://github.com/kubev2v/migration-planner go accepted GetSourceDownloadURL gains owner/org check Apache-2.0 6225
GHSA-65w6-pf7x-5g85 https://github.com/delmaredigital/payload-puck typescript payload accepted createDeleteHandler passes req + overrideAccess:false MIT 2014
GHSA-54mc-gghv-4cfj https://github.com/smithyhq/sqladmin python starlette accepted ajax_lookup gains authentication_backend.authenticate gate BSD-3-Clause 6413
GHSA-ccg5-9c8w-xh6v https://github.com/smithyhq/sqladmin python starlette rejected duplicate repository BSD-3-Clause 6413
GHSA-m98r-6667-4wq7 https://github.com/aegra/aegra python fastapi rejected checker extracts only the multi-line signature (closing paren at column 0), reports body unchanged Apache-2.0 4162
GHSA-r2jv-fwfr-4j8c https://github.com/askbot/askbot-devel python django rejected fix in a release commit (v0.12.3) GPL-3.0 96228
GHSA-r6ph-5fp2-3w2v https://github.com/microcks/microcks java spring rejected fix only edits the security filter-chain route matchers (config) Apache-2.0 9353
GHSA-2hr5-cvwp-jr5w https://github.com/oqtane/oqtane.framework csharp aspnetcore accepted IsAuthorized default flips from true to false (PR 4876 merge commit, first parent) MIT 95357
GHSA-hhcw-wwxv-g95c https://github.com/oqtane/oqtane.framework csharp aspnetcore rejected duplicate repository MIT 95357
GHSA-c8qj-jx8j-fg2w https://github.com/riganti/dotvvm csharp dotvvm rejected fix is in expression-bodied explicit interface members whose names duplicate the protected methods; checker resolves the unchanged declaration Apache-2.0 65853
GHSA-4vx8-xhc9-qg6x https://github.com/jellyfin/jellyfin csharp aspnetcore accepted AssertCanControl gains ownership/permission check (published repository advisory, not mirrored in the global advisory DB; merge commit, first parent; GPL used because C# candidates are scarce) GPL-2.0 78504
GHSA-9x85-gx46-6522 https://github.com/jellyfin/jellyfin csharp aspnetcore rejected checker cannot resolve GetPlaylistItems (generic return type); duplicate repository anyway GPL-2.0 78504
GHSA-c7hf-c5p5-5g6h https://github.com/louislam/uptime-kuma javascript express rejected fix lives in anonymous router.get callbacks (no named function) MIT 38757
GHSA-qwc3-h9mg-4582 https://github.com/parse-community/parse-dashboard javascript express rejected vulnerable handler is an anonymous app.post callback (named only by the fix) NOASSERTION (BSD-style licence agreement) 24994
GHSA-j3w7-9qc3-g96p https://github.com/kottster/kottster typescript rejected fix in a large feature commit (table views, role renames) Apache-2.0 5312
GHSA-67gq-6q8c-qqh6 https://github.com/steipete/summarize typescript rejected family mismatch: browser-extension tool-call confirmation, not web access control MIT 59052
GHSA-xvf4-ch4q-2m24 https://github.com/withstudiocms/studiocms typescript astro rejected repo > 150 MB MIT 798260
GHSA-qmjj-p7m9-wjrv https://github.com/actualbudget/actual typescript express rejected repo > 150 MB MIT 602797
GHSA-ggpm-9qfx-mhwg https://github.com/evershopcommerce/evershop typescript rejected fix in a dev->main release merge commit GPL-3.0 48140
GHSA-4cmx-hrq9-c23p https://github.com/moscajs/aedes javascript accepted finish() gains authorizePublish before publishing the Last Will MIT 1477
GHSA-382c-vx95-w3p5 https://github.com/jsonbored/gittensory typescript hono accepted getContributorProfile gains requireContributorAccess (AGPL used: few permissive TS candidates qualified) AGPL-3.0 68042
GHSA-hvrp-rf83-w775 https://github.com/modelcontextprotocol/python-sdk python rejected fix spread across new scoping module and deprecations; no single guarded handler body MIT 16583
GHSA-pxvw-4w88-6x95 https://github.com/9001/copyparty python rejected fix renames canonical() and adds new share-fenced variants (function replaced, not guarded) MIT 9894
GHSA-7j9p-67mm-5g87 https://github.com/openedx/xblock-lti-consumer python django accepted publish_grade_on_score_update gains resource_link_id scope check (AGPL used to reach target) AGPL-3.0 2028
GHSA-9pm8-vwc5-w2hm https://github.com/fatfreecrm/fat_free_crm ruby rails rejected check added as class-level load_and_authorize_resource; destroy body only loses the find MIT 21601