Moby is an open-source project created by Docker to enable software containerization. A bug was found in Moby (Docker Engine) where supplementary groups are not set up properly. If an attacker has direct access to a container and manipulates their supplementary group access, they may be able to use supplementary group access to bypass primary group restrictions in some cases, potentially gaining access to sensitive information or gaining the ability to execute code in that container. This bug is fixed in Moby (Docker Engine) 20.10.18. Running containers should be stopped and restarted for the permissions to be fixed. For users unable to upgrade, this problem can be worked around by not using the USER $USERNAME
Dockerfile instruction. Instead by calling ENTRYPOINT [su, -, user]
the supplementary groups will be set up properly.
The product performs an authorization check when an actor attempts to access a resource or perform an action, but it does not correctly perform the check. This allows attackers to bypass intended access restrictions.
Name | Vendor | Start Version | End Version |
---|---|---|---|
Moby | Mobyproject | * | 20.10.18 (excluding) |
Docker.io | Ubuntu | bionic | * |
Docker.io | Ubuntu | esm-apps/xenial | * |
Docker.io | Ubuntu | focal | * |
Docker.io | Ubuntu | jammy | * |
Docker.io | Ubuntu | kinetic | * |
Docker.io | Ubuntu | trusty | * |
Docker.io | Ubuntu | upstream | * |
Docker.io | Ubuntu | xenial | * |
Assuming a user with a given identity, authorization is the process of determining whether that user can access a given resource, based on the user’s privileges and any permissions or other access-control specifications that apply to the resource. When access control checks are incorrectly applied, users are able to access data or perform actions that they should not be allowed to perform. This can lead to a wide range of problems, including information exposures, denial of service, and arbitrary code execution.