T09 · Insecure Skill Coding Practices
- Location
bin/run.mjs:210- Finding
API Authentication Token Transmitted in the URL Query String
- Content
View full analysis
item.location === "query")) { const value = params[parameter.name]; if (value === undefined) { continue; } appendValue(url.searchParams, parameter.name, value); } } ``` The request is subsequently sent with the credential embedded in the URL: ```js try { response = await fetch(url, requestInit); } catch (error) { fail("Network request failed.", { cause: error instanceof Error ? error.message : String(error), operationId: operation.operationId, }); } ``` ### Technical Analysis The operation manifest classifies the required `token` parameter as a query parameter. `applyQueryParams()` processes every parameter with `location === "query"` and appends its value to `url.searchParams`. As a result, the final request has the following effective form: ```text https://api.justoneapi.com/api/facebook/search-post/v1?token=&keyword= ``` TLS protects the URL from passive observation while it is in transit. It does not prevent the complete URL from being retained by systems th ...[truncated 2076 chars]- Remediation
View remediation
