ACM Home Page
Please provide us with feedback. Feedback
Vigilante: End-to-end containment of Internet worm epidemics
Full text PdfPdf (1.99 MB)
Source
ACM Transactions on Computer Systems (TOCS) archive
Volume 26 ,  Issue 4  (December 2008) table of contents
Article No. 9  
Year of Publication: 2008
ISSN:0734-2071
Authors
Manuel Costa  University of Cambridge and Microsoft Research, Cambridge, UK
Jon Crowcroft  University of Cambridge, Cambridge, UK
Miguel Castro  Microsoft Research, Cambridge, UK
Antony Rowstron  Microsoft Research, Cambridge, UK
Lidong Zhou  Microsoft Research, Cambridge, UK
Lintao Zhang  Microsoft Research, Cambridge, UK
Paul Barham  Microsoft Research, Cambridge, UK
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 31,   Downloads (12 Months): 402,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1455258.1455259
What is a DOI?

ABSTRACT

Worm containment must be automatic because worms can spread too fast for humans to respond. Recent work proposed network-level techniques to automate worm containment; these techniques have limitations because there is no information about the vulnerabilities exploited by worms at the network level. We propose Vigilante, a new end-to-end architecture to contain worms automatically that addresses these limitations.

In Vigilante, hosts detect worms by instrumenting vulnerable programs to analyze infection attempts. We introduce dynamic data-flow analysis: a broad-coverage host-based algorithm that can detect unknown worms by tracking the flow of data from network messages and disallowing unsafe uses of this data. We also show how to integrate other host-based detection mechanisms into the Vigilante architecture. Upon detection, hosts generate self-certifying alerts (SCAs), a new type of security alert that can be inexpensively verified by any vulnerable host. Using SCAs, hosts can cooperate to contain an outbreak, without having to trust each other. Vigilante broadcasts SCAs over an overlay network that propagates alerts rapidly and resiliently. Hosts receiving an SCA protect themselves by generating filters with vulnerability condition slicing: an algorithm that performs dynamic analysis of the vulnerable program to identify control-flow conditions that lead to successful attacks. These filters block the worm attack and all its polymorphic mutations that follow the execution path identified by the SCA.

Our results show that Vigilante can contain fast-spreading worms that exploit unknown vulnerabilities, and that Vigilante's filters introduce a negligible performance overhead. Vigilante does not require any changes to hardware, compilers, operating systems, or the source code of vulnerable programs; therefore, it can be used to protect current software binaries.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
 
2
Akamai. 2000. Press release: Akamai helps mcafee.com support flash crowds from iloveyou virus.
 
3
4
 
5
 
6
7
8
 
9
10
 
11
 
12
 
13
Biba, K. J. 1977. Integrity considerations for secure computer systems. Tech. Rep. TR-3153, MITRE. April.
 
14
blexim. 2002. Basic integer overflows. Phrack 60.
 
15
Bochs. 2006. Bochs ia-32 emulator. http://bochs.sourceforge.net.
16
 
17
Bruening, D., Duesterwald, E., and Amarasinghe, S. 2001. Design and implementation of a dynamic optimization framework for Windows. In Proceedings of the 4th ACM Workshop on Feedback-Directed and Dynamic Optimization.
 
18
 
19
Bulba and Kil3r. 2000. Bypassing stackguard and stackshield. Phrack 10, 46 (May).
 
20
 
21
Cardelli, L. 2004. Type systems. In The Computer Science and Engineering Handbook. CRC Press.
 
22
 
23
24
 
25
CERT. 2001. Cert advisory ca-2001-26 nimda worm. http://www.cert.org/advisories/ca-2001-26.html.
 
26
CERT. 2005. Technical cyber security alerts. http://www.us-cert.gov.
 
27
 
28
 
29
Chen, Z., Gao, L., and Kwiat, K. 2003. Modelling the spread of active worms. In Proceedings of the 22th IEEE Conference on Computer Communications.
 
30
 
