LWeb: Information Flow Security or Multi-tier Web Applications

被引:28
|
作者
Parker, James [1 ]
Vazou, Niki [1 ,2 ,3 ]
Hicks, Michael [1 ]
机构
[1] Univ Maryland, Dept Comp Sci, College Pk, MD 20742 USA
[2] IMDEA Software Inst, Madrid, Spain
[3] Univ Maryland, College Pk, MD USA
基金
美国国家科学基金会;
关键词
security; information flow control; metatheory; Liquid Haskell; Haskell; LANGUAGE;
D O I
10.1145/3290388
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
This paper presents LWeb, a framework for enforcing label-based, information flow policies in database-using web applications. In a nutshell, LWeb marries the LIO Haskell IFC enforcement library with the Yesod web programming framework. The implementation has two parts. First, we extract the core of LIO into a monad transformer (LMonad) and then apply it to Yesod's core monad. Second, we extend Yesod's table definition DSL and query functionality to permit defining and enforcing label-based policies on tables and enforcing them during query processing. LWeb's policy language is expressive, permitting dynamic per-table and per-row policies. We formalize the essence of LWeb in the lambda(Lweb) calculus and mechanize the proof of noninterference in Liquid Haskell. This mechanization constitutes the first metatheoretic proof carried out in Liquid Haskell. We also used LWeb to build a substantial web site hosting the Build it, Break it, Fix it security-oriented programming contest. The site involves 40 data tables and sophisticated policies. Compared to manually checking security policies, LWeb imposes a modest runtime overhead of between 2% to 21%. It reduces the trusted code base from the whole application to just 1% of the application code, and 21% of the code overall (when counting LWeb too).
引用
收藏
页数:30
相关论文
共 50 条
  • [1] Maintaining multi-tier web applications
    Zheng, Xiaoyu
    Chen, Mei-Hwa
    [J]. 2007 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE, 2007, : 304 - 313
  • [2] Middleware Support for Complex and Distributed Security Services in Multi-tier Web Applications
    De Ryck, Philippe
    Desmet, Lieven
    Joosen, Wouter
    [J]. ENGINEERING SECURE SOFTWARE AND SYSTEMS, 2011, 6542 : 114 - 127
  • [3] A Survey of Resource Management in Multi-Tier Web Applications
    Huang, Dong
    He, Bingsheng
    Miao, Chunyan
    [J]. IEEE COMMUNICATIONS SURVEYS AND TUTORIALS, 2014, 16 (03): : 1574 - 1590
  • [4] A SURVEY OF QUALITY OF SERVICE IN MULTI-TIER WEB APPLICATIONS
    Ghetas, Mohamed
    Yong, Chan Huah
    Sumari, Putra
    [J]. KSII TRANSACTIONS ON INTERNET AND INFORMATION SYSTEMS, 2016, 10 (01): : 238 - 256
  • [5] Instant Multi-Tier Web Applications without Tears
    Shroff, Gautam
    Agarwal, Puneet
    Devanbu, Premkumar
    [J]. ISEC 2009 - PROCEEDINGS OF THE 2ND INDIA SOFTWARE ENGINEERING CONFERENCE, 2009, : 3 - 12
  • [6] An Execution Tracing Tool for Multi-tier Web Applications
    Xu, Jian
    Zhang, Hong
    Li, QianMu
    [J]. ADVANCED RESEARCH ON COMPUTER SCIENCE AND INFORMATION ENGINEERING, 2011, 153 : 244 - 250
  • [7] Deploying multi-tier applications across multiple security domains
    Balabine, I
    Koschel, A
    [J]. CERTIFICATION AND SECURITY IN E-SERVICES: FROM E-GOVERNMENT TO E-BUSINESS, 2003, 127 : 177 - 182
  • [8] Dynamic Horizontal and Vertical Scaling for Multi-tier Web Applications
    Nisar, Abid
    Iqbal, Waheed
    Bokhari, Fawaz
    Bukhari, Faisal
    Almustafa, Khaled
    [J]. INTELLIGENT AUTOMATION AND SOFT COMPUTING, 2020, 26 (02): : 353 - 365
  • [9] Automatic test case generation for multi-tier web applications
    Dai, Zhenyu
    Chen, Mei-Hwa
    [J]. WSE 2007: NINTH IEEE INTERNATIONAL SYMPOSIUM ON WEB SITE EVOLUTION, PROCEEDINGS, 2007, : 39 - +
  • [10] Lightweight automatic resource scaling for multi-tier web applications
    Yazdanov, Lenar
    Fetzer, Christof
    [J]. 2014 IEEE 7TH INTERNATIONAL CONFERENCE ON CLOUD COMPUTING (CLOUD), 2014, : 467 - 474