Missing Functional Level Access Control: OWASP Web App Top 10
Missing Functional Level Access Control: OWASP Web App Top 10
Access Control
OWASP Web App Top 10
What is it?
“Missing Functional Level
Access Control” occurs
when users can perform
functions they have not
been authorized for or
when resources can be What causes it?
accessed by unauthorized
Functional level access control is
users.
missing when access checks have
not been implemented or when a
protection mechanism exists but is
not properly configured.
What could happen?
An attacker could forge requests
in order to access functionality
without proper authorization. An
attacker could gain access to the
administrative panel of your
application. An employee from the How to prevent it?
sales department could view
Protect all business functions using a role
information from the financial
based authorization mechanism, server
department.
side. Authorization should be
implemented using centralized
authorization routines. Deny access by
default.
Missing Functional Level Access Control
Understanding the security vulnerability
https://site.com/app/priv_statuspag
e
https://site.com/app/adm_statuspage
https://site.com/app/admin_statuspage
Missing Functional Level Access Control
Understanding the security vulnerability
An attacker is an Knowing the framework, the Since the ‘createUser’ function The attacker logs in
authenticated user of attacker crafts a request to is not properly protected by using the credentials
a site. The site uses a create a new user with control checks, the request of the newly created
popular framework. elevated permissions. succeeds and a new user is admin user. He steals
created. all the customer data.
POST /action/createUser
…
name=attacker&pw=3GYT!6&role=admin
User ‘attacker’
created.
Login: attacker, password: 3GYT!6
Welcome ‘attacker’!
Missing Functional Level Access Control
Realizing the impact