Home | Research | Personal activity | Linux & Security | Link |
Witty Worm Propagation Modeling ( 09/27/04)
Cliff C. Zou
Most previous worms are "benevolent" worms that do not destroy any resource on compromised computers. "Witty" worm (appeared on March 20, 2004) is the first widely spreading worm that carries a destructive payload. Shannon and Moore from CAIDA have provided a detailed characterization and analysis of Witty worm based on their comprehensive monitored data [2]. What we are interested, however, is to find out how to model the propagation of Witty worm, especially the decreasing dynamics of Witty worm in the following days after its outbreak.
Due to the destructive behavior of Witty worm, we classify it as a "destructive worm". From an attacker's perspective, a destructive worm wants to destroy as many computers as possible, thus it should destroy a compromised computer as soon as possible to prevent people from having time to clean the computer; However, destroying a compromised computer might make the computer unable to send out worm packets to infect others, and thus, prevent the worm from spreading out quickly. Therefore, a destructive worm usually needs to make a trade-off between destroying a computer and holding an infected computer for propagation. Witty worm might be the first test worm written by attackers to understand how to design an effective destructive worm.
As analyzed in [2], after sending out 20,000 infection packets, Witty worm writes 65K data to a
random point of hard disk on a compromised computer, and then repeats this process until the computer is crashed
due to the random destruction of hard disk. Since the destructive data has
fixed size 65KB and is written to a random point of hard disk, each hard-disk destructive writing has a
very small but
constant probability
to crash a compromised computer where
is determined by the computer's operating
system and hard disk size. Suppose a compromised computer is crashed when the worm writes
times
destructive data, then
is a discrete random variable that follows "geometric distribution".
Define "destruction time" as the time interval from
compromising a computer to the crashing of the computer due to Witty's
destructive data. Suppose a compromised computer takes a constant time
to send out 20,000 infection
packets due to its constant network bandwidth, then the destruction time follows geometric distribution,
too. Because
, the geometric
distributed destruction time can be roughly modeled by a continuous "exponential
distribution" with a rate
. Due to differences in network bandwidth and hard disk volume, different
compromised computers have exponential distributed destruction time with different rates
--- we denote
the average "destruction rate" as
.
Denote as the number of crashed computers due to the destruction of Witty
worm. Suppose there are
infectious hosts at time
. In the next small time interval
,
each infected host has the small probability
to be crashed --- regardless of how long the
host has been infected due to the memoryless property of the exponentially
distributed destruction time. Thus on average
infected hosts will be crashed and removed from
from time
to time
(added to
). Taking
,
based on the uniform-scan worm model in [3],
we derive the worm propagation model for Witty worm (which is identical to the
Kermack-Mckendrick epidemic model ):
![]() |
(1) |
![]() |
(2) |
where
is a worm's average scan rate,
is the number of IP addresses in the worm's scanning space.
"Internet Motion
Sensor" (IMS) in Univ. Michigan has monitored Witty's propagation and
provided its propagation curve in [1]. IMS researchers generously shared
the data (in drawing their Witty's propagation figure in [1]) to us, which shows the number of Witty scans per 1000 seconds
observed by IMS on three ``/24" blackhole networks --- it can represent the number of infectious
hosts in the entire Internet
since Witty uniformly scanned the Internet. Researchers in [2] pointed out that Witty
had around 110 initially infected hosts and it infected about 12,000 machines,
hence in our model, we
choose
.
since Witty scanned the entire IPv4 space.
To match the above model
with the monitored data, we need to determine the values of
and
. Fig. 1
shows the monitored data of Witty in red dots, which corresponds to the
infectious population
as time went on.
determines Witty's infection speed, thus we choose
per second in order to fit the the growth part of the Witty propagation curve.
Since the monitored data is very rough with only four data points in the growth
part, this value of
may not be a very accurate estimate. Witty infected almost all vulnerable hosts
in the Internet shortly after
reached its peak, thus the decay part of Witty's propagation curve shown in Fig.
1 is mainly determined by Equation (2) and the average destructive rate
.
We choose
per second in order to fit the decay dynamics of Witty in the first 24 hours of the worm's
outbreak. This value of
means that on average a compromised computer would be crashed
hours after it was compromised. The infectious population
derived from our model is also shown in Fig. 1. This figure shows that our model
could model well the propagation of Witty worm.
![]() |
![]() |
Fig. 1: Infectious population I(t) in the first 24 hours |
Fig. 2: Long-time infectious population I(t) |
When we consider the monitored worm trace over several days, we find
that, as shown in Fig. 2, Witty died out slower than our model predicts. This is because as time went on, Witty infectious computers had a decreasing
average
destruction rate , not a constant rate as
what we use in the above model. Due to hard disk volume
and network bandwidth differences, different Witty-infected computers had very different destruction
time. After Witty worm infected almost all vulnerable computers in the Internet within one hour
[2],
compromised computers with larger destruction rates were crashed first, making the remaining
infectious computers to have a decreasing average destruction rate
as time went on --- the decreasing
made the Witty infectious population
dropped slower than the above model predicts.
In our Witty propagation modeling, we have not
considered other factors that could possibly affect Witty's propagation. For
example, some infected computers could have been patched or filtered out by
people before they were crashed by Witty worm. However, if this factor
played a major role, then the
shown in Fig. 2 should have decreased more quickly in stead of slower than what
our model predicts. Therefore, the same as researchers in [2] said, we believe
the rapid decay in the number of active infected hosts is primarily caused by
Witty's destructive action.
Acknowledgement:
We gratefully thank researchers in Univ. Michigan "Internet Motion Sensor" for providing us their valuable monitoring data on Witty worm.
Reference:
[1]. University of Michigan. "Internet Motion Sensor". http://ims.eecs.umich.edu/architecture.html
[2]. Colleen Shannon and David Moore. "The Spread of the Witty Worm". http://www.caida.org/analysis/security/witty/
[3]. Cliff C. Zou, Don Towsley, and Weibo Gong. "On the Performance of Internet Worm Scanning Strategies", Umass ECE Technical Report TR-03-CSE-07, November, 2003.