Skip to content

GHSA-65fm-2jgr-j7qq CVE-2024-29030 GO-2024-3046

memos vulnerable to Server-Side Request Forgery in /api/resource

Medium Go
Severity
0.0 / 10
Medium · CVSS 4.0
Exploit chance (EPSS)
1.14%
Chance of exploitation in the next 30 days. Higher than 66.51% of scored vulnerabilities.
Known exploited
No
Not in CISA's catalog
Weakness
CWE-918 Server-Side Request Forgery (SSRF)
Fix
0.22.0
Upgrade github.com/usememos/memos to this version or later

Description

memos is a privacy-first, lightweight note-taking service. In memos 0.13.2, an SSRF vulnerability exists at the /api/resource that allows authenticated users to enumerate the internal network. Version 0.22.0 of memos removes the vulnerable file.

Affected versions

Go

PackageVulnerableFixed in
github.com/usememos/memos
< 0.22.0
0.22.0

How to fix

Move to the fixed version or later with your package manager, update the lockfile, and run your tests. If the package only arrives through another dependency, upgrade that dependency first. If none of its releases pulls a fixed version yet, force the version with your package manager's override.

github.com/usememos/memos Go → 0.22.0

go
go get github.com/usememos/memos@v0.22.0 && go mod tidy

Severity breakdown

CVSS 4.0 0.0

CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Attack vector
Network
Attack complexity
Low
Attack requirements
None
Privileges required
None
User interaction
None
Confidentiality (vulnerable system)
Low
Integrity (vulnerable system)
None
Availability (vulnerable system)
None
Confidentiality (subsequent systems)
None
Integrity (subsequent systems)
None
Availability (subsequent systems)
None

CVSS 3.1 5.8

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:N/A:N

Attack vector
Network
Attack complexity
Low
Privileges required
None
User interaction
None
Scope
Changed
Confidentiality
Low
Integrity
None
Availability
None

Weakness

CWE-918: Server-Side Request Forgery (SSRF)

The web server 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.

References

Timeline

  1. Published
  2. Last updated by the source
  3. Latest EPSS score
AdvisorySeverityWhy it's related
GHSA-gqp3-hfc3-8q54
Memos has an Incorrect Privilege Assignment issue
Medium Also affects github.com/usememos/memos
GHSA-qgjp-5g5x-vhq2
memos lacks file name validation or verification
Medium Also affects github.com/usememos/memos
GHSA-99m2-qwx6-2w6f
memos vulnerability allows arbitrarily modification or deletion registered identity providers
Medium Also affects github.com/usememos/memos
GHSA-mg56-wc4q-rw4w
memos vulnerability allows the creation of arbitrary accounts
High Also affects github.com/usememos/memos
GHSA-8p44-g572-557h
memos vulnerability allows arbitrarily modification or deletion of attachments
Medium Also affects github.com/usememos/memos
GHSA-8jcj-g9f4-qx42
memos vulnerability allows arbitrarily reactions deletion
Medium Also affects github.com/usememos/memos
GHSA-mr34-8733-grr2
Memos' Access Tokens Stay Valid after User Password Change
High Also affects github.com/usememos/memos
GHSA-cgrg-86m5-xm4w
Memos Vulnerable to Stored Cross-Site Scripting
Medium Also affects github.com/usememos/memos
Is this in your code?

MergeHarbor checks every repository's dependencies against this database, ranks what matters by exploitability and reachability, routes it to the owning team and opens the fix pull request.

Check your repos with MergeHarbor