terry lam
play

Terry Lam (with M. Mitzenmacher and G. Varghese) Denial of Service - PowerPoint PPT Presentation

Terry Lam (with M. Mitzenmacher and G. Varghese) Denial of Service Worm outbreak Millions of potentially interesting events How to get a coherent view despite bandwidth and memory limits? Standard solutions: sampling and summarizing


  1. Terry Lam (with M. Mitzenmacher and G. Varghese)

  2. Denial of Service Worm outbreak  Millions of potentially interesting events  How to get a coherent view despite bandwidth and memory limits?  Standard solutions: sampling and summarizing 2

  3.  Need to collect infected stations for remediation  Other examples of complete collection: u List all IPv6 stations u List all MAC addresses in a LAN 3

  4. Slammer Witty B Slammer A Slammer C Witty … signatures A B C Intrusion Detection System (IDS) Management Station 4

  5. LOGGER 1 Sink L B Memory M N  Challenges:  Small logging bandwidth: L < < arrival rate B e.g., L = 1 Mbps; B = 10 Gbps  Small memory: M < < number of sources N  e.g., M = 10,000; N=1 Million  Opportunity:  Persistent sources : sources will keep arriving at the logger 5

  6.  Carousel : new scheme, with minimal memory can log almost all sources in close to optimal time (N/L)  Standard approach is much worse u ln(N) times worse in an optimistic random model u Adding a Bloom filter does not help u Infinitely worse in a deterministic adversarial model 6

  7. sink IDS 2 1 4 3 4 1 memory • Sources 2 and 3 are never collected if pattern repeats • 1 is logged many times • In worst case, N – M (many!) sources can be missed 7

  8. sink IDS Clear Bloom filter? 4 1 1 4 2 1 4 3 4 1 2 4 1 memory Bloom filter  Similar performance to a standard logger u Again, sources 2 and 3 are never collected because of timing Bloom filter is necessarily small (M) compared to sources (N) 8

  9. Congestion Control for Logging?  When input traffic exceeds capacity, standard solution is admission control: but it requires source cooperation  What can a poor resource do to protect itself unilaterally without cooperation from senders?  Our approach: Randomized Admission Control. u Break sources into random groups and “admit” one group at a time for logging

  10. sink IDS Hash to color the sources say red and blue 1 4 3 1 2 4 3 2 1 4 3 1 2 4 3 2 1 3 memory Bloom filter Only red sources are logged in this phase Carousel 10

  11. sink IDS 4 3 2 1 4 3 1 3 4 3 1 2 memory Bloom filter Change color! Carousel 11

  12. sink IDS 1 4 8 2 7 6 4 1 5 4 3 7 1 1 8 4 8 3 memory Bloom filter Bloom filter full Increase Carousel colors Carousel 12

  13.  Partition u H k (X): lower k bits of H(S), a hash function of a source S u Divide the population into partitions with same hash value  Iterate u T = M / L (available memory divided by logging bandwidth) u Each phase last T seconds, corresponds a distinct hash value u Bloom filter weeds out duplicates within a phase  Monitor (to find right partition size) u Increase k if Bloom filter is too full u Decrease k if Bloom filter is too empty 13

  14. Linux PCAP Snort Detection Engine Carousel N Packet of N current color? Timer expires? Y Y Y Packet in Drop Bloom filter? packet Y Bloom filter underflow? N Add packet to Bloom filter N Change color Reduce Increase colors Y Reset timer Bloom filter colors Reset timer Clear Bloom filter overflow? Clear Bloom filter N Snort output module 14

  15.  Carousel is “competitive” in that it can collect almost all sources within a factor of 2 from optimal time u N = sources, L = logging speed, optimal time = N/L u Collection time ≈ 2 N/L,  Example: N = 10,000 M = 500, L = 100 Number of logged sources Optimal 190 Time (sec) 15

  16. Number of logged sources 3900 2100 400 Time (sec)  N = 10,000; M = 500; L = 100 items/sec Carousel is nearly ten times faster than naïve collector  Logistic model of worm growth 16

  17. Snort Experimental Setup Intel Xeon 2.8 GHz 8 cores, 8 GB RAM, 1 TB disk Signature P S log S P traffic generator Snort IDS with and without Carousel  Scaled down from real traffic: 10,000 sources, buffer of 500, input rate =100 Mbps, logging rate = 1 Mbps  Two cases: source S picked randomly on each packet or periodically (1,2,3 . . 10,000, 1, 2, 3, . . )

  18. 180 18000 500 Time (sec) Time (sec) (a) Random traffic pattern (b) Periodic traffic pattern 3 times faster with random and 100 times faster with periodic 18

  19. Carousel logging hardware Compare: lower order Key, record Hash key Bloom filter To remote logger bits of hash = V? from detector V=V+1 clear Timer T  Using 1 Mbit of memory, less than 5% of an ASIC  Can be easily added to hardware IDS/IPS chipsets 19

  20.  High speed implementations of IPS devices u Fast reassembly, normalization and regular expression u No prior work on scalable logging  Alto file system: dynamic and random partitioning u Fits big files into small memory to rebuild file index after crash u Memory is only scarce resource u Carousel handles both limited memory and logging speed u Carousel has a rigorous competitive analysis 20

  21.  Carousel is probabilistic: sources can be missed with low probability  mitigate by changing hash function on each Carousel cycle.  Carousel relies on a “persistent source assumption” u Does not guarantee logging of “one-time” events  Carousel does not prevent duplicates at the sink but has fast collection time even in an adversarial model. 21

  22.  Carousel is a scalable logger that u Collects nearly all persistent sources in nearly optimal time u Is easy to implement in hardware and software u Is a form of randomized admission control  Applicable to a wide range of monitoring tasks with: u High line speed, low memory, and small logging speed u And where sources are persistent 22

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend