CVE-2021-43820: Permissions check bypass in Seafile
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.
Affected Software
Remediation
Patch Available
Event History
Frequently Asked Questions
What is CVE-2021-43820?
CVE-2021-43820 is a vulnerability in the Seafile file syncing protocol that allows unauthorized access to library data.
Which versions of Seafile Server are affected by CVE-2021-43820?
Seafile Server versions up to 8.0.8 (Community Edition) and up to 8.0.15 (Professional Edition), as well as versions 9.0.0 to 9.0.2 (Community Edition) are affected by CVE-2021-43820.
What is the severity of CVE-2021-43820?
CVE-2021-43820 has a severity rating of 5.9, which is considered high.
How can unauthorized access be prevented in Seafile Server?
To prevent unauthorized access in Seafile Server, it is recommended to apply the appropriate security updates and patches provided by the Seafile team.
Are there any references for more information about CVE-2021-43820?
Yes, you can find more information about CVE-2021-43820 at the following references: [GitHub PR](https://github.com/haiwen/seafile-server/pull/520) and [GitHub Security Advisory](https://github.com/haiwen/seafile-server/security/advisories/GHSA-m3wc-jv6r-hvv8).