Sceawere

Vulnerability Detail

CVE-2026-77066UPDATED Verified Sceawere Triage Sources: NVD / CISA KEV

Server-Side Request Forgery in scanFeedsResolver

Vulnerability Metadata

Severity
Medium
Score / CVSS
5
Creation Date
7h ago
Vendor
omnivore-app
Product
omnivore
Attack Type
Server-Side Request Forgery (SSRF)
Vector String
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:N/A:N
Attack Complexity
LOW

Narrative and Response

Description

The scanFeedsResolver in packages/api/src/resolvers/subscriptions/index.ts passes the caller-supplied url straight to axios.get(url, rssParserConfig()) with no address validation. The same file guards the subscribe path with validateUrl(), which rejects private and reserved ranges through the private-ip library, and createPageSaveRequest applies the same check, so the omission is specific to this resolver. An authenticated user can direct the server to request arbitrary internal endpoints. The response is parsed as a feed or as HTML and the resolver returns the resulting url, title, description and type fields, so disclosure is limited to feed-shaped metadata and to link elements advertising RSS or Atom feeds; requests that do not parse still distinguish reachable ports from unreachable ones through the resulting error.

Executive Summary

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Executive Summary Locked

Sign up to unlock professional threat analysis, mitigations, and indicator signatures.

Technical Details

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Detailed Technical Analysis Locked

Sign up to unlock professional threat analysis, mitigations, and indicator signatures.

Mitigations

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Remediation & Mitigations Locked

Sign up to unlock professional threat analysis, mitigations, and indicator signatures.

References

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Intelligence References Locked

Sign up to unlock professional threat analysis, mitigations, and indicator signatures.

Additional Metadata

{
  "score": "5.0",
  "pubDate": "2026-08-20T11:16:22.100Z",
  "pubdate": "2026-08-20T11:16:22.100Z",
  "executiveSummary": "A Server-Side Request Forgery vulnerability exists within the scanFeedsResolver function located in packages/api/src/resolvers/subscriptions/index.ts.\nThe flaw permits an authenticated user to coerce the server into issuing arbitrary HTTP GET requests to internal and external endpoints via axios.get(url, rssParserConfig()) without proper address validation.\nWhile other pathways such as the subscribe path and createPageSaveRequest incorporate validateUrl() checks utilizing the private-ip library to reject private and reserved ranges, this specific resolver omits such validation.\nThe impact includes internal service discovery through distinct error behaviors distinguishing reachable versus unreachable ports, alongside limited information disclosure via parsed feed-shaped metadata and link elements advertising RSS or Atom feeds.\nExploitation requires authentication and relies on the server processing caller-supplied URLs through the vulnerable subscription resolver.\nThe risk implications involve unauthorized internal network reconnaissance and potential exposure of sensitive internal service metadata.",
  "technicalDetails": "The vulnerability stems from an input validation omission in the scanFeedsResolver function defined within packages/api/src/resolvers/subscriptions/index.ts.\nThe root cause is the direct passing of a caller-supplied url parameter into the axios.get(url, rssParserConfig()) method without implementing requisite URL safety checks.\nUnlike the subscribe path and createPageSaveRequest in the same file, which correctly employ validateUrl() utilizing the private-ip library to block private, loopback, and reserved IP ranges, scanFeedsResolver lacks these protective controls.\nAn authenticated attacker can supply arbitrary internal or external URLs to the resolver, forcing the server to initiate network requests on their behalf.\nUpon execution, the payload behavior involves axios retrieving the target resource, which is subsequently parsed as a feed or HTML document.\nThe resolver then extracts and returns specific fields including url, title, description, and type.\nInformation disclosure is restricted to feed-shaped metadata and link elements advertising RSS or Atom feeds; however, unparseable responses still allow attackers to infer port states by differentiating error responses between reachable and unreachable internal ports, enabling network port scanning.\nPrerequisites for exploitation include an active authenticated session to access the vulnerable resolver endpoint and network exposure allowing the application to reach internal services."
}
CVE-2026-77066: Server-Side Request Forgery in scanFeedsResolver (MEDIUM Severity, CVSS: 5.0) - Sceawere