One main difficulty when dealing with network security is to determine the ramifcations of offering combined services. Services may be perfectly secure when used in standalone, but when combined with other services they may be vulnerable.
A simple example is the use of an FTP service to upload a php script that will be used to exploit a vulnerable php. Many tools, known as vulnerability scanners, scan the network to detect vulnerabilities and misconfigurations. Two famous scanners are Nessus or Retina. (I will make a post on them later).
Attack graphs are models where theses vulnerabilities reports are combined to identify vulnerables combinations. It is mainly used to identify the ramification of a vulnerability. It allows to built attack scenario where each vulnerability is a stepping stone used to launch further attacks.
This is a very interesseting approach that allows to determine the level of compromise that an attacker can obtains from a starting point. On the evil side it can be used to build an Icebreaker. Many tools and models have been developped since the paper “Using model checking to analyze Network vulnerability”.
A good introduction is the report from the MIT Lincoln Laboratory called “An annotated Review of Past Papers on Attack Graphs” by R. P. Lippmann an K.W. Ingols.
It is quite old since it was released on march 2005 but it was at this time pretty complete. An other good start point is the Threat Prediction modeling project of the CyLab of Carnegie Mellon University. In particular the PHD these of O. Sheyner called Scenario Graphs and Attack Graphs give the the basic to start.
Still quite confidential, attack graphs are a very interesting for anyone involved in network security


Latest Comments