skip to main content
10.1145/3297280.3297401acmconferencesArticle/Chapter ViewAbstractPublication PagessacConference Proceedingsconference-collections
research-article

Attack graph generation for microservice architecture

Published:08 April 2019Publication History

ABSTRACT

Microservices, which are typically technologically heterogenous and can be deployed automatically, are increasingly dominating service systems. However, with increased utilization of third-party components distributed as images, the potential vulnerabilities in microservice-based systems increase. Based on component dependency, such vulnerabilities can lead to exposing a system's critical assets. Similar problems have been addressed by the computer networks community. In this paper, we propose utilizing attack graphs in the continuous delivery infrastructure of microservices-based systems. To that end, we relate microservices to network nodes and automatically generate attack graphs that help practitioners identify, analyze, and prevent plausible attack paths in their microservice-based container networks. We present a complete solution that can be easily embedded in continuous delivery systems and demonstrate its efficiency and scalability based on real-world use cases.

References

  1. 2018. Microservice Architecture. https://microservices.io/articles/whoisusingmicroservices.html. Retrieved September 4 2018.Google ScholarGoogle Scholar
  2. 2018. PHPMailer 5.2.18 Remote Code Execution. https://github.com/opsxcq/exploit-CVE-2016-10033. Retrieved September 4 2018.Google ScholarGoogle Scholar
  3. 2018. SambaCry RCE exploit for Samba 4.5.9. https://github.com/opsxcq/exploit-CVE-2017-7494. Retrieved September 4 2018.Google ScholarGoogle Scholar
  4. Mohsen Ahmadvand and Amjad Ibrahim. 2016. Requirements reconciliation for scalable and secure microservice (de) composition. In Requirements Engineering Conference Workshops (REW), IEEE International. IEEE, 68--73.Google ScholarGoogle ScholarCross RefCross Ref
  5. M Ugur Aksu, Kemal Bicakci, M Hadi Dilek, A Murat Ozbayoglu, et al. 2018. Automated Generation Of Attack Graphs Using NVD. In Proceedings of the Eighth ACM Conference on Data and Application Security and Privacy. ACM, 135--142. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Paul Ammann, Duminda Wijesekera, and Saket Kaushik. 2002. Scalable, graph-based network vulnerability analysis. In Proceedings of the 9th ACM Conference on Computer and Communications Security. ACM, 217--224. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Harold Booth, Doug Rike, and Gregory A Witte. 2013. The National Vulnerability Database (NVD): Overview. Technical Report.Google ScholarGoogle Scholar
  8. James Bottomley. 2014. What is All the Container Hype?Google ScholarGoogle Scholar
  9. Thanh Bui. 2015. Analysis of docker security. arXiv preprint (2015).Google ScholarGoogle Scholar
  10. Björn Butzin, Frank Golatowski, and Dirk Timmermann. 2016. Microservices approach for the internet of things. In Emerging Technologies and Factory Automation (ETFA), 2016 IEEE 21st International Conference on. IEEE, 1--6.Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Tomas Cerny, Michael J Donahoo, and Michal Trnka. 2018. Contextual under-standing of microservice architecture: current and future directions. ACM SIGAPP Applied Computing Review 17, 4 (2018), 29--45. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Theo Combe, Antony Martin, and Roberto Di Pietro. 2016. To Docker or not to Docker: A security perspective. IEEE Cloud Computing 3, 5 (2016), 54--62.Google ScholarGoogle ScholarCross RefCross Ref
  13. Nicola Dragoni, Saverio Giallorenzo, Alberto Lluch Lafuente, Manuel Mazzara, Fabrizio Montesi, Ruslan Mustafin, and Larisa Safina. 2017. Microservices: yesterday, today, and tomorrow. In Present and Ulterior Software Engineering. Springer.Google ScholarGoogle Scholar
  14. Daniel Farmer and Eugene H Spafford. 1990. The COPS security checker system. (1990).Google ScholarGoogle Scholar
  15. Christof Fetzer. 2016. Building critical applications using microservices. IEEE Security & Privacy 6 (2016), 86--89. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Martin Fowler. 2015. Microservices resource guide. (2015).Google ScholarGoogle Scholar
  17. Jayanth Gummaraju, Tarun Desikan, and Yoshio Turner. 2015. Over 30% of official images in docker hub contain high priority security vulnerabilities. In Technical Report. BanyanOps.Google ScholarGoogle Scholar
  18. Kyle Ingols, Richard Lippmann, and Keith Piwowarski. 2006. Practical attack graph generation for network defense. In Computer Security Applications Conference, 2006. ACSAC'06. 22nd Annual. IEEE, 121--130. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. David Jaramillo, Duy V Nguyen, and Robert Smart. 2016. Leveraging microservices architecture by using Docker technology. In SoutheastCon, 2016. IEEE, 1--5.Google ScholarGoogle ScholarCross RefCross Ref
  20. Somesh Jha, Oleg Sheyner, and Jeannette Wing. 2002. Two formal analyses of attack graphs. In Computer Security Foundations Workshop, 2002. Proceedings. 15th IEEE. IEEE, 49--63. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Barbara Kordy, Ludovic Piètre-Cambacédès, and Patrick Schweitzer. 2014. DAG-based attack and defense modeling: Don't miss the forest for the attack trees. Computer science review 13 (2014), 1--38. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Nane Kratzke. 2017. About microservices, containers and their underestimated impact on network performance. arXiv preprint arXiv:1710.04049 (2017).Google ScholarGoogle Scholar
  23. Alexandr Krylovskiy, Marco Jahn, and Edoardo Patti. 2015. Designing a smart city internet of things platform with microservice architecture. In Future Internet of Things and Cloud (FiCloud), 2015 3rd International Conference on. IEEE, 25--30. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Sjouke Mauw and Martijn Oostdijk. 2005. Foundations of attack trees. In International Conference on Information Security and Cryptology. Springer, 186--198. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Dirk Merkel. 2014. Docker: lightweight linux containers for consistent development and deployment. Linux Journal 2014, 239 (2014), 2. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Sam Newman. 2015. Building microservices: designing fine-grained systems. " O'Reilly Media, Inc.". Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Xinming Ou, Wayne F Boyer, and Miles A McQueen. 2006. A scalable approach to attack graph generation. In Proceedings of the 13th ACM conference on Computer and communications security. ACM, 336--345. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Claus Pahl and Pooyan Jamshidi. 2016. Microservices: A Systematic Mapping Study. In CLOSER (1). 137--146. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Mike P Papazoglou. 2003. Service-oriented computing: Concepts, characteristics and directions. In Web Information Systems Engineering, 2003. WISE 2003. Proceedings of the Fourth International Conference on. IEEE, 3--12. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Ronald W Ritchey and Paul Ammann. 2000. Using model checking to analyze network vulnerabilities. In Security and Privacy, 2000. S&P 2000. Proceedings. 2000 IEEE Symposium on. IEEE, 156--165. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Oleg Sheyner, Joshua Haines, Somesh Jha, Richard Lippmann, and Jeannette M Wing. 2002. Automated generation and analysis of attack graphs. In Proceedings-IEEE Symposium on Security and Privacy. IEEE, 273. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Rui Shu, Xiaohui Gu, and William Enck. 2017. A study of security vulnerabilities on docker hub. In Proceedings of the Seventh ACM on Conference on Data and Application Security and Privacy. ACM, 269--280. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Eberhard Wolff. 2016. Microservices: flexible software architecture.Google ScholarGoogle Scholar

Recommendations

Comments

Login options

Check if you have access through your login credentials or your institution to get full access on this article.

Sign in
  • Published in

    cover image ACM Conferences
    SAC '19: Proceedings of the 34th ACM/SIGAPP Symposium on Applied Computing
    April 2019
    2682 pages
    ISBN:9781450359337
    DOI:10.1145/3297280

    Copyright © 2019 ACM

    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]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    • Published: 8 April 2019

    Permissions

    Request permissions about this article.

    Request Permissions

    Check for updates

    Qualifiers

    • research-article

    Acceptance Rates

    Overall Acceptance Rate1,650of6,669submissions,25%

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader