Bird
Raised Fist0
Operating Systemsknowledge~20 mins

Capability-based security in Operating Systems - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Capability Security Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
2:00remaining
What is the primary purpose of capability-based security?

Capability-based security is a model used in operating systems and software design. What is its main goal?

ATo control access by associating unforgeable tokens with permissions
BTo encrypt all data stored on a device
CTo authenticate users using passwords only
DTo monitor network traffic for suspicious activity
Attempts:
2 left
💡 Hint

Think about how access rights are given and checked in capability systems.

📋 Factual
intermediate
2:00remaining
Which of the following best describes a capability in capability-based security?

Choose the option that correctly defines a capability.

AA password used to log into a system
BA list of all users in a system
CA firewall rule blocking unauthorized access
DA key or token that grants specific access rights to an object
Attempts:
2 left
💡 Hint

Capabilities are related to permissions and access control.

🔍 Analysis
advanced
2:00remaining
How does capability-based security differ from traditional access control lists (ACLs)?

Consider the differences between capability-based security and ACLs. Which statement correctly highlights a key difference?

ACapabilities are stored with the object, while ACLs are stored with the user
BCapabilities are unforgeable tokens held by users, while ACLs list permissions attached to objects
CACLs allow delegation of rights easily, capabilities do not
DACLs require encryption, capabilities do not
Attempts:
2 left
💡 Hint

Think about where permissions are stored and how they are checked.

❓ Reasoning
advanced
2:00remaining
Why are capabilities considered unforgeable in capability-based security systems?

What makes capabilities unforgeable, ensuring security in capability-based systems?

AThey are stored in a public database accessible to all users
BThey are simple strings that users can copy freely
CThey are encrypted with a secret key only the system knows
DThey are printed on paper and physically handed out
Attempts:
2 left
💡 Hint

Consider how the system prevents users from creating fake capabilities.

🚀 Application
expert
2:00remaining
In a capability-based system, if a user wants to delegate access to a file to another user, what must they do?

Given a capability-based security model, how does a user safely delegate access rights to another user?

AThey must copy and securely transfer the capability token to the other user
BThey must add the other user to the file's access control list
CThey must share their password with the other user
DThey must request the system administrator to grant access
Attempts:
2 left
💡 Hint

Think about how capabilities represent access and how they can be passed.

Practice

(1/5)
1. What is the main idea behind capability-based security?
easy
A. Access is controlled only by usernames and passwords
B. Permissions are granted randomly to users
C. Security is based on firewall rules only
D. Users or programs get tokens that directly grant permissions

Solution

  1. Step 1: Understand capability-based security concept

    It means giving users or programs special tokens that say what they can do.
  2. Step 2: Compare with other methods

    Unlike passwords or firewalls, capability tokens directly grant permission.
  3. Final Answer:

    Users or programs get tokens that directly grant permissions -> Option D
  4. Quick Check:

    Capability tokens = direct permission [OK]
Hint: Focus on tokens that grant direct access [OK]
Common Mistakes:
  • Confusing capability tokens with passwords
  • Thinking security is only about firewalls
  • Believing permissions are random
2. Which of the following is a correct way to describe a capability in capability-based security?
easy
A. A token that grants specific access rights
B. A password string stored in a file
C. A firewall rule blocking IP addresses
D. A username used for login

Solution

  1. Step 1: Define what a capability is

    A capability is a token that grants specific access rights to a resource.
  2. Step 2: Eliminate incorrect options

    Passwords, firewall rules, and usernames are not capabilities.
  3. Final Answer:

    A token that grants specific access rights -> Option A
  4. Quick Check:

    Capability = access token [OK]
Hint: Remember capability means access token, not password [OK]
Common Mistakes:
  • Mixing capabilities with passwords
  • Thinking firewall rules are capabilities
  • Confusing usernames with capabilities
3. Consider a system where a program holds a capability token allowing it to read a file. What happens if the program tries to write to the file?
medium
A. The write operation fails because the capability only allows reading
B. The write operation succeeds because the program has access
C. The system asks the user for permission
D. The file is deleted automatically

Solution

  1. Step 1: Understand capability permissions

    Capabilities specify exact rights, here only read permission is given.
  2. Step 2: Predict system behavior on unauthorized action

    Trying to write without write permission causes failure.
  3. Final Answer:

    The write operation fails because the capability only allows reading -> Option A
  4. Quick Check:

    Capability limits action to allowed rights [OK]
Hint: Check if capability includes the requested permission [OK]
Common Mistakes:
  • Assuming any access means all actions allowed
  • Thinking system prompts user for permission
  • Believing unauthorized actions delete files
4. A program tries to use a capability token but gets an error. Which of these is the most likely cause?
medium
A. The user forgot their password
B. The capability token was revoked or expired
C. The system has no internet connection
D. The program has too many tokens

Solution

  1. Step 1: Identify common reasons for capability errors

    Revoked or expired tokens cause access errors.
  2. Step 2: Eliminate unrelated causes

    Too many tokens, internet issues, or user passwords do not affect capability token validity.
  3. Final Answer:

    The capability token was revoked or expired -> Option B
  4. Quick Check:

    Revoked/expired token = error cause [OK]
Hint: Check if token is still valid before use [OK]
Common Mistakes:
  • Blaming network issues for capability errors
  • Thinking password affects capability tokens
  • Assuming token count causes errors
5. In a capability-based system, how can you safely share access to a resource with another program without giving full control?
hard
A. Allow the other program to run as administrator
B. Share your password with the other program
C. Give the other program a capability token with limited permissions
D. Disable all security checks temporarily

Solution

  1. Step 1: Understand safe sharing in capability systems

    Sharing limited permission tokens lets others access only what you allow.
  2. Step 2: Avoid unsafe methods

    Sharing passwords, admin rights, or disabling security risks full control and breaches.
  3. Final Answer:

    Give the other program a capability token with limited permissions -> Option C
  4. Quick Check:

    Limited capability token = safe sharing [OK]
Hint: Share only limited tokens, never passwords or full rights [OK]
Common Mistakes:
  • Sharing passwords instead of tokens
  • Granting full admin rights unnecessarily
  • Turning off security checks
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard