CVEReports
CVEReports

Automated vulnerability intelligence platform. Comprehensive reports for high-severity CVEs generated by AI.

Product

  • Home
  • Sitemap
  • RSS Feed

Company

  • About
  • Contact
  • Privacy Policy
  • Terms of Service

© 2026 CVEReports. All rights reserved.

Made with love by Amit Schendel & Alon Barad



GHSA-7RX4-C5VX-G8W3

GHSA-7RX4-C5VX-G8W3: Server-Side Request Forgery Bypass in Karakeep Metadata Extraction Workers

Alon Barad
Alon Barad
Software Engineer

May 14, 2026·5 min read·9 visits

Executive Summary (TL;DR)

Karakeep workers are vulnerable to SSRF via the metascraper-logo-favicon plugin, which autonomously probes internal network resources during HTML parsing.

A critical Server-Side Request Forgery (SSRF) vulnerability exists in the Karakeep metadata extraction process prior to version 0.32.0. The flaw allows attackers to bypass primary URL validation and target internal network resources or cloud metadata services via crafted webpage metadata.

Vulnerability Overview

Karakeep provides URL bookmarking capabilities that rely on worker processes to extract metadata from submitted links. These worker processes handle external resources asynchronously to improve application performance and parse rich media content.

The application utilizes the metascraper library to identify and extract data from HTML documents. Specifically, the metascraper-logo-favicon plugin processes the target page to locate icon assets suitable for display within the user interface.

A Server-Side Request Forgery (CWE-918) vulnerability exists in this extraction pipeline due to secondary HTTP requests generated by the plugin. These secondary requests bypass the primary URL validation mechanisms implemented by the core application.

Attackers exploit this flaw by supplying a malicious external URL that passes initial system checks. The worker process subsequently fetches unvalidated internal resources during the metadata extraction phase, allowing unauthorized network reconnaissance.

Root Cause Analysis

The vulnerability stems from the default behavior of the metascraper-logo-favicon plugin when evaluating discovered assets. Upon parsing an HTML document, the plugin actively scans for <link rel="icon"> and <link rel="apple-touch-icon"> attributes.

To ensure the extracted icon is a valid image file, the plugin relies on a dependency called reachable-url. This library invokes the got HTTP client to perform active HTTP GET or HEAD requests against the discovered icon URLs.

These verification requests originate from a subprocess named parseHtmlSubprocess.ts. This execution environment operates independently of Karakeep's primary validateUrl function and its secure proxy infrastructure.

The underlying got client within the subprocess lacks network protections such as IP blocklists, loopback restrictions, or egress proxy enforcement. The system processes any URL embedded in the HTML body as a trusted input for these secondary network calls.

Exploitation Methodology

Exploitation requires the attacker to control an external web server and possess the ability to submit URLs to the Karakeep bookmarking service. Authentication prerequisites depend strictly on the deployment configuration of the target application.

The attacker constructs a malicious webpage hosted on their external server. The HTML response contains standard tags but includes a crafted <link rel="icon"> attribute pointing to an internal IP address or a sensitive cloud metadata endpoint.

The attacker submits the URL of the malicious webpage to Karakeep. The main application evaluates the external URL, confirms it resolves to a public IP address, and forwards the task to the worker process.

The worker process retrieves the malicious webpage and parses the Document Object Model (DOM). The metascraper plugin identifies the crafted icon link and initiates an internal HTTP request to verify the resource, finalizing the SSRF execution.

Impact Assessment

Successful exploitation grants the attacker unauthorized read access to internal network resources. The vulnerability facilitates horizontal movement and network reconnaissance specifically from the perspective of the worker node.

In cloud-hosted environments, attackers frequently target the Instance Metadata Service (IMDS). A crafted URL pointing to http://169.254.169.254/latest/meta-data/ forces the worker to return sensitive infrastructure details or temporary identity and access management (IAM) credentials.

Attackers utilize the vulnerability to probe local services bound to 127.0.0.1. This enables interaction with unauthenticated administrative interfaces, local caching services, or internal databases running concurrently on the worker host.

The practical severity correlates directly with the network placement of the worker process. Worker instances operating without strict egress filtering present the highest risk of internal exploitation and data exfiltration.

Remediation and Code Analysis

The remediation strategy eliminates the secondary network probe entirely, shifting fetch responsibility back to the secure core application. Karakeep developers implemented a custom wrapper, metascraperSafeFavicon, in Pull Request #2763.

This wrapper overrides the default resolveFaviconUrl function provided by the metascraper-logo-favicon plugin. The new implementation parses the URL string and enforces protocol restrictions without executing arbitrary HTTP requests.

async function resolveSafeFaviconUrl(
  faviconUrl: string,
): Promise<FaviconResolution | undefined> {
  let url: URL;
  try {
    url = new URL(faviconUrl);
  } catch {
    return undefined;
  }
  // Ensure protocol is safe, preventing file:// or dict:// SSRF schemes
  if (url.protocol !== "http:" && url.protocol !== "https:") {
    return undefined;
  }
  // Return the URL string directly without fetching/probing it
  return { url: url.toString() };
}

The patched logic validates that the protocol is strictly http: or https:. Once validated, the system returns the URL string, delegating the actual fetch operation to the main application's hardened fetchWithProxy function.