31
Chinchani, R. and van den Berg, E. 2005. A fast static analysis approach to detect exploit code inside network flows. In Proceedings of the 8th International Symposium on Recent Advances in Intrusion Detection.
 
32
 
33
 
34
 
35
36
 
37
Costa, M., Crowcroft, J., Castro, M., and Rowstron, A. 2004. Can we contain Internet worms? In Proceedings of the 3rd Workshop on Hot Topics in Networks.
38
 
39
 
40
 
41
 
42
43
 
44
Dark Spyrit. 1999. Win32 buffer overflows. Phrack 9, 55.
45
46
 
47
48
 
49
Durden, T. 2002. Bypassing pax aslr protection. Phrack 59 (Jul.).
 
50
Eichin, M. W. and Rochlis, J. A. 1989. With microscope and tweezers: An analysis of the Internet virus of November 1988. In Proceedings of the IEEE Symposium on Security and Privacy.
51
52
 
53
 
54
 
55
Fenton, J. 1973. Information protection systems. Ph.D. thesis, University of Cambridge.
 
56
Fenton, J. 1974a. An abstract computer model demonstrating directional information flow. University of Cambridge, Cambridge, UK.
 
57
Fenton, J. S. 1974b. Memoryless subsystems. Comput. J. 17, 2, 143--147.
 
58
 
59
Forescout. 2006. Wormscout. http://www.forescout.com/wormscout.html.
 
60
 
61
 
62
Fraser, K. and Chang, F. 2003. Operating System I/O Speculation: How two invocations are faster than one. In Proceedings of the USENIX Annual Technical Conference.
 
63
Ganesh, A., Gunawardena, D., Key, P., Massoulie, L., and Scott, J. 2006. Efficient quarantining of scanning worms: Optimal detection and coordination. In Proceedings of the 25th IEEE Conference on Computer Communications.
 
64
Ganger, G., Economu, G., and Bielski, S. 2002. Self-Securing network interfaces: What, why and how. Tech. Rep. CS-02-144, Carnegie Mellon University. May.
 
65
Georgatos, F., Gruber, F., Karrenberg, D., Santcroos, M., Uijterwaal, H., and Wilhelm, R. 2001. Providing Active Measurements as a Regular Service for ISPs. http://www.ripe.net/ttm.
 
66
gera and riq. 2002. Advances in format string exploitation. Phrack 59 (Jul.).
 
67
Giffin, J., Jha, S., and Miller, B. P. 2004. Efficient context-sensitive intrusion detection. In Proceedings of the 11th Annual Network and Distributed System Security Symposium.
 
68
Goldenberg, J., Shavitt, Y., Shir, E., and Solomon, S. 2005. Distributive immunization of networks against viruses using the ‘honey pot’ architecture. Nature Phys. 1, 184--188.
 
69
Heberlein, L. T., Dias, G., K, L., Wood, B. M. J., and Wolber, D. 1990. A network security monitor. In Proceedings of the IEEE Symposium on Security and Privacy.
 
70
71
 
72
 
73
Holz, T. and Raynal, F. 2005. Detecting honeypots and other suspicious environments. In Workshop on Information Assurance and Security.
 
74
 
75
Hua, W., Ohlund, J., and Butterklee, B. 1999. Unraveling the mysteries of writing a winsock 2 layered service provider. Microsoft Syst. J.
 
76
 
77
Intel. 1999. Intel architecture software developer's manual, vol. 2: Instruction set reference.
 
78
 
79
 
80
Johnson, S. C. 1984. Lint, a C program checker. In Unix Programmer's Manual, 4.2. Berkeley Software Distribution Supplementary Documents.
 
81
Jones, R. and Kelly, P. 1997. Backwards-Compatible bounds checking for arrays and pointers in C programs. In Proceedings of the International Workshop on Automatic Debugging.
82
 
83
jp. 2003. Advanced doug lea's malloc exploits. Phrack 61 (Sept.).
 
84
 
