Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/1375696.1375699acmconferencesArticle/Chapter ViewAbstractPublication PagespldiConference Proceedingsconference-collections
research-article

Aspect-oriented in-lined reference monitors

Published: 07 June 2008 Publication History
  • Get Citation Alerts
  • Abstract

    An Aspect-Oriented, declarative, security policy specification language is presented, for enforcement by In-lined Reference Monitors. The semantics of the language establishes a formal connection between Aspect-Oriented Programming and In-lined Reference Monitoring wherein policy specifications denote Aspect-Oriented security automata---security automata whose edge labels are encoded as pointcut expressions. The prototype language implementation enforces these security policies by automatically rewriting Java bytecode programs so as to detect and prevent policy violations at runtime.

    References

    [1]
    Irem Aktug and Katsiaryna Naliuka. ConSpec: A formal language for policy specification. In Proc. of the 1st International Workshop on Run Time Enforcement for Mobile and Distributed Systems (REM'07), volume 197--1 of Lecture Notes in Theoretical Computer Science, pages 45---58, Dresden, Germany, September 2007.]]
    [2]
    Irem Aktug, Mads Dam, and Dilian Gurov. Provably correct runtime monitoring. In Proc. of the 15th International Symposium on Formal Methods (FM'08), Turku, Finland, May 2008. To appear.]]
    [3]
    Alexander Barvinok and James E. Pommersheim. An algorithmic theory of lattice points in polyhedra. New Perspectives in Algebraic Combinatorics, 38:91--147, 1999.]]
    [4]
    Lujo Bauer, Jay Ligatti, and David Walker. Composing security policies with Polymer. In Proc. of the ACM Conference on Programming Language Design and Implementation (PLDI), pages 305--314, Chicago, Illinois, June 2005.]]
    [5]
    Feng Chen and Grigore Roşu. Java--MOP: A Monitoring Oriented Programming environment for Java. In Proc. of the 11th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS), pages 546--550, Edinburgh, Scotland, United Kingdom, April 2005.]]
    [6]
    Daniel S. Dantas and David Walker. Harmless advice. In Proc. of the 8th ACM Symposium on Principles of Programming Languages (POPL), pages 383--396, Charleston, South Carolina, January 2006.]]
    [7]
    Daniel S. Dantas, David Walker, Geoffrey Washburn, and Stephanie Weirich. AspectML: A polymorphic aspectoriented functional programming language. ACM Transactions on Programming Languages and Systems, June 2008. To appear.]]
    [8]
    Robert DeLine and Manuel Fähndrich. Typestates for objects. In Proc. of the 18th European Conference on Object--Oriented Programming (ECOOP), pages 465--490, Oslo, Norway, June 2004.]]
    [9]
    E. Allen Emerson. Handbook of Theoretical Computer Science, chapter on Temporal and Modal Logic, pages 995--1072. Elsevier and MIT Press, 1990.]]
    [10]
    Úlfar Erlingsson. The Inlined Reference Monitor Approach to Security Policy Enforcement. PhD thesis, Cornell University, Ithaca, New York, January 2004.]]
    [11]
    Úlfar Erlingsson and Fred B. Schneider. SASI enforcement of security policies: A retrospective. In Proc. of the New Security Paradigms Workshop (NSPW), pages 87--95, Caledon Hills, Ontario, Canada, September 1999.]]
    [12]
    David Evans and Andrew Twynman. Flexible policy--directed code safety. In Proc. of the 20th IEEE Symposium on Security and Privacy, pages 32--45, Oakland, California, May 1999.]]
    [13]
    Matthew Flatt, Shriram Krishnamurthi, and Matthias Felleisen. Classes and mixins. In Proc. of the 25th ACM Symposium on Principles of Programming Languages (POPL), pages 171--183, San Diego, California, January 1998.]]
    [14]
    Apache Software Foundation. Byte code engineering library, 2006. http://jakarta.apache.org/bcel/.]]
    [15]
    Kevin W. Hamlen. Security Policy Enforcement by Automated Program--rewriting. PhD thesis, Cornell University, Ithaca, New York, August 2006.]]
    [16]
    Kevin W. Hamlen, Greg Morrisett, and Fred B. Schneider. Computability classes for enforcement mechanisms. ACM Transactions On Programming Languages And Systems (TOPLAS), 28(1):175--205, January 2006.]]
    [17]
    Kevin W. Hamlen, Greg Morrisett, and Fred B. Schneider. Certified in--lined reference monitoring on .NET. In Proc. of the 1st ACM Workshop on Programming Languages and Analysis for Security (PLAS), pages 7--15, June 2006.]]
    [18]
    Gregor Kiczales, John Lamping, Anurag Medhdhekar, Chris Maeda, Cristina Lopes, Jean--Marc Loingtier, and John Irwin. Aspect--Oriented Programming. In Proc. of the 11th European Conference on Object--Oriented Programming (ECOOP), volume 1241, pages 220--242, Jyvaskyla, Finland, June 1997.]]
    [19]
    Gregor Kiczales, Erik Hilsdale, Jim Hugunin, Mik Kersten, Jeffrey Palm, and William G. Griswold. An overview of AspectJ. In Proc. of the 15th European Conference on Object--Oriented Programming (ECOOP), volume 2072, pages 327--355, Budapest, Hungary, June 2001.]]
    [20]
    Moonjoo Kim, Mahesh Viswanathan, Sampath Kannan, Insup Lee, and Oleg V. Sokolsky. Java--MaC: A run--time assurance approach for Java programs. Formal Methods in System Design, 24(2):129--155, March 2004.]]
    [21]
    Gary T. Leavens and Albert L. Baker. Enhancing the pre-- and postcondition technique for more expressive specifications. In FM'99 -- Formal Methods: World Congress on Formal Methods in Development of Computer Systems, pages 1087--1106, Toulouse, France, September 1999.]]
    [22]
    Jarred Ligatti, Lujo Bauer, and David Walker. Edit automata: Enforcement mechanisms for run--time security policies. International Journal of Information Security, 4(1---2):2--16, February 2005.]]
    [23]
    Jay Ligatti, Lujo Bauer, and David Walker. Enforcing nonsafety security policies with program monitors. In Proc. of the 10th European Symposium on Research in Computer Security (ESORICS), pages 355--373, Milan, Italy, September 2005.]]
    [24]
    George C. Necula and Peter Lee. The design and implementation of a certifying compiler. In Proc. of the ACM Conference on Programming Language Design and Implementation (PLDI), pages 333--344, Montreal, Quebec, Canada, June 1998.]]
    [25]
    Harold Ossher and Peri Tarr. Hyper/JTM: Multi--dimensional separation of concerns for JavaTM. In Proc. of the 23rd International Conference on Software Engineering (ICSE), pages 729--730, Toronto, Ontario, Canada, May 2001.]]
    [26]
    Fred B. Schneider. Enforceable security policies. ACM Transactions on Information and System Security (TISSEC), 3(1):30--50, February 2000.]]
    [27]
    Viren Shah and Frank Hill. An aspect--oriented security framework. In Proc. of the DARPA Information Survivability Conference and Exposition, volume 2, pages 143--145, April 2003.]]
    [28]
    John Viega, J.T. Bloch, and Pravir Chandra. Applying aspectoriented programming to security. Cutter IT Journal, 14(2), February 2001.]]
    [29]
    David Walker, Steve Zdancewic, and Jay Ligatti. A theory of aspects. In Proc. of the 8th International Conference on Functional Programming (ICFP), pages 127--139, Uppsala, Sweden, August 2003.]]
    [30]
    Mitchell Wand, Gregor Kiczales, and Christopher Dutchyn. A semantics for advice and dynamic join points in aspect--oriented programming. ACM Transactions on Programming Languages and Systems (TOPLAS), 26(5):890--910, September 2004.]]

    Cited By

    View all
    • (2019)A Survey of In-Lined Reference Monitors: Policies, Applications and Challenges2019 IEEE/ACS 16th International Conference on Computer Systems and Applications (AICCSA)10.1109/AICCSA47632.2019.9035367(1-8)Online publication date: Nov-2019
    • (2019)Elicitation of Privacy Requirements for the Internet of Things Using ACCESSORSInformation Systems Security and Privacy10.1007/978-3-030-25109-3_3(40-65)Online publication date: 5-Jul-2019
    • (2018)A security policy enforcement framework for controlling IoT tenant applications in the edgeProceedings of the 8th International Conference on the Internet of Things10.1145/3277593.3277602(1-8)Online publication date: 15-Oct-2018
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    PLAS '08: Proceedings of the third ACM SIGPLAN workshop on Programming languages and analysis for security
    June 2008
    154 pages
    ISBN:9781595939364
    DOI:10.1145/1375696
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 07 June 2008

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. aspect-oriented programming
    2. in-lined reference monitors
    3. object-oriented programming
    4. runtime verification
    5. security automata

    Qualifiers

    • Research-article

    Conference

    PLDI '08
    Sponsor:

    Acceptance Rates

    Overall Acceptance Rate 43 of 77 submissions, 56%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)0
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 10 Aug 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2019)A Survey of In-Lined Reference Monitors: Policies, Applications and Challenges2019 IEEE/ACS 16th International Conference on Computer Systems and Applications (AICCSA)10.1109/AICCSA47632.2019.9035367(1-8)Online publication date: Nov-2019
    • (2019)Elicitation of Privacy Requirements for the Internet of Things Using ACCESSORSInformation Systems Security and Privacy10.1007/978-3-030-25109-3_3(40-65)Online publication date: 5-Jul-2019
    • (2018)A security policy enforcement framework for controlling IoT tenant applications in the edgeProceedings of the 8th International Conference on the Internet of Things10.1145/3277593.3277602(1-8)Online publication date: 15-Oct-2018
    • (2018)Real-Time Data Mining for Event Streams2018 IEEE 22nd International Enterprise Distributed Object Computing Conference (EDOC)10.1109/EDOC.2018.00025(123-134)Online publication date: Oct-2018
    • (2015)Between Worlds: Securing Mixed JavaScript/ActionScript Multi-Party Web ContentIEEE Transactions on Dependable and Secure Computing10.1109/TDSC.2014.235584712:4(443-457)Online publication date: 1-Jul-2015
    • (2015)Improving Tenants' Trust in SaaS Applications Using Dynamic Security MonitorsProceedings of the 2015 20th International Conference on Engineering of Complex Computer Systems (ICECCS)10.1109/ICECCS.2015.18(70-79)Online publication date: 9-Dec-2015
    • (2014)TESLAProceedings of the Ninth European Conference on Computer Systems10.1145/2592798.2592801(1-14)Online publication date: 14-Apr-2014
    • (2014)Enforcement of Purpose Based Access Control within Relational Database Management SystemsIEEE Transactions on Knowledge and Data Engineering10.1109/TKDE.2014.231211226:11(2703-2716)Online publication date: Nov-2014
    • (2014)Silver Lining: Enforcing Secure Information Flow at the Cloud Edge2014 IEEE International Conference on Cloud Engineering10.1109/IC2E.2014.83(37-46)Online publication date: Mar-2014
    • (2014)VigilesProceedings of the 2014 IEEE International Congress on Big Data10.1109/BigData.Congress.2014.16(40-47)Online publication date: 27-Jun-2014
    • Show More Cited By

    View Options

    Get Access

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media