Upgrading to Karakeep version v0.32.0 completely resolves the vulnerability. Administrators operating earlier versions must enforce strict network egress policies on worker nodes to restrict access to internal IP spaces and cloud metadata endpoints.

Official Patches

KarakeepFix Pull Request #2763
KarakeepKarakeep v0.32.0 Release

Fix Analysis (1)

Technical Appendix

CVSS Score
8.6/ 10
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N

Affected Systems

Karakeep Worker Processesmetascraper-logo-favicon plugin

Affected Versions Detail

Product
Affected Versions
Fixed Version
Karakeep
Karakeep
< 0.32.00.32.0
AttributeDetail
CWE IDCWE-918
Attack VectorNetwork
CVSS8.6 (High)
ImpactInformation Disclosure / Internal Network Access
Exploit StatusPoC Available
Fixed Versionv0.32.0

MITRE ATT&CK Mapping

T1190Exploit Public-Facing Application
Initial Access
T1040Network Sniffing
Discovery
CWE-918
Server-Side Request Forgery (SSRF)

The web application receives a URL or similar request from an upstream component and retrieves the contents of this URL, but it does not sufficiently ensure that the request is being sent to the expected destination.

Vulnerability Timeline

Fix committed to Karakeep repository
2024-05-06

References & Sources

  • [1]GHSA-7RX4-C5VX-G8W3 Security Advisory
  • [2]karakeep-app/karakeep PR #2763
  • [3]Fix Commit 3dc321e7
  • [4]Karakeep v0.32.0 Release

Attack Flow Diagram

Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.
Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.

More Reports

•about 6 hours ago•CVE-2026-50751
9.3

CVE-2026-50751: Authentication Bypass in Check Point Security Gateway IKEv1 Legacy Validation

An improper authentication vulnerability (CWE-287) exists in the legacy, deprecated Internet Key Exchange version 1 (IKEv1) key exchange protocol implementation in Check Point Security Gateways. The vulnerability is caused by a logic flow weakness during the certificate validation process for Remote Access VPN and Mobile Access (SSL VPN) connections. An unauthenticated remote attacker can exploit this weakness to bypass user authentication entirely, establishing a fully functional Remote Access VPN connection without a valid password.

Alon Barad
Alon Barad
33 views•6 min read
•about 20 hours ago•CVE-2026-39922
6.3

CVE-2026-39922: Server-Side Request Forgery in GeoNode Service Registration Endpoint

GeoNode versions prior to 4.4.5 and 5.0.2 are vulnerable to Server-Side Request Forgery (SSRF) in the service registration endpoint. Authenticated attackers with low privileges can exploit insufficient input validation in the Web Map Service (WMS) registration module to force the application server to make outbound network queries to loopback addresses, private RFC1918 subnets, link-local scopes, and cloud metadata endpoints. This technical report details the mechanics of the vulnerability, the underlying architectural flaw, and how to effectively remediate and mitigate the associated security risks.

Alon Barad
Alon Barad
4 views•7 min read
•1 day ago•CVE-2022-0492
7.8

CVE-2022-0492: Privilege Escalation and Container Escape via cgroups v1 release_agent

CVE-2022-0492 is a high-severity missing authorization vulnerability in the Linux kernel's Control Groups (cgroups) v1 implementation. The flaw resides within the cgroup_release_agent_write function in kernel/cgroup/cgroup-v1.c, where the kernel fails to validate if the process writing to the release_agent file possesses administrative capabilities in the initial user namespace. This allows a local attacker inside a container with root privileges (UID 0) to abuse user namespaces, mount a cgroups v1 directory, modify the release_agent parameter, and execute arbitrary commands on the host system as host root, effectively achieving a complete container escape.

Amit Schendel
Amit Schendel
12 views•7 min read
•3 days ago•GHSA-G72G-R7M4-9X4G
6.3

GHSA-G72G-R7M4-9X4G: Insufficient Session Expiration of OAuth Tokens in NocoDB

NocoDB is subject to an insufficient session expiration vulnerability where OAuth access and refresh tokens are not invalidated or revoked during security-sensitive actions such as password changes, forgot-password requests, or password resets. This allows an attacker possessing an active OAuth token to maintain unauthorized persistence.

Amit Schendel
Amit Schendel
12 views•6 min read
•3 days ago•GHSA-FGMC-2HQJ-86V4
6.9

GHSA-FGMC-2HQJ-86V4: Default Administrative Credentials in vantage6-server

A vulnerability in the vantage6 federated learning framework allows unauthenticated remote attackers to gain administrative control of the server via hardcoded default credentials (root/root) when deployed under default configurations in versions 4.2.3 and below.

Amit Schendel
Amit Schendel
8 views•5 min read
•3 days ago•GHSA-X9F6-9RVM-MMRG
6.9

GHSA-X9F6-9RVM-MMRG: Improper Access Control and Volume Mount Isolation Bypass in vantage6 Node

An improper access control vulnerability in the vantage6 node component allows concurrently running algorithm containers to read and modify sensitive input and output files of other tasks. The lack of strict workspace directory isolation exposes a significant attack surface in multi-tenant or federated environments where untrusted algorithms are executed.

Amit Schendel
Amit Schendel
4 views•4 min read