Jump into concepts and practice - no test required
or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is a container in the context of cybersecurity?
A container is a lightweight, standalone package that includes an application and all its dependencies, allowing it to run consistently across different computing environments.
Click to reveal answer
beginner
Why is container security important?
Container security is important because containers share the host system's kernel, so vulnerabilities can affect the entire system if not properly secured.
Click to reveal answer
intermediate
Name one common security risk associated with containers.
One common risk is running containers with excessive privileges, which can allow attackers to escape the container and access the host system.
Click to reveal answer
intermediate
What is the role of container image scanning?
Container image scanning checks for known vulnerabilities and misconfigurations in container images before deployment to prevent security issues.
Click to reveal answer
intermediate
How does using minimal base images improve container security?
Minimal base images reduce the attack surface by including only essential components, lowering the chance of vulnerabilities.
Click to reveal answer
What does a container share with the host system?
AThe entire file system
BThe operating system kernel
CThe user interface
DThe hardware drivers
✗ Incorrect
Containers share the host system's operating system kernel but have isolated user spaces.
Which practice helps reduce container security risks?
AUsing minimal base images
BRunning containers as root user
CDisabling image scanning
DSharing containers between users
✗ Incorrect
Using minimal base images reduces the attack surface and improves security.
What is container image scanning used for?
ATo speed up container startup
BTo increase container size
CTo check for vulnerabilities
DTo share images publicly
✗ Incorrect
Image scanning detects vulnerabilities and misconfigurations before deployment.
What can happen if a container runs with excessive privileges?
AIt runs faster
BIt becomes invisible to attackers
CIt uses less memory
DIt can escape and affect the host system
✗ Incorrect
Excessive privileges can allow attackers to break out of the container and access the host.
Which of these is NOT a container security best practice?
AIgnoring vulnerability reports
BRegularly updating container images
CRunning containers with least privilege
DUsing trusted image sources
✗ Incorrect
Ignoring vulnerability reports increases security risks and is not recommended.
Explain why container security is critical and list two common risks.
Think about how containers share resources and what can go wrong.
You got /4 concepts.
Describe three best practices to improve container security.
Focus on reducing risks and preventing attacks.
You got /3 concepts.
Practice
(1/5)
1. What is the main reason containers need special security measures?
easy
A. Containers automatically encrypt all data without configuration
B. Containers are always offline and isolated from networks
C. Containers do not run any applications
D. Containers share the host OS, so vulnerabilities can affect the whole system
Solution
Step 1: Understand container architecture
Containers share the host operating system kernel, unlike virtual machines which have separate OS instances.
Step 2: Identify security risk from shared OS
Because containers share the OS, a vulnerability in one container can potentially affect others or the host.
Final Answer:
Containers share the host OS, so vulnerabilities can affect the whole system -> Option D
Quick Check:
Shared OS = Need special security [OK]
Hint: Remember: shared OS means shared risk [OK]
Common Mistakes:
Thinking containers are fully isolated like virtual machines
Assuming containers do not run apps
Believing containers encrypt data by default
2. Which of the following is the correct command to scan a Docker container image for vulnerabilities?
easy
A. docker push <image_name>
B. docker scan <image_name>
C. docker run <image_name>
D. docker build <image_name>
Solution
Step 1: Identify scanning command
The docker scan command is used to check container images for known security issues.
Step 2: Differentiate from other commands
docker build creates images, docker run starts containers, and docker push uploads images to a registry.
Final Answer:
docker scan <image_name> -> Option B
Quick Check:
Scan command = docker scan [OK]
Hint: Scan images with 'docker scan' command [OK]
Common Mistakes:
Confusing build or run commands with scanning
Using push command to scan images
Not specifying image name with scan
3. Consider this Dockerfile snippet:
FROM alpine:latest
RUN apk add --no-cache curl
CMD ["curl", "http://example.com"]
What is the main security risk in this container setup?
medium
A. The CMD command is incorrect syntax
B. Alpine Linux is not supported for containers
C. Using the latest tag can introduce untested vulnerabilities
D. The container does not expose any ports
Solution
Step 1: Analyze the use of 'latest' tag
Using 'latest' means the image can change over time, possibly introducing new vulnerabilities without notice.
Step 2: Check other options for correctness
CMD syntax is correct, Alpine is a common lightweight base image, and not exposing ports is not a risk itself.
Final Answer:
Using the latest tag can introduce untested vulnerabilities -> Option C
Quick Check:
Latest tag = potential risk [OK]
Hint: Avoid 'latest' tag for stable security [OK]
Common Mistakes:
Thinking CMD syntax is wrong
Believing Alpine is insecure by default
Assuming no exposed ports means no risk
4. You have a container running with root privileges. Which change improves security the most?
medium
A. Run the container as a non-root user
B. Increase the container's CPU limits
C. Add more environment variables
D. Use the host network mode
Solution
Step 1: Understand privilege risks
Running containers as root can allow attackers to gain full control if compromised.
Step 2: Identify best security practice
Running as a non-root user limits permissions and reduces damage from attacks.
Final Answer:
Run the container as a non-root user -> Option A
Quick Check:
Non-root user = better security [OK]
Hint: Never run containers as root user [OK]
Common Mistakes:
Thinking CPU limits improve security
Adding environment variables does not secure
Using host network mode increases risk
5. You want to securely store API keys inside a container without exposing them in the image or logs. Which approach is best?
hard
A. Use Docker secrets or environment variables managed outside the image
B. Hardcode the keys in the Dockerfile
C. Print keys in container logs for easy access
D. Store keys in a public GitHub repository
Solution
Step 1: Identify secure secret management
Docker secrets or environment variables injected at runtime keep keys out of images and logs.
Step 2: Evaluate insecure options
Hardcoding keys, logging them, or storing publicly exposes secrets to attackers.
Final Answer:
Use Docker secrets or environment variables managed outside the image -> Option A