SlideShare a Scribd company logo
1 of 22
New weapon for neutron-fwaas:
L7 firewall API
Nguyen Phuong An
1Vietnam OpenInfra day 2018
The preface
This short talk show my knowledge about L7
layer filtering from point of view of a man, who
haven’t had much experience about security
and trying to understand ‘the world of network’.
Please free feel to discuss.
Thanks in advance!
2Vietnam OpenInfra day 2018
Abstract
Defense in depth
L7 firewall API
HTTP over TCP
Iptables or BPF
SQLinjection
XSS attack
Extension
Apply on VM port
Deny URL
3Vietnam OpenInfra day 2018
Agenda
• Who am I?
• Motivation
• How L7 firewall API look like
• API Driver
• Future of Firewall
• Demo driver concept
4Vietnam OpenInfra day 2018
Who am I?
• My name: Nguyen Phuong An
• Neutron developer
– Co-author of Neutron packet logging framework
– Active contributor for Neutron fwaas
– Develop deployment neutron-api via wsgi feature
• IRC: annp
• Email: annp.cs51@gmail.com
• Recently, Rust is my favorite language.
5Vietnam OpenInfra day 2018
Motivation
• Defense in depth
– More layer more secure
• Standard firewall:
– Define security rule base protocol and port
Web-app
GET /health
User
PUT /store/{id}
unexpected
OK
Allow
TCP
port
80
Security hole!
6Vietnam OpenInfra day 2018
Motivation
• Append L7 layer filtering
– Examine the payload of a packet and make
decisions based on content.
Web-app
GET /health
User
PUT /store/{id}
unexpected
OK Allow
TCP
port
80
Allow
GET
/healt
h
7Vietnam OpenInfra day 2018
Motivation
• With L7 firewall API:
– Allow to restrict SQLInjection, XSS attack,..
– Allow to block unexpected URL
– …
8Vietnam OpenInfra day 2018
How L7 firewall API look like
• How API work:
– Filtering base on:
• URL string: Accept/drop a request from/to domain
• HTTP header: Accept/drop based POST/PUT/GET
method.
• HTTP body: drop based pattern SQLInjection, XSS, …
9Vietnam OpenInfra day 2018
How L7 firewall API look like
• Which protocols are supported?
– HTTP over TCP only as first proposal.
– In future, support other protocols like p2p, ftp …
• Where L7 rule is applied?
– Instance port level as first proposal (E-W traffic)
– In future router-interface port (N-S traffic)
10Vietnam OpenInfra day 2018
How L7 firewall API look like
• How L7 firewall API is designed:
– The API will be designed as a Extension API of
Firewall Plugin V2.
• Allow to enable/disable L7 firewall API if need
11Vietnam OpenInfra day 2018
How L7 firewall API look like
• How L7 rule is define:
– Extend Firewall Rule with new attributes:
12Vietnam OpenInfra day 2018
How L7 firewall API look like
• L7 attribute would includes:
• type: [‘url', ‘header', ‘body', ‘cookie']
• compare_type: [‘contain', ‘starts_with’, ‘ends_with', ‘regex',
‘equal_to']
• value: a string, e.g: ‘POST /v2/example’
• action: DROP/ACCEPT
– Action LOG and STATS should propose in neutron-packet-logging
https://docs.openstack.org/neutron/rocky/admin/config-
logging.html
13Vietnam OpenInfra day 2018
How L7 firewall API look like
• How L7 attribute would define:
– http://paste.openstack.org/show/728183/
• Firewall rule would look like:
– http://paste.openstack.org/show/728180/
14Vietnam OpenInfra day 2018
API Driver
• How API driver work
GET v2/example
15
L3 rules L7 rules
HTTP_FILTER
Drop
Allow
Default Policy
DROP
Default Policy
ALLOW
allow
drop
Vietnam OpenInfra day 2018
API Driver
• Possible implementation:
– Iptables or XDP & eBPF:
• Iptables based: old fashioned!
– e.g l7_filter
• XDP & eBPF based: is trending.
– integrate with Cilium
– Building a http filter from scratch with bcc
– Other:
• Integrate with nDPI
16Vietnam OpenInfra day 2018
API Driver
• As a Proof of Concept:
– Trying to implement http_filter with XDP & eBPF
• Pros:
– Flexible in design
• Cons:
– Take time to develop and test
17Vietnam OpenInfra day 2018
API Driver
• In future:
– Integrate with Cilium or nDPI:
• Pros:
– Developed & tested
• Cons:
– Need time to customize to match our requirement
– Depends on third party release schedule
18Vietnam OpenInfra day 2018
API Driver
• How HTTP_FILTER is implement:
19
TC ingress
HTTP_FILTER
Bcc python app
GET v2/example
BPF_MAP
User space
Kernel
NetDevice Network stack TC egress NetDevice
HTTP_FILTER
BPF bytecode
Vietnam OpenInfra day 2018
API Driver
• Show me the code:
– https://github.com/annp1987/http_filter_with_xdp
• Will support L7 firewall API in Stein cycle?
– Maybe, Yes!
20Vietnam OpenInfra day 2018
Future of Firewall
Neutron FWaaS + Neutron-Packet-Logging + ELK
= ML Firewall
21Vietnam OpenInfra day 2018
Demo driver concept
22Vietnam OpenInfra day 2018

More Related Content

What's hot

Experience on-freeswitch-cluecon2011
Experience on-freeswitch-cluecon2011Experience on-freeswitch-cluecon2011
Experience on-freeswitch-cluecon2011seven1240
 
Common WebRTC mistakesand how to avoid them (RTC Expo 2019)
Common WebRTC mistakesand how to avoid them (RTC Expo 2019)Common WebRTC mistakesand how to avoid them (RTC Expo 2019)
Common WebRTC mistakesand how to avoid them (RTC Expo 2019)Tsahi Levent-levi
 
Introduction to Data Models & Cisco's NextGen Device Level APIs: an overview
Introduction to Data Models & Cisco's NextGen Device Level APIs: an overviewIntroduction to Data Models & Cisco's NextGen Device Level APIs: an overview
Introduction to Data Models & Cisco's NextGen Device Level APIs: an overviewCisco DevNet
 
Matrix, The Year To Date, Ben Parsons, TADSummit 2018
Matrix, The Year To Date, Ben Parsons, TADSummit 2018Matrix, The Year To Date, Ben Parsons, TADSummit 2018
Matrix, The Year To Date, Ben Parsons, TADSummit 2018Alan Quayle
 
Oracle - WebRTC Pre-conference TADSummit Workshop
Oracle - WebRTC Pre-conference TADSummit WorkshopOracle - WebRTC Pre-conference TADSummit Workshop
Oracle - WebRTC Pre-conference TADSummit Workshopantonry
 
DEVNET-1166 Open SDN Controller APIs
DEVNET-1166	Open SDN Controller APIsDEVNET-1166	Open SDN Controller APIs
DEVNET-1166 Open SDN Controller APIsCisco DevNet
 
Open source tools for logic synthesis and soc design an overview
Open source tools for logic synthesis and soc design  an overviewOpen source tools for logic synthesis and soc design  an overview
Open source tools for logic synthesis and soc design an overviewVaibhav R
 
Brushing skills on SignalR for ASP.NET developers
Brushing skills on SignalR for ASP.NET developersBrushing skills on SignalR for ASP.NET developers
Brushing skills on SignalR for ASP.NET developersONE BCG
 
SDN in the Management Plane: OpenConfig and Streaming Telemetry
SDN in the Management Plane: OpenConfig and Streaming TelemetrySDN in the Management Plane: OpenConfig and Streaming Telemetry
SDN in the Management Plane: OpenConfig and Streaming TelemetryAnees Shaikh
 
WebRTC is READY. What's Next?
WebRTC is READY. What's Next?WebRTC is READY. What's Next?
WebRTC is READY. What's Next?Tsahi Levent-levi
 

What's hot (13)

Experience on-freeswitch-cluecon2011
Experience on-freeswitch-cluecon2011Experience on-freeswitch-cluecon2011
Experience on-freeswitch-cluecon2011
 
Common WebRTC mistakesand how to avoid them (RTC Expo 2019)
Common WebRTC mistakesand how to avoid them (RTC Expo 2019)Common WebRTC mistakesand how to avoid them (RTC Expo 2019)
Common WebRTC mistakesand how to avoid them (RTC Expo 2019)
 
Introduction to Data Models & Cisco's NextGen Device Level APIs: an overview
Introduction to Data Models & Cisco's NextGen Device Level APIs: an overviewIntroduction to Data Models & Cisco's NextGen Device Level APIs: an overview
Introduction to Data Models & Cisco's NextGen Device Level APIs: an overview
 
WebRTC DataChannels demystified
WebRTC DataChannels demystifiedWebRTC DataChannels demystified
WebRTC DataChannels demystified
 
Matrix, The Year To Date, Ben Parsons, TADSummit 2018
Matrix, The Year To Date, Ben Parsons, TADSummit 2018Matrix, The Year To Date, Ben Parsons, TADSummit 2018
Matrix, The Year To Date, Ben Parsons, TADSummit 2018
 
Oracle - WebRTC Pre-conference TADSummit Workshop
Oracle - WebRTC Pre-conference TADSummit WorkshopOracle - WebRTC Pre-conference TADSummit Workshop
Oracle - WebRTC Pre-conference TADSummit Workshop
 
DEVNET-1166 Open SDN Controller APIs
DEVNET-1166	Open SDN Controller APIsDEVNET-1166	Open SDN Controller APIs
DEVNET-1166 Open SDN Controller APIs
 
Open source tools for logic synthesis and soc design an overview
Open source tools for logic synthesis and soc design  an overviewOpen source tools for logic synthesis and soc design  an overview
Open source tools for logic synthesis and soc design an overview
 
SignalR
SignalRSignalR
SignalR
 
Rina sim workshop
Rina sim workshopRina sim workshop
Rina sim workshop
 
Brushing skills on SignalR for ASP.NET developers
Brushing skills on SignalR for ASP.NET developersBrushing skills on SignalR for ASP.NET developers
Brushing skills on SignalR for ASP.NET developers
 
SDN in the Management Plane: OpenConfig and Streaming Telemetry
SDN in the Management Plane: OpenConfig and Streaming TelemetrySDN in the Management Plane: OpenConfig and Streaming Telemetry
SDN in the Management Plane: OpenConfig and Streaming Telemetry
 
WebRTC is READY. What's Next?
WebRTC is READY. What's Next?WebRTC is READY. What's Next?
WebRTC is READY. What's Next?
 

Similar to L7 firewall API for Neutron-FWaaS

Cisco CSIRT Case Study: Forensic Investigations with NetFlow
Cisco CSIRT Case Study: Forensic Investigations with NetFlowCisco CSIRT Case Study: Forensic Investigations with NetFlow
Cisco CSIRT Case Study: Forensic Investigations with NetFlowLancope, Inc.
 
The Kubernetes Gateway API and its role in Cloud Native API Management
The Kubernetes Gateway API and its role in Cloud Native API ManagementThe Kubernetes Gateway API and its role in Cloud Native API Management
The Kubernetes Gateway API and its role in Cloud Native API ManagementNuwan Dias
 
AIDevWorldApacheNiFi101
AIDevWorldApacheNiFi101AIDevWorldApacheNiFi101
AIDevWorldApacheNiFi101Timothy Spann
 
ApacheCon 2021 - Apache NiFi Deep Dive 300
ApacheCon 2021 - Apache NiFi Deep Dive 300ApacheCon 2021 - Apache NiFi Deep Dive 300
ApacheCon 2021 - Apache NiFi Deep Dive 300Timothy Spann
 
apidays LIVE Paris - Potential of API integrations, common traps and advices ...
apidays LIVE Paris - Potential of API integrations, common traps and advices ...apidays LIVE Paris - Potential of API integrations, common traps and advices ...
apidays LIVE Paris - Potential of API integrations, common traps and advices ...apidays
 
Accelerating Software Development with NetApp's P4flex
Accelerating Software Development with NetApp's P4flexAccelerating Software Development with NetApp's P4flex
Accelerating Software Development with NetApp's P4flexPerforce
 
How do async ap is survive in a rest world
How do async ap is survive in a rest world How do async ap is survive in a rest world
How do async ap is survive in a rest world Red Hat
 
2022 APIsecure_Securing APIs with Open Standards
2022 APIsecure_Securing APIs with Open Standards2022 APIsecure_Securing APIs with Open Standards
2022 APIsecure_Securing APIs with Open StandardsAPIsecure_ Official
 
apidays Paris 2019 - How Do Async APIs Survive in a Rest World? by Luca Ferra...
apidays Paris 2019 - How Do Async APIs Survive in a Rest World? by Luca Ferra...apidays Paris 2019 - How Do Async APIs Survive in a Rest World? by Luca Ferra...
apidays Paris 2019 - How Do Async APIs Survive in a Rest World? by Luca Ferra...apidays
 
Building Modern Digital Services on Scalable Private Government Infrastructur...
Building Modern Digital Services on Scalable Private Government Infrastructur...Building Modern Digital Services on Scalable Private Government Infrastructur...
Building Modern Digital Services on Scalable Private Government Infrastructur...Andrés Colón Pérez
 
Building OPNFV as a Platform
Building OPNFV as a PlatformBuilding OPNFV as a Platform
Building OPNFV as a PlatformOPNFV
 
Developing Brilliant and Powerful APIs in Ruby & Python
Developing Brilliant and Powerful APIs in Ruby & PythonDeveloping Brilliant and Powerful APIs in Ruby & Python
Developing Brilliant and Powerful APIs in Ruby & PythonSmartBear
 
Building high performance microservices in finance with Apache Thrift
Building high performance microservices in finance with Apache ThriftBuilding high performance microservices in finance with Apache Thrift
Building high performance microservices in finance with Apache ThriftRX-M Enterprises LLC
 
Cilium - Network security for microservices
Cilium - Network security for microservicesCilium - Network security for microservices
Cilium - Network security for microservicesThomas Graf
 
FIWARE Tech Summit - Building Your Own IoT Agent
FIWARE Tech Summit - Building Your Own IoT AgentFIWARE Tech Summit - Building Your Own IoT Agent
FIWARE Tech Summit - Building Your Own IoT AgentFIWARE
 
Ipv6 tutorial
Ipv6 tutorialIpv6 tutorial
Ipv6 tutorialsaryu2011
 
"In love with Open Source : Past, Present and Future" : Keynote OSDConf 2014
"In love with Open Source : Past, Present and Future" : Keynote OSDConf 2014"In love with Open Source : Past, Present and Future" : Keynote OSDConf 2014
"In love with Open Source : Past, Present and Future" : Keynote OSDConf 2014Piyush Kumar
 
DevOps of Python applications using OpenShift (Italian version)
DevOps of Python applications using OpenShift (Italian version)DevOps of Python applications using OpenShift (Italian version)
DevOps of Python applications using OpenShift (Italian version)Francesco Fiore
 
INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...
INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...
INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...apidays
 

Similar to L7 firewall API for Neutron-FWaaS (20)

Cisco CSIRT Case Study: Forensic Investigations with NetFlow
Cisco CSIRT Case Study: Forensic Investigations with NetFlowCisco CSIRT Case Study: Forensic Investigations with NetFlow
Cisco CSIRT Case Study: Forensic Investigations with NetFlow
 
The Kubernetes Gateway API and its role in Cloud Native API Management
The Kubernetes Gateway API and its role in Cloud Native API ManagementThe Kubernetes Gateway API and its role in Cloud Native API Management
The Kubernetes Gateway API and its role in Cloud Native API Management
 
AIDevWorldApacheNiFi101
AIDevWorldApacheNiFi101AIDevWorldApacheNiFi101
AIDevWorldApacheNiFi101
 
ApacheCon 2021 - Apache NiFi Deep Dive 300
ApacheCon 2021 - Apache NiFi Deep Dive 300ApacheCon 2021 - Apache NiFi Deep Dive 300
ApacheCon 2021 - Apache NiFi Deep Dive 300
 
apidays LIVE Paris - Potential of API integrations, common traps and advices ...
apidays LIVE Paris - Potential of API integrations, common traps and advices ...apidays LIVE Paris - Potential of API integrations, common traps and advices ...
apidays LIVE Paris - Potential of API integrations, common traps and advices ...
 
Accelerating Software Development with NetApp's P4flex
Accelerating Software Development with NetApp's P4flexAccelerating Software Development with NetApp's P4flex
Accelerating Software Development with NetApp's P4flex
 
How do async ap is survive in a rest world
How do async ap is survive in a rest world How do async ap is survive in a rest world
How do async ap is survive in a rest world
 
2022 APIsecure_Securing APIs with Open Standards
2022 APIsecure_Securing APIs with Open Standards2022 APIsecure_Securing APIs with Open Standards
2022 APIsecure_Securing APIs with Open Standards
 
apidays Paris 2019 - How Do Async APIs Survive in a Rest World? by Luca Ferra...
apidays Paris 2019 - How Do Async APIs Survive in a Rest World? by Luca Ferra...apidays Paris 2019 - How Do Async APIs Survive in a Rest World? by Luca Ferra...
apidays Paris 2019 - How Do Async APIs Survive in a Rest World? by Luca Ferra...
 
Building Modern Digital Services on Scalable Private Government Infrastructur...
Building Modern Digital Services on Scalable Private Government Infrastructur...Building Modern Digital Services on Scalable Private Government Infrastructur...
Building Modern Digital Services on Scalable Private Government Infrastructur...
 
Building OPNFV as a Platform
Building OPNFV as a PlatformBuilding OPNFV as a Platform
Building OPNFV as a Platform
 
Developing Brilliant and Powerful APIs in Ruby & Python
Developing Brilliant and Powerful APIs in Ruby & PythonDeveloping Brilliant and Powerful APIs in Ruby & Python
Developing Brilliant and Powerful APIs in Ruby & Python
 
Building high performance microservices in finance with Apache Thrift
Building high performance microservices in finance with Apache ThriftBuilding high performance microservices in finance with Apache Thrift
Building high performance microservices in finance with Apache Thrift
 
Cilium - Network security for microservices
Cilium - Network security for microservicesCilium - Network security for microservices
Cilium - Network security for microservices
 
FIWARE Tech Summit - Building Your Own IoT Agent
FIWARE Tech Summit - Building Your Own IoT AgentFIWARE Tech Summit - Building Your Own IoT Agent
FIWARE Tech Summit - Building Your Own IoT Agent
 
Ipv6 tutorial
Ipv6 tutorialIpv6 tutorial
Ipv6 tutorial
 
Ipv6 tutorial
Ipv6 tutorialIpv6 tutorial
Ipv6 tutorial
 
"In love with Open Source : Past, Present and Future" : Keynote OSDConf 2014
"In love with Open Source : Past, Present and Future" : Keynote OSDConf 2014"In love with Open Source : Past, Present and Future" : Keynote OSDConf 2014
"In love with Open Source : Past, Present and Future" : Keynote OSDConf 2014
 
DevOps of Python applications using OpenShift (Italian version)
DevOps of Python applications using OpenShift (Italian version)DevOps of Python applications using OpenShift (Italian version)
DevOps of Python applications using OpenShift (Italian version)
 
INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...
INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...
INTERFACE by apidays_What's your Type? Understanding API Types and Choosing t...
 

Recently uploaded

NEWLETTER FRANCE HELICES/ SDS SURFACE DRIVES - MAY 2024
NEWLETTER FRANCE HELICES/ SDS SURFACE DRIVES - MAY 2024NEWLETTER FRANCE HELICES/ SDS SURFACE DRIVES - MAY 2024
NEWLETTER FRANCE HELICES/ SDS SURFACE DRIVES - MAY 2024EMMANUELLEFRANCEHELI
 
electrical installation and maintenance.
electrical installation and maintenance.electrical installation and maintenance.
electrical installation and maintenance.benjamincojr
 
Operating System chapter 9 (Virtual Memory)
Operating System chapter 9 (Virtual Memory)Operating System chapter 9 (Virtual Memory)
Operating System chapter 9 (Virtual Memory)NareenAsad
 
21scheme vtu syllabus of visveraya technological university
21scheme vtu syllabus of visveraya technological university21scheme vtu syllabus of visveraya technological university
21scheme vtu syllabus of visveraya technological universityMohd Saifudeen
 
Final DBMS Manual (2).pdf final lab manual
Final DBMS Manual (2).pdf final lab manualFinal DBMS Manual (2).pdf final lab manual
Final DBMS Manual (2).pdf final lab manualBalamuruganV28
 
Augmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptxAugmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptxMustafa Ahmed
 
Low Altitude Air Defense (LAAD) Gunner’s Handbook
Low Altitude Air Defense (LAAD) Gunner’s HandbookLow Altitude Air Defense (LAAD) Gunner’s Handbook
Low Altitude Air Defense (LAAD) Gunner’s HandbookPeterJack13
 
Performance enhancement of machine learning algorithm for breast cancer diagn...
Performance enhancement of machine learning algorithm for breast cancer diagn...Performance enhancement of machine learning algorithm for breast cancer diagn...
Performance enhancement of machine learning algorithm for breast cancer diagn...IJECEIAES
 
Artificial Intelligence in due diligence
Artificial Intelligence in due diligenceArtificial Intelligence in due diligence
Artificial Intelligence in due diligencemahaffeycheryld
 
Introduction to Artificial Intelligence and History of AI
Introduction to Artificial Intelligence and History of AIIntroduction to Artificial Intelligence and History of AI
Introduction to Artificial Intelligence and History of AISheetal Jain
 
UNIT 4 PTRP final Convergence in probability.pptx
UNIT 4 PTRP final Convergence in probability.pptxUNIT 4 PTRP final Convergence in probability.pptx
UNIT 4 PTRP final Convergence in probability.pptxkalpana413121
 
litvinenko_Henry_Intrusion_Hong-Kong_2024.pdf
litvinenko_Henry_Intrusion_Hong-Kong_2024.pdflitvinenko_Henry_Intrusion_Hong-Kong_2024.pdf
litvinenko_Henry_Intrusion_Hong-Kong_2024.pdfAlexander Litvinenko
 
The Entity-Relationship Model(ER Diagram).pptx
The Entity-Relationship Model(ER Diagram).pptxThe Entity-Relationship Model(ER Diagram).pptx
The Entity-Relationship Model(ER Diagram).pptxMANASINANDKISHORDEOR
 
Diploma Engineering Drawing Qp-2024 Ece .pdf
Diploma Engineering Drawing Qp-2024 Ece .pdfDiploma Engineering Drawing Qp-2024 Ece .pdf
Diploma Engineering Drawing Qp-2024 Ece .pdfJNTUA
 
analog-vs-digital-communication (concept of analog and digital).pptx
analog-vs-digital-communication (concept of analog and digital).pptxanalog-vs-digital-communication (concept of analog and digital).pptx
analog-vs-digital-communication (concept of analog and digital).pptxKarpagam Institute of Teechnology
 
Seismic Hazard Assessment Software in Python by Prof. Dr. Costas Sachpazis
Seismic Hazard Assessment Software in Python by Prof. Dr. Costas SachpazisSeismic Hazard Assessment Software in Python by Prof. Dr. Costas Sachpazis
Seismic Hazard Assessment Software in Python by Prof. Dr. Costas SachpazisDr.Costas Sachpazis
 
Autodesk Construction Cloud (Autodesk Build).pptx
Autodesk Construction Cloud (Autodesk Build).pptxAutodesk Construction Cloud (Autodesk Build).pptx
Autodesk Construction Cloud (Autodesk Build).pptxMustafa Ahmed
 
AI in Healthcare Innovative use cases and applications.pdf
AI in Healthcare Innovative use cases and applications.pdfAI in Healthcare Innovative use cases and applications.pdf
AI in Healthcare Innovative use cases and applications.pdfmahaffeycheryld
 
Worksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptxWorksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptxMustafa Ahmed
 
Involute of a circle,Square, pentagon,HexagonInvolute_Engineering Drawing.pdf
Involute of a circle,Square, pentagon,HexagonInvolute_Engineering Drawing.pdfInvolute of a circle,Square, pentagon,HexagonInvolute_Engineering Drawing.pdf
Involute of a circle,Square, pentagon,HexagonInvolute_Engineering Drawing.pdfJNTUA
 

Recently uploaded (20)

NEWLETTER FRANCE HELICES/ SDS SURFACE DRIVES - MAY 2024
NEWLETTER FRANCE HELICES/ SDS SURFACE DRIVES - MAY 2024NEWLETTER FRANCE HELICES/ SDS SURFACE DRIVES - MAY 2024
NEWLETTER FRANCE HELICES/ SDS SURFACE DRIVES - MAY 2024
 
electrical installation and maintenance.
electrical installation and maintenance.electrical installation and maintenance.
electrical installation and maintenance.
 
Operating System chapter 9 (Virtual Memory)
Operating System chapter 9 (Virtual Memory)Operating System chapter 9 (Virtual Memory)
Operating System chapter 9 (Virtual Memory)
 
21scheme vtu syllabus of visveraya technological university
21scheme vtu syllabus of visveraya technological university21scheme vtu syllabus of visveraya technological university
21scheme vtu syllabus of visveraya technological university
 
Final DBMS Manual (2).pdf final lab manual
Final DBMS Manual (2).pdf final lab manualFinal DBMS Manual (2).pdf final lab manual
Final DBMS Manual (2).pdf final lab manual
 
Augmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptxAugmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptx
 
Low Altitude Air Defense (LAAD) Gunner’s Handbook
Low Altitude Air Defense (LAAD) Gunner’s HandbookLow Altitude Air Defense (LAAD) Gunner’s Handbook
Low Altitude Air Defense (LAAD) Gunner’s Handbook
 
Performance enhancement of machine learning algorithm for breast cancer diagn...
Performance enhancement of machine learning algorithm for breast cancer diagn...Performance enhancement of machine learning algorithm for breast cancer diagn...
Performance enhancement of machine learning algorithm for breast cancer diagn...
 
Artificial Intelligence in due diligence
Artificial Intelligence in due diligenceArtificial Intelligence in due diligence
Artificial Intelligence in due diligence
 
Introduction to Artificial Intelligence and History of AI
Introduction to Artificial Intelligence and History of AIIntroduction to Artificial Intelligence and History of AI
Introduction to Artificial Intelligence and History of AI
 
UNIT 4 PTRP final Convergence in probability.pptx
UNIT 4 PTRP final Convergence in probability.pptxUNIT 4 PTRP final Convergence in probability.pptx
UNIT 4 PTRP final Convergence in probability.pptx
 
litvinenko_Henry_Intrusion_Hong-Kong_2024.pdf
litvinenko_Henry_Intrusion_Hong-Kong_2024.pdflitvinenko_Henry_Intrusion_Hong-Kong_2024.pdf
litvinenko_Henry_Intrusion_Hong-Kong_2024.pdf
 
The Entity-Relationship Model(ER Diagram).pptx
The Entity-Relationship Model(ER Diagram).pptxThe Entity-Relationship Model(ER Diagram).pptx
The Entity-Relationship Model(ER Diagram).pptx
 
Diploma Engineering Drawing Qp-2024 Ece .pdf
Diploma Engineering Drawing Qp-2024 Ece .pdfDiploma Engineering Drawing Qp-2024 Ece .pdf
Diploma Engineering Drawing Qp-2024 Ece .pdf
 
analog-vs-digital-communication (concept of analog and digital).pptx
analog-vs-digital-communication (concept of analog and digital).pptxanalog-vs-digital-communication (concept of analog and digital).pptx
analog-vs-digital-communication (concept of analog and digital).pptx
 
Seismic Hazard Assessment Software in Python by Prof. Dr. Costas Sachpazis
Seismic Hazard Assessment Software in Python by Prof. Dr. Costas SachpazisSeismic Hazard Assessment Software in Python by Prof. Dr. Costas Sachpazis
Seismic Hazard Assessment Software in Python by Prof. Dr. Costas Sachpazis
 
Autodesk Construction Cloud (Autodesk Build).pptx
Autodesk Construction Cloud (Autodesk Build).pptxAutodesk Construction Cloud (Autodesk Build).pptx
Autodesk Construction Cloud (Autodesk Build).pptx
 
AI in Healthcare Innovative use cases and applications.pdf
AI in Healthcare Innovative use cases and applications.pdfAI in Healthcare Innovative use cases and applications.pdf
AI in Healthcare Innovative use cases and applications.pdf
 
Worksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptxWorksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptx
 
Involute of a circle,Square, pentagon,HexagonInvolute_Engineering Drawing.pdf
Involute of a circle,Square, pentagon,HexagonInvolute_Engineering Drawing.pdfInvolute of a circle,Square, pentagon,HexagonInvolute_Engineering Drawing.pdf
Involute of a circle,Square, pentagon,HexagonInvolute_Engineering Drawing.pdf
 

L7 firewall API for Neutron-FWaaS

  • 1. New weapon for neutron-fwaas: L7 firewall API Nguyen Phuong An 1Vietnam OpenInfra day 2018
  • 2. The preface This short talk show my knowledge about L7 layer filtering from point of view of a man, who haven’t had much experience about security and trying to understand ‘the world of network’. Please free feel to discuss. Thanks in advance! 2Vietnam OpenInfra day 2018
  • 3. Abstract Defense in depth L7 firewall API HTTP over TCP Iptables or BPF SQLinjection XSS attack Extension Apply on VM port Deny URL 3Vietnam OpenInfra day 2018
  • 4. Agenda • Who am I? • Motivation • How L7 firewall API look like • API Driver • Future of Firewall • Demo driver concept 4Vietnam OpenInfra day 2018
  • 5. Who am I? • My name: Nguyen Phuong An • Neutron developer – Co-author of Neutron packet logging framework – Active contributor for Neutron fwaas – Develop deployment neutron-api via wsgi feature • IRC: annp • Email: annp.cs51@gmail.com • Recently, Rust is my favorite language. 5Vietnam OpenInfra day 2018
  • 6. Motivation • Defense in depth – More layer more secure • Standard firewall: – Define security rule base protocol and port Web-app GET /health User PUT /store/{id} unexpected OK Allow TCP port 80 Security hole! 6Vietnam OpenInfra day 2018
  • 7. Motivation • Append L7 layer filtering – Examine the payload of a packet and make decisions based on content. Web-app GET /health User PUT /store/{id} unexpected OK Allow TCP port 80 Allow GET /healt h 7Vietnam OpenInfra day 2018
  • 8. Motivation • With L7 firewall API: – Allow to restrict SQLInjection, XSS attack,.. – Allow to block unexpected URL – … 8Vietnam OpenInfra day 2018
  • 9. How L7 firewall API look like • How API work: – Filtering base on: • URL string: Accept/drop a request from/to domain • HTTP header: Accept/drop based POST/PUT/GET method. • HTTP body: drop based pattern SQLInjection, XSS, … 9Vietnam OpenInfra day 2018
  • 10. How L7 firewall API look like • Which protocols are supported? – HTTP over TCP only as first proposal. – In future, support other protocols like p2p, ftp … • Where L7 rule is applied? – Instance port level as first proposal (E-W traffic) – In future router-interface port (N-S traffic) 10Vietnam OpenInfra day 2018
  • 11. How L7 firewall API look like • How L7 firewall API is designed: – The API will be designed as a Extension API of Firewall Plugin V2. • Allow to enable/disable L7 firewall API if need 11Vietnam OpenInfra day 2018
  • 12. How L7 firewall API look like • How L7 rule is define: – Extend Firewall Rule with new attributes: 12Vietnam OpenInfra day 2018
  • 13. How L7 firewall API look like • L7 attribute would includes: • type: [‘url', ‘header', ‘body', ‘cookie'] • compare_type: [‘contain', ‘starts_with’, ‘ends_with', ‘regex', ‘equal_to'] • value: a string, e.g: ‘POST /v2/example’ • action: DROP/ACCEPT – Action LOG and STATS should propose in neutron-packet-logging https://docs.openstack.org/neutron/rocky/admin/config- logging.html 13Vietnam OpenInfra day 2018
  • 14. How L7 firewall API look like • How L7 attribute would define: – http://paste.openstack.org/show/728183/ • Firewall rule would look like: – http://paste.openstack.org/show/728180/ 14Vietnam OpenInfra day 2018
  • 15. API Driver • How API driver work GET v2/example 15 L3 rules L7 rules HTTP_FILTER Drop Allow Default Policy DROP Default Policy ALLOW allow drop Vietnam OpenInfra day 2018
  • 16. API Driver • Possible implementation: – Iptables or XDP & eBPF: • Iptables based: old fashioned! – e.g l7_filter • XDP & eBPF based: is trending. – integrate with Cilium – Building a http filter from scratch with bcc – Other: • Integrate with nDPI 16Vietnam OpenInfra day 2018
  • 17. API Driver • As a Proof of Concept: – Trying to implement http_filter with XDP & eBPF • Pros: – Flexible in design • Cons: – Take time to develop and test 17Vietnam OpenInfra day 2018
  • 18. API Driver • In future: – Integrate with Cilium or nDPI: • Pros: – Developed & tested • Cons: – Need time to customize to match our requirement – Depends on third party release schedule 18Vietnam OpenInfra day 2018
  • 19. API Driver • How HTTP_FILTER is implement: 19 TC ingress HTTP_FILTER Bcc python app GET v2/example BPF_MAP User space Kernel NetDevice Network stack TC egress NetDevice HTTP_FILTER BPF bytecode Vietnam OpenInfra day 2018
  • 20. API Driver • Show me the code: – https://github.com/annp1987/http_filter_with_xdp • Will support L7 firewall API in Stein cycle? – Maybe, Yes! 20Vietnam OpenInfra day 2018
  • 21. Future of Firewall Neutron FWaaS + Neutron-Packet-Logging + ELK = ML Firewall 21Vietnam OpenInfra day 2018
  • 22. Demo driver concept 22Vietnam OpenInfra day 2018

Editor's Notes

  1. In spirit of “defense in depth”, more filtering layer more secure which is a real demand of customer to protect their application. So this short talk will bring up new weapon for firewall as a service in neutron network: L7 firewall API. In this session we will answer a question: “Why L7 firewall API is good for your cloud?”. As a standard firewall may only allow HTTP traffic on TCP port 80, but SQL injection attacks will be allowed through as valid HTTP request. How do we protect customer app? OK. let's discuss about: How does L7 firewall API look like? Which protocols L7 firewall API will support? HTTP over TCP only? How to implement L7 firewall API? iptables or bpf? Future of firewall. Last but not least, demo as demand.
  2. Default L3 rules policy is DROP, Default L7 rules policy is ACCEPT.