Download presentation
Presentation is loading. Please wait.
Published byIrma Gibson Modified over 8 years ago
1
Stamping out worms and other Internet pests Miguel Castro Microsoft Research
2
The challenge worms are bad –worms can infect many machines –attacker gains control of infected machines –worm propagation disrupts Internet traffic it is crucial to prevent these attacks –not a new challenge but no solution yet –the problem is as serious as ever
3
Preventing worm infections techniques to prevent bugs are important –type safe languages, static analysis, … –but unlikely to remove all bugs from services need research on worm containment –worms spread too fast for human response –worm containment must be automatic
4
Automatic worm containment previous solutions are network centric –they analyze network traffic –block suspect packets no vulnerability information at network level –false negatives: worm traffic appears normal –false positives: good traffic misclassified –fundamental problem false positives are a barrier to automation
5
End-to-end worm containment host-based cooperative detection –detector runs instrumented software –analyzes infection attempt to generate an alert –distributes alert to other hosts host-based protection –hosts analyze exploit described by alert –generate protection mechanism automatically for example, a filter to block worm packets first steps: Vigilante [Costa et al, SOSP 2005]
6
Better host-based detectors existing detectors are not sufficient –easily bypassed (e.g., stack canaries, NX) –high overhead (e.g., program shepherding) –poor coverage of some attack classes better instrumentation to detect more worms –low false positives and false negatives –widely applicable (ideally to any binary) –low overhead (no alerts if negligible overhead)
7
Better host-based protection robust automatic protection –block all polymorphic variants of detected worms –no false positives –fast inoculation: fast alert distribution, fast deployment of protection efficient protection –provide good performance for legitimate requests –existing high coverage detectors are too expensive –recovery after detection is also expensive
8
Better survivability worm containment will not be perfect must survive compromised hosts –without disruptions to critical services –without loss of critical data better Byzantine fault tolerant replication –keep faults below threshold with high probability
9
Conclusion worms and viruses must be stopped need more research to stop them proposed a new research focus requires research spanning –operating systems, networking, programming languages, and distributed systems
11
Vigilante’s components Detection SCA generation SCA distribution SCA verification Protection
12
Outline self-certifying alerts detection and generation of self-certifying alerts generation of vulnerability filters evaluation next steps
13
Self-certifying alerts identify an application vulnerability –describe how to exploit a vulnerability –contain a log of events, verification information enable hosts to verify if they are vulnerable –hosts modify events to signal verification success –hosts replay events in sandboxed application –there are no false positives enable cooperative worm containment without trust
14
SCA types arbitrary execution control (AEC) –attacker can load a value in message into the PC arbitrary code execution (ACE) –attacker can execute code in message arbitrary function argument (AFA) –attacker can call function with arbitrary argument
15
Verifying an AEC alert vulnerable process normal code verified SCA: message log verification information 0x111111111114444444411111 ReceiveMessage() 0x44444444 proves that external interfaces allow arbitrary control of the execution
16
SCA generation log events generate SCA when worm is detected –compute verification information –search log for relevant events –generate tentative version of SCA –repeat until verification succeeds detectors may guide search –dynamic dataflow analysis is one such detector
17
Dynamic dataflow analysis high coverage and low false positive rate allows direct extraction of verification information return address msg buffer (a)Memory before vulnerable code (b)Memory after vulnerable code id100 id400 stack pointer return address msg buffer id100 id400 id100 id400 stack
18
Cooperative worm containment SCA enables cooperative containment –any host can be a detector –hosts can run high-overhead detection engines –hosts can run different detection engines NX, … –small TCB for SCA verification cooperation enables low false negative rate
19
SCA broadcast uses secure Pastry –hosts join overlay –detectors flood alerts over overlay links denial-of-service prevention –per-link rate limiting –per-hop filtering and verification can reach vulnerable hosts with high probability
20
Protection hosts generate filter from SCA dynamic data and control flow analysis –run vulnerable application in a sandbox –track control and data flow from input messages –compute conditions that determine execution path –filter blocks messages that satisfy conditions filters can block polymorphic worms no false positives by design
21
Vulnerability filter generation mov al,[netbuf] mov cl,0x31 cmp al,cl jne out xor eax,eax loop: mov [esp+eax+4],cl mov cl,[eax+netbuf+1] inc eax test cl,cl jne loop out: Conditions: netbuf[0] == 0x31 netbuf[1] != 0 netbuf[2] != 0 0x310x240x670x420x0 netbuf
22
Evaluation three real worms: –Slammer (SQL server), Blaster (RPC), CodeRed (IIS) measurements of prototype implementation –SCA generation and verification –filter generation –filtering overhead simulations of SCA propagation with attacks
23
Time to generate SCAs
24
Time to verify SCAs
25
Time to generate filters
26
Filtering overhead
27
Containing Slammer
28
Increasing infection rate ß is Slammer’s infection rate (the rate at which a host infects new hosts)
29
Increasing verification time
30
Increasing seed hosts
31
Conclusion Vigilante can contain worms automatically –requires no prior knowledge of vulnerabilities –no false positives –low false negatives
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.