Sunteți pe pagina 1din 8

Network

and many aspects of the society. The


deeper and wider the network
applications is, the more obvious and
Security more complex the computer and
network’s security problems are.

Analysis Hackers and virus can find more ways to


launch attack with the development of
the network technology. The security
problem of computer network is more
complex.
Based on As an important aspect of network
security, evaluating the computer

Secur security through the analysis to the


computer network is very important and
could protect us form being hacked.
ity Status Vulnerability scanning is a traditional
way to conduct network security
Space analysis. This method can check whether
or not there are any known
vulnerabilities, for example COPS [1],
Nmap [2], Nessus [3], ISS [4], and etc.
Abstract This technique is just suitable to check
As an important method to analyze the system security qualitatively partially
security status of computer network, but cannot check a whole system. We
generating of network attack graph is a can’t conclude describe about the whole
hot topic in this domain. After analyzing target network’s security status without
network security attributes including the thinking of the correlation of the
host, user privilege, connection relation, vulnerabilities, host, and network
etc., the model of computer network topology etc.
security status space is built. The node of The ways to find the complex attack
attack graph expresses the network paths or list which can lead to changes of
security status, and the directed-line the system status are presented by
expresses the attack rule. We use a analyzing the security model. For
forward-search, breadth-first and depth- example, Phillips and Swiler presented
limited algorithm to produce attack the earliest concept of attack graph [5],
route, and utilize the tools Graphviz to [6]. The France Scholar Dacier and
generate the attack graph. The Rodolphe Ortalo developed a method
experiment validates the prototype of named Privilege Graph [7]. Templeton
network attack graph automatic and Levitt proposed a requires/provides
generating tools based on security status model for modeling chains of network
space. exploits [8]. Ramakrishnan analyzed
these Unix-based systems security using
Introduction model-checking technique [9].
In this paper, we use attack graph to
The rapid growth of the network provide a view of network security
influences the economy, politics, culture status. This article presents a method to

1
generate attack graph for network
security analysis based on security status
space.

Computer Network Security Status


Space

Since security analysis mainly aims


at the current computer network, it needs
a simple, flexible and complete model to
reduce complexity of system status
space. In this paper we build a model for
the network security analysis.

Computer Network Security Status

User Privilege

In actual implementation
environment of the host computer, the
system visitors can be classified
according to the capability to access the
system resource. A lot of researchers
have described on this direction [15].
This article proposes to rearrange the
visitors and so the possible privilege can
be classified according to user's roles, as Connection Relation between Devices
described in Table1. Assume the
possible privilege set is P={Access, The Internet is structured based on
Guest, User, Supuser, Root}, pi(i=1, 2, TCP/IP protocol family, and the current
…5) which presents a visitor privilege. computer networks are generally based
on this protocol. TCP/IP protocol family
includes a lot of protocols which are in
different layers. According to this
technology principle, the connections of
network devices are distributed on
different layers. Ritchery has analyzed
the host connectivity for network
security [16]. In the paper these
connection relations can be expressed as
a set, and then the connection relation
between two devices is a sub-set of this
set.
Assume the connection relations set
between host and devices is

2
Protocol= {pro1, pro2, … pron}, proi H={h1, h2, … hm} to represent these
(i=1, 2, … n ) which presents a devices, and hi(i=1, 2, … m) to represent
connection relation. a single network device.
The connection relations between A host on the network is represented
hosts are represented by a triad (HSRC, by a tuple (HOSTID, OS, SVCS,
HDST, Protocols). HSRC represents the VULS). HOSTID is the unique identifier
source host. HDST represents the of host on the network, it can be the IP
destination host. Protocols are sub-sets address or host name. OS is the type and
of connection relations sets exist version of operation system. SVCS is the
between the source host and the list of network service types with
destination host. When there is no respective network port numbers which
relation between the source host and the describe the services on the host and the
destination host, Protocols is an empty information on service monitor ports.
set. When the source host is the same as VULS is the host computer vulnerability
the destination host, the connection list which may include the security bug
relation is local connection, at this time, information of installed software.
Protocols = {localhost}. In summary, to a system user, the
computer network should be a set which
Vulnerability consists of the above parts, and the SS
( Security Status ) can be described
Vulnerability is a fault caused by an as:
error in the design, development, SS= {(pl, hi), (hj, hk, protocols)}, l=0, 1
configuration, or using of software, …4; i, j, k=1, 2,….m。
malicious attacker may utilize this fault (pl, hi) represents the privilege pl of the
to access unauthorized system resource user to the host hi.
and misuse, violate the security policy, (hj, hk, protocols) represents the
and may be produce security incident. connection relation between hj and hk
We use a set V={vul1, vul2, … witch is known to the user.
vulm}, vuli (i=1, 2, …,n) to represent
vulnerability, and every vulnerability is
represented by a tuple
(BID,NAME,OS,DATE). Attack Process
We use BID to represent the unique
identifier, NAME to represent the name To the attacker who attempts to
of the vulnerability, OS to represent the exploit the target it is a process, which
type and version of operation system needs to be performed step by step. The
which is affected by the vulnerability, harvest of each step may be a singular
and DATE to represent the publish data discrete event, and it presents the
of the vulnerability. escalation of user privilege or addition of
connection relation, so the above
System Devices computer network security status
change.
The devices in the network are the Basically, using a vulnerability to
basic elements of an information system, attack can be seen as a map from a set of
for example, computers, routers, preconditions to a set of results. So an
switches and the like. We use a set attack can be represented by a two-tuples

