poseidon mitigating volumetric ddos attacks with
play

Poseidon: Mitigating Volumetric DDoS Attacks with Programmable - PowerPoint PPT Presentation

Poseidon: Mitigating Volumetric DDoS Attacks with Programmable Switches Menghao Zhang 1 , Guanyu Li 1 , Shicheng Wang 1 , Chang Liu 1 , Ang Chen 2 , Hongxin Hu 3 , Guofei Gu 4 , Qi Li 1 , Mingwei Xu 1 , Jianping Wu 1 1 4 2 3 DDoS Attacks are


  1. Poseidon: Mitigating Volumetric DDoS Attacks with Programmable Switches Menghao Zhang 1 , Guanyu Li 1 , Shicheng Wang 1 , Chang Liu 1 , Ang Chen 2 , Hongxin Hu 3 , Guofei Gu 4 , Qi Li 1 , Mingwei Xu 1 , Jianping Wu 1 1 4 2 3

  2. DDoS Attacks are Getting Worse Increase in scale Corero, 2018 Increase in diversity Help Net Security, 2019 The GitHub Blog, 2018 Datacenter Dynamics, 2016 2

  3. DDoS Defense Today – Traffic Scrubbing Center VM Middlebox Network Function Virtualization Ø High performance Ø Flexible, elastic Ø Expensive, inflexible Ø Low Performance 3 *malware.news

  4. Ideal DDoS Traffic Scrubbing Service Ø Increasing number of IoT botnets Ø Volumetric DDoS attacks Ø New variants of DDoS attacks Flexible Low $$$ Deployment Cost … High Performance 4

  5. New Opportunities: Programmable Switches Parser Program Header and Data Declarations Tables and Control Flow header_type ethernet_t { … } table port_table { … } parser parse_ethernet { extract (ethernet); header_type l2_metadata_t { … } control ingress { return switch (ethernet.ethertype) { apply (port_table); 0x8100 : parse_vlan_tag; header ethernet_t ethernet; if (l2_meta.vlan_tags == 0) { 0x0800 : parse_ipv4; header vlan_tag_t process_assign_vlan(); 0x8847 : parse_mpls; vlan_tag[2]; } default: ingress; metadata l2_metadata_t l2_meta; } } Memory ALU Programmable Programmable Match-Action Pipeline Parser 5 *www.barefootnetworks.com

  6. New Opportunities: Programmable Switches Ø Programmed using P4 • Flexibility to support future defenses Ø Same power and cost as fixed-function switches • Lower unit capital cost Ø Programs always run at line-rate • High packet processing performance Poseidon: Bring these benefits to DDoS defense 6

  7. Poseidon System Overview • Deployment scenario Attack – Traffic scrubbing center Detection • Threat model Defense Policies – Volumetric and Dynamic DDoS attacks against victims Resource Runtime Orchestration Management • Workflow Control Plane Attack traffic Infrastructure – Attack detection Server Server – Policy declaration Server Legitimate Legitimate traffic traffic – Attack mitigation 7

  8. Poseidon Design Challenges • Policy representation – Accommodate to heterogeneous DDoS defense mechanisms • Resource orchestration – Limited on-chip resources and restrictive computational models in switching ASICs • Handling dynamic attacks – Naively recompile the P4 program for switches • State loss and flow interruption – Update the defenses when all flow states are no longer needed • Waste of precious and high-density defense resources (i.e., switching ASICs) 8

  9. 1. Expressing Defense Policies • Observation – Key components common to many volumetric attacks • Adapted from NetCore [ POPL’12 ] – High modularity – High-level abstractions and customizations for DDoS defense Details in our paper! 9

  10. 1. Policy Example • SYN Flood Defense P4 : 91 lines of code POSEIDON : 9 lines of code 10

  11. 2. Analyzing Defense Primitives • Monitor • Policy declaration – count( P , h, every) and aggr( P , – if...else... h, every) • tag-based match-action • count-min sketches – composition operator | • Actions • prefers the stricter action – Switch only • Flow affinity • drop , pass , rlimit and sproxy – bidirectional semantics – Switch assisted • hash 1 (pkt.src) + hash 2 (pkt.dst) • log – Server only • puzzle 11

  12. 2. Placing Defense Primitives Solving this partition problem using SYN flood DNS amplification HTTP flood Integer Linear Program (ILP) Resources? Reduce Load? 12

  13. 2. Partition ILP Programmable Programmable Persistent Persistent Persistent Persistent Constraints Parser Deparser State State State State Stateful Memory ALU ALU ALU ALU Number of Actions Memory Memory Memory Memory Total Stages Node Order Goal: Minimize packets sending to servers 13

  14. 3. Handling Dynamic Attacks • Key idea – Copy necessary states in the switches to servers • States requiring replication – Identify the states which will still take effect for legitimate S S S S S S traffic even when attacks finish • Approach to replication – Distribute the replication overhead across a period – Spread the traffic from a switch across a set of servers 14

  15. Implementation & Evaluation • Implementation – Policy primitives • P4 for switch part • DPDK for server part – Resource orchestration • Policy enforcement engine – Runtime management • Switch/server interface • State replication mechanism • Evaluation – Real-world testbeds + Trace-driven evaluations 15

  16. Overall Effectiveness Throughput restoration for legitimate flows End-to-end latency in traffic during attacks scrubbing center Poseidon can mitigate DDoS attacks effectively 16

  17. Policy Expressiveness SYN flood defense DNS amplification defense HTTP flood defense SlowLoris defense UDP flood defense Elephant flow defense 17

  18. Policy Expressiveness • Lines of Code 18

  19. Policy Expressiveness Poseidon can support a wide range of state-of-the-art DDoS defense mechanisms easily 19

  20. Policy Placement Mechanism Traffic arriving at servers Poseidon can orchestrate the defense resources efficiently 20

  21. Dynamic DDoS Attacks < 4% Received packets before/after Broken connections before/after Control traffic/workload policy transition policy transition (packet loss) traffic ratio (flow interruption) Poseidon can cope with dynamic DDoS attacks effectively with minor overheads 21

  22. Conclusion • DDoS defense today: expensive , inflexible , and low performance • Poseidon: programmable switches for cost-efficient , flexible and performant DDoS defense • Key challenges: heterogeneity, resource constraint, dynamic • Main solutions: – Simple, modular policy representation – Optimized, efficient defense orchestration – Handling dynamic attacks at runtime • Highly effective in mitigating modern DDoS attacks 22

  23. Thanks! Q&A zhangmh16@mails.tsinghua.edu.cn 23

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