{"id":"CVE-2026-117564","revision":null,"records":[{"revision":"32b940d90dea451694c771469d1e8cf9","observedAt":"2026-10-28T17:46:48.824+00:00","statement":{"source":"cve-program","id":"CVE-2026-117564","aliases":[],"title":"nest-admin before 1.0.1 Authentication Bypass via Hardcoded JWT Secret","description":"nest-admin before 1.0.1 contains an authentication bypass vulnerability that allows unauthenticated attackers to forge administrator tokens by using a hardcoded JWT_SECRET committed in .env.production. Attackers can sign tokens with the known secret that JwtStrategy and RbacGuard trust, impersonating any user ID or claiming the admin role for full administrative access.","state":0,"publishedAt":"2026-10-27T13:07:58.36+00:00","modifiedAt":"2026-10-28T16:16:56.709+00:00","affected":[{"ecosystem":"Vendor product","name":"nest-admin","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"vendor\": \"buqiyuan\",\n                    \"product\": \"nest-admin\",\n                    \"defaultStatus\": \"unaffected\",\n                    \"versions\": [\n                        {\n                            \"status\": \"affected\",\n                            \"version\": \"0\",\n                            \"lessThan\": \"1.0.1\",\n                            \"versionType\": \"semver\"\n                        }\n                    ]\n                }"}],"metrics":[{"system":"CVSS 4.0","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N","score":9.3,"severity":"CRITICAL"},{"system":"CVSS 3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","score":9.8,"severity":"CRITICAL"}],"references":["https://github.com/buqiyuan/nest-admin/issues/93","https://github.com/buqiyuan/nest-admin","https://github.com/buqiyuan/nest-admin/commit/f2cec8cb776cbf113115b33164dac69a46d24097","https://github.com/buqiyuan/nest-admin/issues/92","https://github.com/buqiyuan/nest-admin/blob/2eeccc4cb699d1aedbe04b4437a9d095cde02c74/.env.production#L5","https://www.vulncheck.com/advisories/nest-admin-before-1.0.1-authentication-bypass-via-hardcoded-jwt-secret"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-117564","license":"CVE Program Terms of Use","key":"cve-program:CVE-2026-117564","identifiers":["CVE-2026-117564"]},"retained":false,"historicalAffected":[]}],"coverage":[{"source":"cisa-kev:global","scope":"Complete CISA KEV catalog; all vendors. Missing entries do not establish absence of exploitation.","generation":"2026-10-31T02:47:27.2544287+00:00","complete":true,"records":1766,"lastAttemptAt":"2026-10-31T02:47:27.2544287+00:00","lastSuccessAt":"2026-10-31T02:47:27.412022+00:00","error":null,"lastVerifiedAt":"2026-10-31T02:47:27.4120229+00:00","snapshotPublishedAt":null,"importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"cve-program","scope":"Official CVE Program baseline and cumulative hourly delta; all vendors, published and rejected records","generation":"cve-9266d7b009bf9c4a0ccdcb5cbdea7f905cb3c4d92fd3b41581ece16b2cfdc4e7-d7f5a774da7dc1d7039b507f4f152d095052a9de5600b490bf90aeeb3ccce760","complete":true,"records":417488,"lastAttemptAt":"2026-10-31T02:45:38.6593437+00:00","lastSuccessAt":"2026-10-31T02:45:38.6372337+00:00","error":null,"lastVerifiedAt":"2026-10-31T02:45:38.6593437+00:00","snapshotPublishedAt":"2026-10-31T02:28:41+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"euvd","scope":"Rolling EUVD lookups of CVE aliases in current public OSV archives; 500 identifiers per refresh, rechecked after 48 hours. Not a global EUVD catalog. Successful not-found lookups count as checked; they do not imply withdrawal or safety. No reader inventory is sent.","generation":"enrichment-39149994e3854f27b5e713b62480af55","complete":true,"records":13563,"lastAttemptAt":"2026-10-31T02:47:53.1518029+00:00","lastSuccessAt":"2026-10-31T00:45:56.62+00:00","error":null,"lastVerifiedAt":"2026-10-31T00:45:56.62+00:00","snapshotPublishedAt":null,"importing":false,"stagedRecords":0,"checkedIdentifiers":13635,"expectedIdentifiers":13635,"failedIdentifiers":0},{"source":"first-epss:nuget","scope":"FIRST EPSS for explicit CVE aliases in the collected public NuGet archive. Not a global EPSS backfill.","generation":"2026-10-31T02:47:27.2544287+00:00","complete":true,"records":1094,"lastAttemptAt":"2026-10-31T02:47:27.2544287+00:00","lastSuccessAt":"2026-10-31T02:47:27.4127685+00:00","error":null,"lastVerifiedAt":"2026-10-31T02:47:27.4127685+00:00","snapshotPublishedAt":null,"importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"nvd","scope":"Rolling NVD lookups of CVE aliases in current public OSV archives; 500 identifiers per refresh, rechecked after 48 hours. Not a global NVD catalog. Successful not-found lookups count as checked; they do not imply withdrawal or safety. No reader inventory is sent.","generation":"enrichment-e07ef8e6642e41289c217437d69cabe7","complete":false,"records":13575,"lastAttemptAt":"2026-10-31T02:47:52.572535+00:00","lastSuccessAt":"2026-10-31T02:47:52.568+00:00","error":null,"lastVerifiedAt":"2026-10-31T02:47:52.568+00:00","snapshotPublishedAt":null,"importing":false,"stagedRecords":0,"checkedIdentifiers":13547,"expectedIdentifiers":13635,"failedIdentifiers":0},{"source":"osv:Go","scope":"Complete OSV Go ecosystem archive, including withdrawn and malicious-package source records; statement counts are not unique CVE counts","generation":"go-21dcd6662970dfea02e4ea60ee637115e8d92664947484d2b9276b3f6568a84f","complete":true,"records":9815,"lastAttemptAt":"2026-10-31T02:47:27.2108627+00:00","lastSuccessAt":"2026-10-30T23:47:34.1817587+00:00","error":null,"lastVerifiedAt":"2026-10-31T02:47:27.2108627+00:00","snapshotPublishedAt":"2026-10-30T23:33:17+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"osv:NuGet","scope":"Complete OSV NuGet ecosystem archive, including GitHub Advisory Database records; NuGet version matching only","generation":"nuget-2de9ccc5290f060c7aa63f89c25dd76f655a64ba1aba7c05c97fa3bee4f09899","complete":true,"records":1967,"lastAttemptAt":"2026-10-31T02:45:38.7086939+00:00","lastSuccessAt":"2026-10-28T20:55:34.2982937+00:00","error":null,"lastVerifiedAt":"2026-10-31T02:45:38.7086939+00:00","snapshotPublishedAt":"2026-10-28T20:03:08+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"osv:crates.io","scope":"Complete OSV crates.io ecosystem archive, including withdrawn and malicious-package source records; statement counts are not unique CVE counts","generation":"crates.io-f95f76cd406ae5bae3de632ad37fd2d5160b44f5e6b51748ac6f8f0c0c88e72b","complete":true,"records":3028,"lastAttemptAt":"2026-10-31T02:47:27.2247414+00:00","lastSuccessAt":"2026-10-30T23:47:38.4914494+00:00","error":null,"lastVerifiedAt":"2026-10-31T02:47:27.2247414+00:00","snapshotPublishedAt":"2026-10-30T23:18:12+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null},{"source":"osv:npm","scope":"Complete OSV npm ecosystem archive, including withdrawn and malicious-package source records; statement counts are not unique CVE counts","generation":"npm-0d73c5ef3fc1482e9579e6438c4ee3a6c6252dd519f22ac62df687497937bd6c","complete":true,"records":230992,"lastAttemptAt":"2026-10-31T02:47:27.0834272+00:00","lastSuccessAt":"2026-10-31T02:47:25.6622408+00:00","error":null,"lastVerifiedAt":"2026-10-31T02:47:27.0834272+00:00","snapshotPublishedAt":"2026-10-31T02:33:22+00:00","importing":false,"stagedRecords":0,"checkedIdentifiers":null,"expectedIdentifiers":null,"failedIdentifiers":null}]}