Attack Graph Generation for
Microservices Architecture
By
Abdul Qadir
Saad Siddiqui
What are Microservices?
Microservices - also known as the microservice architecture - is an
architectural style that structures an application as a collection of
services that are
● Highly maintainable and testable
● Loosely coupled
● Independently deployable
● Organized around business capabilities
● Owned by a small team
Why Microservices?
As real-world software increases in size, there is an
increasing need to decompose software into an
organized structure to promote scalability, reusability,
and readability
Containers
● Containers, by contrast, isolate applications’ execution
environments from one another, but share the underlying OS kernel
● A container is a standard unit of software that packages up code
and all its dependencies so the application runs quickly and reliably
from one computing environment to another.
Docker
● Docker is an open source containerization platform
● Docker is a set of platform as a service (PaaS) products that use
OS-level virtualization to deliver software in packages called
containers
● Docker is one of the tools that used the idea of the isolated
resources to create a set of tools that allows applications to be
packaged with all the dependencies installed and ran wherever
wanted
Docker Hub
Kubernetes
● To monitor and manage container lifecycles in more
complex environments, you’ll need to turn to a container
orchestration tool. While Docker includes its own
orchestration tool, called Docker Swarm
Vulnerability Scanners
● Vulnerability scanners attempt to detect weaknesses by scanning a single
host and generating a list of exploitable vulnerabilities
● However, more sophisticated approaches are required because
many attacks are network-based and performed in multiple steps
throughout a network.
● Therefore, combinations of vulnerability scanners and topologies are
considered promising solutions to this problem
Attack Graphs
● Attack graphs are a popular way to examine network security weaknesses.
● The definition of an attack graph may vary, however, it is essentially a directed graph
comprising nodes and edges with various representations.
● It basically shows all the paths and vulnerability that can be exploited to comprise
the target asset.
Attack Graph Generator System
Attack Graphs
Docker (YML File)
Docker (YML File)
Graph Output
Thank You
References
● https://www.researchgate.net/publication/332814067_Attack_graph_generation_for_microservice_architecture
● https://github.com/tum-i22/attack-graph-generator

Attack graph generation for micro services architecture

  • 1.
    Attack Graph Generationfor Microservices Architecture By Abdul Qadir Saad Siddiqui
  • 2.
    What are Microservices? Microservices- also known as the microservice architecture - is an architectural style that structures an application as a collection of services that are ● Highly maintainable and testable ● Loosely coupled ● Independently deployable ● Organized around business capabilities ● Owned by a small team
  • 3.
    Why Microservices? As real-worldsoftware increases in size, there is an increasing need to decompose software into an organized structure to promote scalability, reusability, and readability
  • 4.
    Containers ● Containers, bycontrast, isolate applications’ execution environments from one another, but share the underlying OS kernel ● A container is a standard unit of software that packages up code and all its dependencies so the application runs quickly and reliably from one computing environment to another.
  • 5.
    Docker ● Docker isan open source containerization platform ● Docker is a set of platform as a service (PaaS) products that use OS-level virtualization to deliver software in packages called containers ● Docker is one of the tools that used the idea of the isolated resources to create a set of tools that allows applications to be packaged with all the dependencies installed and ran wherever wanted
  • 6.
  • 7.
    Kubernetes ● To monitorand manage container lifecycles in more complex environments, you’ll need to turn to a container orchestration tool. While Docker includes its own orchestration tool, called Docker Swarm
  • 8.
    Vulnerability Scanners ● Vulnerabilityscanners attempt to detect weaknesses by scanning a single host and generating a list of exploitable vulnerabilities ● However, more sophisticated approaches are required because many attacks are network-based and performed in multiple steps throughout a network. ● Therefore, combinations of vulnerability scanners and topologies are considered promising solutions to this problem
  • 9.
    Attack Graphs ● Attackgraphs are a popular way to examine network security weaknesses. ● The definition of an attack graph may vary, however, it is essentially a directed graph comprising nodes and edges with various representations. ● It basically shows all the paths and vulnerability that can be exploited to comprise the target asset.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.