85
Jung, J., Paxson, V., Berger, A. W., and Balakrishnan, H. 2004. Fast portscan detection using sequential hypothesis testing. In Proceedings of the IEEE Symposium on Security and Privacy.
86
 
87
Kephart, J. O. and Arnold, W. C. 1994. Automatic extraction of computer virus signatures. In International Virus Bulletin Conference.
 
88
Kephart, J. O., Sorkin, G. B., Swimmer, M., and White, S. R. 1997. Blueprint for a computer immune system. In International Virus Bulletin Conference.
 
89
Kephart, J. O. and White, S. R. 1991. Directed-Graph epidemiological models of computer viruses. In Proceedings of the IEEE Symposium on Security and Privacy.
 
90
91
 
92
 
93
Kreibich, C. and Crowcroft, J. 2003. Honeycomb Creating intrusion detection signatures using honeypots. In Proceedings of the 2nd Workshop on Hot Topics in Networks.
 
94
Kruegel, C., Kirda, E., Mutz, D., Robertson, W., and Vigna, G. 2005. Polymorphic worm detection using structural information of executables. In Proceedings of the 8th International Symposium on Recent Advances in Intrusion Detection.
 
95
 
96
 
97
98
 
99
 
100
Locasto, M., Sidiroglou, S., and Keromytis, A. 2006. Software self-healling using collaborative application communities. In Proceedings of the 13th Annual Network and Distributed System Security Symposium.
 
101
Madhavapeddy, A. 2006. Creating high-performance statically type-safe network applications. Ph.D. thesis, University of Cambridge.
 
102
Mirage. 2006. Mirage networks. http://www.miragenetworks.com.
 
103
 
104
105
 
106
Moore, D., Shannon, C., Voelker, G., and Savage, S. 2003. Internet quarantine: Requirements for containing self-propagating code. In Proceedings of the 22th IEEE Conference on Computer Communications.
 
107
Moore, D., Shannon, C., Voelker, G. M., and Savage, S. 2004. Network telescopes: Tech. Rep. CS2004-0795, University of California at San Diego. July.
 
108
109
110
111
 
112
nergal. 2001. The advanced return-into-lib(c) exploits: Pax case study. Phrack 58.
 
113
Nethercote, N. and Seward, J. 2003. Valgrind: A program supervision framework. In Proceedings of the 3rd Workshop on Runtime Verification (RV).
 
114
 
115
Newsome, J. and Song, D. 2005. Dynamic taint analysis for automatic detection, analysis and signature generation of exploits on commodity software. In Proceedings of the 12th Annual Network and Distributed System Security Symposium.
 
116
One, A. 1996. Smashing the stack for fun and profit. Phrack 7, 49 (Nov.).
 
117
Pasupulati, A., Coit, J., Levitt, K., Wu, S. F., Li, S. H., Kuo, J. C., and Fan, K. P. 2004. Buttercup: On network-based detection of polymorphic buffer overflow vulnerabilities. In Proceedings of the IEEE IFIP Network Operations and Management Symposium (NOMS).
 
118
PAX. 2001. PaX system. http://pax.grsecurity.net/.
 
119
 
120
 
121
PERL. 2006. Perl security manual page. http://www.perldoc.com.
122
 
123
 
124
Ptacek, T. H. and Newsham, T. N. 1998. Insertion, evasion, and denial of service: Eluding network intrusion detection. Tech. Rep., Secure Networks, Inc. January.
 
125
QEMU. 2006. Qemu open source processor emulator. http://fabrice.bellard.free.fr/qemu/.
126
127
 
128
 
129
rix@hert.org. 2001. Writing ia32 alphanumeric shellcodes. Phrack 11, 57 (Aug.).
 
130
 
131
Ruwase, O. and Lam, M. 2004. A practical dynamic buffer overflow detector. In Proceedings of the 11th Annual Network and Distributed System Security Symposium.
 