3
Attack_rule=(Preconditions,Postconditio Attack_rule= ({Src_privilege,
ns ), in which Preconditions is the Dst_privilege, Vuls, Protocols},
preconditions set, Postconditions is {Rslt_privilege, Rslt_protocols,
corresponded results set. Rslt_vuls}).
The preconditions set include four After analyzing the computer network
elements which is represented as security status and attack process, the
Preconditions= {Src_privilege, computer network security status space
Dst_privilege, Vuls, Protocols}. SSP(Security Status Space) should be
Src_privilege represents the lowest represented by the following tuple:
privilege class which attacker should SSP= (SS, AR)
have on the host where the attacks are SS=Security Space.
launched. Dst_privilege represents the It represents all the available sets of
highest privilege class which attacker attack process.
should have on the object host. Vuls AR=Attack Rules=(attack_rule1,
represents the vulnerability which the attack_rule2, …attack_rulen ).
attack rule depend on. Protocols describe It represents the reason of the change
the needed connection relation between security status.
the attack host and the object host.
The results set include three elements
which is represented as Generation of Attack Graph
Preconditions={Rslt_privilege,
Rslt_protocols, Rslt_vuls}. The Node and Edge of Attack Graph
Rslt_privilege describes the privilege
which attacker can get on object host Synthesizing the attacker's
after an attack is successfully completed. starting point and object, host
Rslt_protocols is the network protocols information and network topology
set which is added by attacks. If the information, the graph-based description
attacked host can use the network represents the threat to security of
protocols in this set to access a host on information system, and it is called an
the network, the current attacking host attack graph. According the definition of
can get the ability to access this host. If SSP, the SSP may be used to describe
the attack rule doesn't influence the the attack graph. In this paper, we use
current network connection relation, nodes of attack graphs to represent the
Rslt_protocols will be an empty set. SS. When the node transfers, the SS of
When Rslt_ protocols={all}, this attacker is changed. The directed edges
represents that the current attacking host of attack graphs present the mapping
can get the attacked host's total ability to relations which change with SS.
access the object network. Rslt_vuls is When attack_rule=({Src_consumer,
the newly added vulnerability set on Dst_consumer, Vul,Conn_proto},
attacked host after attack is successfully {Rslt_consummer, Rslt_conn,
implemented, and it describes the Rslt_vuls}),
dependent relation between the directed edge is represented as:
vulnerabilities. (Hsrc, Hdst, attack_rule).
According to the analysis above, the
attack rule can be represented as: Algorithm to Generate Attack route

4
To analyze the network Experiments
security, based on the analysis of
network security incidents and attacker’s We carried out our method in the
actions, we make assumptions as sample networkthat is the same as
follows: Sheyner’s [13].

Assumption 1: The attacker has the Network Environment


