MEDIUM
GHSA-j5qp-p44g-2m49
@asymmetric-effort/specifyjs: No redirect target validation in secureFetch
Details
## Finding
**Location**: `core/src/shared/secure-fetch.ts`
`assertSecureUrl` validated only the initial request URL. The `fetch()` API follows redirects by default (up to 20 hops). A request to a valid `https://` URL could redirect to `http://internal-service/` or other unvalidated destinations.
## Status
**Fixed in v0.2.136** — `secureFetch` now defaults to `redirect: 'error'` which rejects any redirect. Callers can override with `{ redirect: 'follow' }` if they trust the target.
Are you affected?
Enter the version of the package you're using.
Affected packages
npm / @asymmetric-effort/specifyjs
Introduced in:
0 Fixed in: 0.2.136 Fix
npm install @asymmetric-effort/specifyjs@0.2.136