Ensuring Authorized Updates in Multi-user Database-Backed Applications

被引:0
作者
Eykholt, Kevin [1 ]
Prakash, Atul [1 ]
Mozafari, Barzan [1 ]
机构
[1] Univ Michigan Ann Arbor, Ann Arbor, MI 48109 USA
来源
PROCEEDINGS OF THE 26TH USENIX SECURITY SYMPOSIUM (USENIX SECURITY '17) | 2017年
关键词
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Database-backed applications rely on access control policies based on views to protect sensitive data from unauthorized parties. Current techniques assume that the application's database tables contain a column that enables mapping a user to rows in the table. This assumption allows database views or similar mechanisms to enforce per-user access controls. However, not all database tables contain sufficient information to map a user to rows in the table, as a result of database normalization, and thus, require the joining of multiple tables. In a survey of 10 popular open-source web applications, on average, 21% of the database tables require a join. This means that current techniques cannot enforce security policies on all update queries for these applications, due to a well-known view update problem. In this paper, we propose phantom extraction, a technique, which enforces per user access control policies on all database update queries. Phantom extraction does not make the same assumptions as previous work, and, more importantly, does not use database views as a core enforcement mechanism. Therefore, it does not fall victim to the view update problem. We have created SafeD as a practical access control solution, which uses our phantom extraction technique. SafeD uses a declarative language for defining security policies, while retaining the simplicity of database views. We evaluated our system on two popular databases for open source web applications, MySQL and Postgres. On MySQL, which has no built-in access control, we observe a 6% increase in transaction latency. On Postgres, SafeD outperforms the built-in access control by an order of magnitude when security policies involved joins.
引用
收藏
页码:1445 / 1462
页数:18
相关论文
共 37 条
[1]  
Abela R., 2016, INFOGRAPHIC STAT SEC
[2]  
[Anonymous], J MED BIOL ENG
[3]  
[Anonymous], 2016, EXECUTE T SQL
[4]  
[Anonymous], 2015, ROW COLUMN ACCESS CO
[5]  
[Anonymous], 2014, SNAPCHAT GIBSEC FUL
[6]  
[Anonymous], 2016, SYMANTEC PATCHES HIG
[7]  
[Anonymous], 2016, POSTGRESQL 9 5 0 DOC
[8]  
[Anonymous], 2014, ORACLE DATABASE ONLI
[9]  
[Anonymous], 2016, CREATING MYSQL DATAB
[10]  
[Anonymous], 2015, ELEMENTS ROW LEVEL S