powerful attack ability, namely attacker
who knows the vulnerability well in The example network is shown
system has the ability to attack these as Fig. 1. There are two hosts in the
vulnerabilities. internal network, IP1 and IP2, and the
firewall islated the internal network from
Assumption 2: The attacker is external network. The attacker’s host is
sophisticated so that he doesn’t launch IP0 in the external network. The host
an attack to get the privilege that he has information in the internal network is
possessed. shown as Table 3.
In this paper we use a forward-
search, breadth-first and depth-limited
(attack steps limited) attack route
producing algorithm to find the attack
routes, then utilize the tools Graphviz
[17] to generate attack graph. The attack
route producing algorithm is described
as following:
(1) From the initial network state, it
finds all network states the attacker
could get directly, and add these network
states into State queue.
(2) It chooses a state from State
queue as Cur state, and finds all network
states which could be got directly from
Cur state as New states. If a state is new,
then it would be added into State queue.
(3) When the State queue is not
empty, it would return to (2). If the State
queue is empty, the algorithm finishes.
When each attack depends on the
previous attack on attack route, the
attack route is called minimal attack
route. Contrast to the method that has
been previous used [13], our method can
directly find all minimal attack route. At
the same time, in attacker's point of The firewall allows the ftp and the ssh
view, breadth-search guarantees to find packets to communicate with the host
all of the attack routes. IP1 to enter the internal network, and
allows ftp packets to communicate with

5
the host IP2 to enter the internal
network, but interdicts other packets. In
the internal network, connection relation
won't be controlled by firewall, so it can
be assumed that the internal host can
make connection with any remote server.
The connection relation with each other
is described as the following Table 4.

Experiments Results Contrast

In this experiment, the attacker


will attack the internal network using
host IP0, and the attacker has the highest
privilege of ROOT on IP0, However, on Contrasting the result of Sheyner [13],
the other host he just has the lowest our attack graph with attack object is
privilege of ACCESS. The attack object simpler. There are three reasons:
is that obtaining the privilege of ROOT Sheyner takes the IDS as a network
on IP2 according to the Sheyner’s [13]. element, so the space of his model is
After implementing the attack graph lager than ours.
generate tools, the attack graphs we got Sheyner doesn’t consider that the
are shown as Fig. 2 and Fig. 3. Fig. 2 is attacker is sophisticated and the attacker
the result of Sheyner’s and Fig. 3 is our doesn’t launch an attack to get the
result. privilege that he have possessed, so the
model checking tool used by Sheyner
also can’t resolve this condition, so that
the attack graph generated have much
redundancy.
The execution efficiency of the tools
modified NuSMV is lower, so the speed
of attack graph generating is slower.

The attack graph with limited attack


steps

6
To investigate the size of the
attack graph with different attack steps
limited, in this paper, we conduct an
experiment in a network environment
that includes ten hosts, and sixteen
vulnerabilities on the different host. We
assume that the attacker could only
access two network services in the
network. At last, we get the relationship
between the number of the nodes and the
attack steps as shown in Fig. 4, the
relationship between the number of the
edges and the attack steps as shown in
Fig. 5, and the relationship between the
number of the new capability to access
network and the attack steps as shown in
Fig. 6.

7
In the Fig. 4 and the Fig. 5, the number limit the size of the attack graph, and we
of the nodes and the number of the edges could use the attack graph to analyze
increase when the attack step increases. larger network.
In the Fig. 6, we can see that the number
of the new capability to access network Conclusion
increase rapidly in the beginning, but
keeps steady subsequently as the attack The tools to generate attack
steps increase. At present the size of the graph based on security status space for
attack graph will be tremendous when network security analysis are designed
the network is lager [12]. From the Fig. and implemented, and the experiment
4, the Fig.5, and Fig. 6, when we limit indicates the method is usable and
the attack steps in an acceptable scale, effective. Many related research should
although the generated attack graph will be done in the future, the results from
not be complete, we could assure to get network scan tools should be used in the
all of the new capability to access the tools. The generating algorithm should
network. And when the size of the attack be optimized and the method to analyze
graph is larger, the probability of the attack graph should be further studied.
attack arrives at the last nodes becomes
less. So the acceptable attack steps could

References

[5] C.A.Phillips and L.P.Swiler,


[1] Computer Oracle and “A graph-based system for
Password System Network vulnerability analysis”,
(COPS).ftp.cert.org/pub/tools/co In New Security Paradigms
ps. Workshop, 1998, pp. 71-79.
[2] NMAP. [6] R.Ritchey and P.Ammann,
http://www.insecure.org/nmap/in “Using model checking to
dex.html, analyze network vulnerabilities”,
2005. In Proceedings of the IEEE
[3] Nessus. Symposium on Security and
http://www.nessus.org/, 2005. Privacy, MAY 2001, pp 156-165.
[4] ISS. http://www.iss.com/,
2005.

S-ar putea să vă placă și