132
Schechter, S., Jung, J., and Berger, A. 2004. Fast detection of scanning worm infections. In Proceedings of the 7th International Symposium on Recent Advances in Intrusion Detection.
 
133
SecurityFocus. 2002. Microsoft jvm class loader buffer overrun vulnerability. http://www.securityfocus.com/bid/6134.
 
134
135
 
136
 
137
 
138
139
 
140
 
141
 
142
Smirnov, A. and Chiueh, T. 2005. DIRA: Automatic detection, identification, and repair of control-hijacking attacks. In Proceedings of the 12th Annual Network and Distributed System Security Symposium.
 
143
 
144
145
 
146
SPEC. Specweb99 benchmark. http://www.spec.org/osg/web99.
 
147
Staniford, S. 2004. Containment of scanning worms in enterprise networks. J. Comput. Secur.
 
148
149
 
150
 
151
Staniford-Chen, S., Crawford, R., Dilger, M., Frank, J., Hoagland, J., Levitt, K., and Zerkle, D. 1996. GrIDS: A graph-based intrusion detection system for large networks. In Proceedings of the 19th National Information Systems Security Conference.
152
 
153
Szor, P. and Ferrie, P. 2001. Hunting for metamorphic. In the International Virus Bulletin Conference.
 
154
Tang, Y. and Chen, S. 2005. Defending against Internet worms: A signature-based approach. In Proceedings of the 24th IEEE Conference on Computer Communications.
 
155
Toth, T. and Kruegel, C. 2002a. Accurate buffer overflow detection via abstract payload execution. In Proceedings of the 5th International Symposium on Recent Advances in Intrusion Detection.
 
156
Toth, T. and Kruegel, C. 2002b. Connection-History based anomaly detection. In the IEEE Information Assurance Workshop.
 
157
TPC. 1999. TPC-C online transaction processing benchmark. http://www.tpc.org/tpcc/default.asp.
 
158
Vendicator. 2001. Stack shield technical info. http://www.angelfire.com/sk/stackshield.
 
159
Vojnović, M. and Ganesh, A. 2005. On the race of worms, alerts and patches. In Proceedings of the 3rd Workshop on Rapid Malcode.
160
 
161
Wagner, D., Foster, J. S., Brewer, E. A., and Aiken, A. 2000. A first step towards automated detection of buffer overrun vulnerabilities. In Proceedings of the 7th Annual Network and Distributed System Security Symposium.
162
 
163
164
 
165
Wang, K., Cretu, G., and Stolfo, S. J. 2005. Anomalous payload-based worm detection and signature generation. In Proceedings of the 8th International Symposium on Recent Advances in Intrusion Detection.
 
166
 
167
 
168
 
169
Weiser, M. 1984. Program slicing. IEEE Trans. Softw. Eng. 10, 4, 352--357.
 
170
Whyte, D., Kranakis, E., and Oorschot, P. C. V. 2005. Dns-Based detection of scanning worms in an enterprise network. In Proceedings of the 12th Annual Network and Distributed System Security Symposium.
 
171
Wilander, J. and Kamkar, M. 2003. A comparison of publicly available tools for dynamic buffer overflow prevention. In Proceedings of the 10th Annual Network and Distributed System Security Symposium.
 
172
 
173
174
 
175
Xu, J., Kalbarczyk, Z., and Iyer, R. K. 2003. Transparent runtime randomization for security. In Proceedings of the IEEE Symposium on Reliability in Distributed Software (SRDS).
 
176
 
177
 
178
Zegura, E., Calvert, K., and Bhattacharjee, S. 1996. How to model an internetwork. In Proceedings of the Annual Joint Conference of the IEEE Computer Communications Societies (IEEE INFOCOM).
 
179
180

Collaborative Colleagues:
Manuel Costa: colleagues
Jon Crowcroft: colleagues
Miguel Castro: colleagues
Antony Rowstron: colleagues
Lidong Zhou: colleagues
Lintao Zhang: colleagues
Paul Barham: colleagues