Automated reverse engineering of role-based access control policies of web applications

Access control (AC) is an important security mechanism used in software systems to restrict access to sensitive resources. Therefore, it is essential to validate the correctness of AC implementations with respect to policy specifications or intended access rights. However, in practice, AC policy spe...

Full description

Saved in:
Bibliographic Details
Main Authors: LE, Ha Thanh, SHAR, Lwin Khin, BIANCULLI, Domenico, BRIAND, Lionel C., NGUYEN, Cu Duy
Format: text
Language:English
Published: Institutional Knowledge at Singapore Management University 2022
Subjects:
Online Access:https://ink.library.smu.edu.sg/sis_research/6407
https://ink.library.smu.edu.sg/context/sis_research/article/7410/viewcontent/main.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Singapore Management University
Language: English
id sg-smu-ink.sis_research-7410
record_format dspace
spelling sg-smu-ink.sis_research-74102021-11-25T08:51:47Z Automated reverse engineering of role-based access control policies of web applications LE, Ha Thanh SHAR, Lwin Khin BIANCULLI, Domenico BRIAND, Lionel C. NGUYEN, Cu Duy Access control (AC) is an important security mechanism used in software systems to restrict access to sensitive resources. Therefore, it is essential to validate the correctness of AC implementations with respect to policy specifications or intended access rights. However, in practice, AC policy specifications are often missing or poorly documented; in some cases, AC policies are hard-coded in business logic implementations. This leads to difficulties in validating the correctness of policy implementations and detecting AC defects.In this paper, we present a semi-automated framework for reverse-engineering of AC policies from Web applications. Our goal is to learn and recover role-based access control (RBAC) policies from implementations, which are then used to validate implemented policies and detect AC issues. Our framework, built on top of a suite of security tools, automatically explores a given Web application, mines domain input specifications from access logs, and systematically generates and executes more access requests using combinatorial test generation. To learn policies, we apply machine learning on the obtained data to characterize relevant attributes that influence AC. Finally, the inferred policies are presented to the security engineer, for validation with respect to intended access rights and for detecting AC issues. Inconsistent and insufficient policies are highlighted as potential AC issues, being either vulnerabilities or implementation errors.We evaluated our approach on four Web applications (three open-source and a proprietary one built by our industry partner) in terms of the correctness of inferred policies. We also evaluated the usefulness of our approach by investigating whether it facilitates the detection of AC issues. The results show that 97.8% of the inferred policies are correct with respect to the actual AC implementation; the analysis of these policies led to the discovery of 64 AC issues that were reported to the developers. 2022-02-01T08:00:00Z text application/pdf https://ink.library.smu.edu.sg/sis_research/6407 info:doi/10.1016/j.jss.2021.111109 https://ink.library.smu.edu.sg/context/sis_research/article/7410/viewcontent/main.pdf http://creativecommons.org/licenses/by-nc-nd/4.0/ Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University Access control testing Reverse engineering Access control policies Machine learning Information Security Software Engineering
institution Singapore Management University
building SMU Libraries
continent Asia
country Singapore
Singapore
content_provider SMU Libraries
collection InK@SMU
language English
topic Access control testing
Reverse engineering
Access control policies
Machine learning
Information Security
Software Engineering
spellingShingle Access control testing
Reverse engineering
Access control policies
Machine learning
Information Security
Software Engineering
LE, Ha Thanh
SHAR, Lwin Khin
BIANCULLI, Domenico
BRIAND, Lionel C.
NGUYEN, Cu Duy
Automated reverse engineering of role-based access control policies of web applications
description Access control (AC) is an important security mechanism used in software systems to restrict access to sensitive resources. Therefore, it is essential to validate the correctness of AC implementations with respect to policy specifications or intended access rights. However, in practice, AC policy specifications are often missing or poorly documented; in some cases, AC policies are hard-coded in business logic implementations. This leads to difficulties in validating the correctness of policy implementations and detecting AC defects.In this paper, we present a semi-automated framework for reverse-engineering of AC policies from Web applications. Our goal is to learn and recover role-based access control (RBAC) policies from implementations, which are then used to validate implemented policies and detect AC issues. Our framework, built on top of a suite of security tools, automatically explores a given Web application, mines domain input specifications from access logs, and systematically generates and executes more access requests using combinatorial test generation. To learn policies, we apply machine learning on the obtained data to characterize relevant attributes that influence AC. Finally, the inferred policies are presented to the security engineer, for validation with respect to intended access rights and for detecting AC issues. Inconsistent and insufficient policies are highlighted as potential AC issues, being either vulnerabilities or implementation errors.We evaluated our approach on four Web applications (three open-source and a proprietary one built by our industry partner) in terms of the correctness of inferred policies. We also evaluated the usefulness of our approach by investigating whether it facilitates the detection of AC issues. The results show that 97.8% of the inferred policies are correct with respect to the actual AC implementation; the analysis of these policies led to the discovery of 64 AC issues that were reported to the developers.
format text
author LE, Ha Thanh
SHAR, Lwin Khin
BIANCULLI, Domenico
BRIAND, Lionel C.
NGUYEN, Cu Duy
author_facet LE, Ha Thanh
SHAR, Lwin Khin
BIANCULLI, Domenico
BRIAND, Lionel C.
NGUYEN, Cu Duy
author_sort LE, Ha Thanh
title Automated reverse engineering of role-based access control policies of web applications
title_short Automated reverse engineering of role-based access control policies of web applications
title_full Automated reverse engineering of role-based access control policies of web applications
title_fullStr Automated reverse engineering of role-based access control policies of web applications
title_full_unstemmed Automated reverse engineering of role-based access control policies of web applications
title_sort automated reverse engineering of role-based access control policies of web applications
publisher Institutional Knowledge at Singapore Management University
publishDate 2022
url https://ink.library.smu.edu.sg/sis_research/6407
https://ink.library.smu.edu.sg/context/sis_research/article/7410/viewcontent/main.pdf
_version_ 1770575954383470592