ABSTRACT
Runtime monitoring is performed during system execution to detect whether the system's behaviour deviates from that described by requirements. To support this activity we have developed a monitoring framework that expresses the requirements to be monitored in event calculus - a formal temporal first order language. Following an investigation of how this framework could be used to monitor security requirements, in this paper we propose patterns for expressing three basic types of such requirements, namely confidentiality, integrity and availability. These patterns aim to ease the task of specifying confidentiality, integrity and availability requirements in monitorable forms by non-expert users. The paper illustrates the use of these patterns using examples of an industrial case study.
- Specification patterns, http://patterns.projects.cis.ksu.edu/Google Scholar
- Alur, R.: Techniques for Automatic Verification of Real- Time Systems. PhD thesis, Stanford Univ., August (1991) Google ScholarDigital Library
- Avizienis A., Laprie J-C., Randell B.: Fundamental Concepts of Dependability. Report N01145, LAAS-CNRS, (2001)Google Scholar
- Campadello S. et al.: S&D Requirements specification, Deliverable A7.D2.1, SERENITY Project, /www.serenityforum.org/-Activities-.html?debut_article=4, (2006).Google Scholar
- Chen, L. and Avizienis A.: *N-version Programming: A Fault-Tolerance Approach To Reliability Of Software Operation, Proc. Of 25th Inter. Symp. on Fault-Tolerant Computing, 'Highlights from Twenty-Five Years', vol. III:113--119, 1995.Google Scholar
- Clarke, E. M., Emerson, E. A., and Sistla, A. P.: Automatic Verification of Finite-State Concurrent Systems Using Temporal Logic Specifications. ACM Trans. on Programming Languages and Systems, 8(2):244--263 (1986) Google ScholarDigital Library
- Corbett, C., Dwyer, M. B., Hatcliff, and Robby: A language framework for expressing checkable properties of dynamic software. Proc. of the SPIN Software Model Checking Workshop, LNCS vol. 1885, (2000) Google ScholarDigital Library
- Damianou N, Dulay N, Lupu E, Sloman M.: The Ponder Policy Specification Language, POLICY 2001, (2001) Google ScholarDigital Library
- Denning, D.: An Intrusion-Detection Model, IEEE Trans. on Software Engineering, 13(2):222--232. (1987) Google ScholarDigital Library
- Dwyer, M. B., Avrunin, G. S. and Corbett, J. C.: Property Specification Patterns for Finite state Verification. Proc. Of 2nd Work. on Formal Methods in Software Practice, (1998) Google ScholarDigital Library
- English, C., Terzis, S., Nixon, P.: Towards Self-Protecting Ubiquitous Systems Monitoring Trust-based Interactions, Proc. of UbiSys '04, (2004)Google Scholar
- Fernandez, E. B., and Pan, R.: A pattern language for security models. Technical report, Florida Atlantic University, published in PLoP (2001)Google Scholar
- Flake, S., and Mueller, W.: An OCL Extension for Real-Time Constraints. Advances in Object Modelling with the OCL, LNCS. Springer-Verlag, (2001) Google ScholarDigital Library
- Jürjens, J.: Transformations for introducing patterns - a secure systems case study. In Work. on Transformations in UML, ETAPS 2001 Satellite Event, (2001)Google Scholar
- Jurjens, J.: UMLsec: Extending UML for secure systems development. Proc. of the 5th Int. Conf. on the Unified Modeling Language, LNCS, 2460: 412--425, (2002) Google ScholarDigital Library
- Ko, C., Ruschitzka, M. & Levitt, K.: Execution monitoring of security-critical programs in distributed systems: A specification-based approach. Proc. of the IEEE Symposium on Security and Privacy, 175--187, (1997) Google ScholarDigital Library
- Konrad, S. and Cheng, B. H: Real-time specification patterns. Proc of the 27th Int. Conf. on Soft. Engineering, 372--381 (2005) Google ScholarDigital Library
- Koymans, R:. Specifying Real-Time Properties with Metric Temporal Logic. RealTime Systems, 2(4):255--299, 1990 Google ScholarDigital Library
- Lodderstedt, T., Basin, D. A., and Doser, J.: SecureUML: A UML-Based Modeling Language for Model-Driven Security. Proc. of the 5th Int. Conf. on the Unified Modeling Language LNCS, vol. 2460: 426--441, Springer-Verlag, (2002). Google ScholarDigital Library
- Manna, Z., Pnueli, A.: The Temporal Logic of Reactive and Concurrent Systems. Springer-Verlag (1992) Google ScholarDigital Library
- Moser, L. E., Ramakrishna, Y. S., Kutty, G., Melliar-Smith, P. M., and Dillon, K.: A Graphical Environment for the Design of Concurrent Real-Time Systems, ACM Trans. on Software Engineering Methodology, 6: 31--79, (1997) Google ScholarDigital Library
- Porras, P. A. and Neumann, P. G.: EMERALD: Event monitoring enabling responses to anomalous live disturbances, In Proc. 20th National Information Systems Security Conference, 353--365. (1997)Google Scholar
- Security Patterns, http://www.securitypatterns.orgGoogle Scholar
- Shanahan, M. P.: The Event Calculus Explained, in Artificial Intelligence Today, LNAI no. 1600:409--430, Springer (1999)Google Scholar
- Smith, R. L., Avrunin, G. S., Clarke, L. A. and Osterweil, L. J.: Propel: An approach supporting property elucidation. In Proc. of the 24th Int. Conf. on Software Engineering, 11--21, May (2002) Google ScholarDigital Library
- Spanoudakis, G. and Mahbub, K.: Non Intrusive Monitoring of Service Based Systems, Int. Journal of Cooperative Information Systems, 15(3): 325--358, (2006)Google ScholarCross Ref
- Srivatsa, M. and Liu, L.: Securing Publish-Subscribe Overlay Services with EventGuard, Proc. of the 12th ACM Conf on Computer and Communications Security, 289--298, (2005) Google ScholarDigital Library
Index Terms
- Towards security monitoring patterns
Recommendations
Problem-oriented security patterns for requirements engineering
EuroPLoP '14: Proceedings of the 19th European Conference on Pattern Languages of ProgramsSecurity is one essential quality requirement that needs to be addressed during the software development process. While quality requirements such as security are supposed to be the architectural drivers, architecture solutions such as security patterns ...
Non-functional Requirement Patterns for Agile Software Development
ICSEB '19: Proceedings of the 2019 3rd International Conference on Software and e-BusinessFollowing the agile principles, agile software development is popular among software developing organizations. The attractive characteristics of agile development are that it embraces frequent changes and that it gives high priority to users. Due to ...
Identifying and Implementing Security Patterns for a Dependable Security Case -- From Security Patterns to D-Case
CSE '13: Proceedings of the 2013 IEEE 16th International Conference on Computational Science and EngineeringToday's software systems are facing new and complicated challenges in confronting with security issues. There are lots of security tools and methods that are being created and used within institutes and organizations in order to mitigate risk, threats ...
Comments