Seafile is an open source cloud storage system. A sync token is used in Seafile file syncing protocol to authorize access to library data. To improve performance, the token is cached in memory in seaf-server. Upon receiving a token from sync client or SeaDrive client, the server checks whether the token exist in the cache. However, if the token exists in cache, the server doesn't check whether it's associated with the specific library in the URL. This vulnerability makes it possible to use any valid sync token to access data from any **known** library. Note that the attacker has to first find out the ID of a library which it has no access to. The library ID is a random UUID, which is not possible to be guessed. There are no workarounds for this issue.
References
Link | Resource |
---|---|
https://github.com/haiwen/seafile-server/security/advisories/GHSA-m3wc-jv6r-hvv8 | Third Party Advisory |
https://github.com/haiwen/seafile-server/pull/520 | Patch Third Party Advisory |
Configurations
Configuration 1 (hide)
|
Information
Published : 2021-12-14 11:15
Updated : 2021-12-21 09:17
NVD link : CVE-2021-43820
Mitre link : CVE-2021-43820
JSON object : View
CWE
CWE-639
Authorization Bypass Through User-Controlled Key
Products Affected
seafile
- seafile_server