Impact
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.
Patches
This vulnerability is fixed in #520 . It's fixed in version Community Edition 8.0.8, Pro Edition 8.0.15 and Community Edition 9.0.2.
Workarounds
There is no workarounds except for an upgrade.
For more information
If you have any questions or comments about this advisory:
Impact
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.
Patches
This vulnerability is fixed in #520 . It's fixed in version Community Edition 8.0.8, Pro Edition 8.0.15 and Community Edition 9.0.2.
Workarounds
There is no workarounds except for an upgrade.
For more information
If you have any questions or comments about this advisory: