Excessive Privileges - Docker
Description
The containers executed in the application do not properly restrict the privileges of the users, executing tasks with root user instead of a custom user.
Impact
Gain total control of the container.
Recommendation
- Restrict the privileges of the user that execute instructions inside the container.
- Avoid the use of the root user as default user.
Threat
Authenticated attacker with local access to the container.
Expected Remediation Time
⌚ 15 minutes.
Score
Default score using CVSS 3.1. It may change depending on the context of the vulnerability.
Base
- Attack vector: L
- Attack complexity: L
- Privileges required: L
- User interaction: N
- Scope: U
- Confidentiality: L
- Integrity: L
- Availability: L
Temporal
- Exploit code madurity: P
- Remediation level: O
- Report confidence: C
Result
- Vector string: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L/E:P/RL:O/RC:C
- Score:
- Base: 5.3
- Temporal: 4.8
- Severity:
- Base: Medium
- Temporal: Medium
Code Examples
Compliant code
The containers have specific user configurations to restrict access and ensuring running as non-root
FROM ubuntu:[email protected]:3235326357dfb65f1781dbc4df3b834546d8bf914e82cce58e6e6b676e23 AS ubuntu
ARG DEBIAN_FRONTEND=noninteractive
RUN useradd -ms /bin/bash newuser
USER newuser
RUN apt update
RUN apt install -y nginx php-fpm supervisor && \
rm -rf /var/lib/apt/lists/* && \
apt clean
Non compliant code
The container is insecurely configured. There is no command to create a group or user
FROM ubuntu:[email protected]:3235326357dfb65f1781dbc4df3b834546d8bf914e82cce58e6e6b676e23 AS ubuntu
ARG DEBIAN_FRONTEND=noninteractive
RUN apt update
RUN apt install -y nginx php-fpm supervisor && \
rm -rf /var/lib/apt/lists/* && \
apt clean
Details
https://docs.docker.com/engine/reference/builder/#user
Requirements
- 095. Define users with privileges
- 096. Set user's required privileges
- 186. Use the principle of least privilege
Search for vulnerabilities in your apps for free with our automated security testing! Start your 21-day free trial and discover the benefits of our Continuous Hacking Machine Plan. If you prefer a full service that includes the expertise of our ethical hackers, don't hesitate to contact us for our Continuous Hacking Squad Plan.