Detecting Privilege Escalation Vulnerabilities in Web Applications

Detecting Privilege Escalation Vulnerabilities in Web Applications
Slide Note
Embed
Share

Web applications often face disastrous consequences due to authorization errors, leading to data breaches. Understand why these errors occur, such as lack of built-in support for access control, flawed logic, and improper role implementations. Learn from the methodology, results, and conclusions of the MACE study focused on detecting and addressing privilege escalation vulnerabilities.

  • Web Applications
  • Security Threats
  • Authorization Errors
  • Data Breaches
  • Access Control

Uploaded on Feb 19, 2025 | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.

E N D

Presentation Transcript


  1. MACE: Detecting Privilege Escalation Vulnerabilities in Web Applications Maliheh Monshizadeh, University of Chicago Prasad Naldurg, IBM Research India V.N. Venkatakrishnan, University of Chicago Presented by: Michelle Beach

  2. Agenda Introduction Context Contributions of MACE Methodology Results Conclusion

  3. Introduction APOGEE Student Master of Science in Software Engineering Cyber Certificate Program Graduate in December (Yay!) UI/UX Developer Backup and DR

  4. Web Applications are Appealing Targets

  5. Access Control Web applications incorporate access control policies as protection against security threats. Typically RBAC Verify whether authenticated user with an associated role has the required privilege to access a given resource such as a database table Authorization is expected to be performed before every resource access.

  6. Disastrous Consequences Several high-profile data breaches as a result of authentication errors Citibank 360K credit card numbers Target 40 million stolen credit and debit cards 70 million records of personal Target customer data U.S. Emergency Alert System (EAS) Zombies are taking over

  7. Why do Authorization Errors Occur? No built-in support for access control Policy is often written in by developers Often focus on other functionality other than security Often make errors in implementing authorization code

  8. Why do Authorization Errors Occur? Direct connection to database Superusers enjoy all administrative privileges on the database Flaws in logic often lead to catastrophic data breaches

  9. Why do Authorization Errors Occur? Improper implementation of roles Web developers often implement roles as a solution to privilege management No standard framework Lack of knowledge of access control design Buggy and inconsistent role implementation in applications

  10. Academic and Industrial Solutions Virtual Private Databases Provide a way for applications to execute queries on behalf of users Effective privilege separation Web Application Frameworks Rails Provide solutions to structure access control logic effectively

  11. Vulnerability Analysis Open source applications come with virtually no documentation regarding access control policies Must inspect source for missing or inconsistent authorization policies Significant manual effort Time consuming Tedious

  12. MACE Automated solution identifies authorization errors Identifies whether an application enforces its authorization policy consistently Examine whether it enforces the same authorization rules for access to a resource by the same principal

  13. Methodology Authorization Context Associated with every program point in the application Authorization Context Consistency Application uses the same Authorization Context in order to access the same resource along different paths in an application Access Control Violation Mismatch in Authorization Context along two different paths

  14. Mining Access Control Errors (MACE) Set of algorithms to compute authorization contexts and to check for authorization context consistency Variety of analysis techniques including control flow analysis, data flow analysis, and symbolic evaluation

  15. Mining Access Control Errors (MACE) Two kinds of privilege escalation vulnerabilities Vertical Privilege Escalation (VPE): conventional, attacker tries to change privilege level to obtain more access than they are entitled to according to their role Horizontal Privilege Escalation (HPE): attacker tries to access resources of other users

  16. Mining Access Control Errors (MACE) Designed to work directly on the source code Source code is the only documentation of access control policy Policy implementation can be incomplete or incorrect

  17. Secure Implementation An article is added to the articles table in the database. The user name of the current logged- in user specifies the owner of the article, and the request includes the article text inserted into the database.

  18. Secure Implementation verifyUser() checks to ensure the request is coming from an authenticated user

  19. Secure Implementation User can delete any post they own Admin user, as specified by the role userLevel, can delete all entries in a blog as shown by the second DELETE operation

  20. Vulnerable Delete Operations

  21. Vulnerable Delete Operations

  22. System Architecture

  23. Evaluation Designed to analyze PHP web applications Implemented in JAVA and is about 10k lines of code Ran tool on suite of seven small to large PHP free and open-source applications

  24. PHP Applications

  25. Results

  26. Results

  27. Results

  28. Results

  29. Results

  30. Results

  31. Results

  32. Thank You

Related


More Related Content