slac berlin 2014: headers, websockets + more: webserver und … · 2016-05-09 · markus manzke...

16
Markus Manzke SLAC 2014 / Berlin 13.03.2014 Headers, Websockets + More: Webserver und Webapp-Sicherheit im Jahre 2014 "If you spend more on coffee than on IT security, then you will be hacked." -- Richard A. Clark / 2002

Upload: others

Post on 12-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SLAC Berlin 2014: Headers, Websockets + More: Webserver und … · 2016-05-09 · Markus Manzke SLAC 2014 / Berlin 13.03.2014 Headers, Websockets + More: Webserver und Webapp-Sicherheit

Markus ManzkeSLAC 2014 / Berlin

13.03.2014

Headers, Websockets + More: Webserver und Webapp-Sicherheit im Jahre 2014

"If you spend more on coffee than on IT security, then you will be hacked."

-- Richard A. Clark / 2002

Page 2: SLAC Berlin 2014: Headers, Websockets + More: Webserver und … · 2016-05-09 · Markus Manzke SLAC 2014 / Berlin 13.03.2014 Headers, Websockets + More: Webserver und Webapp-Sicherheit

SLAC Berlin, 13.03.2014 http://www.mare-system.de/slac 2

Intro

● Über mich12 Jahre als SysAdmin und System-Architekt für webbasierte Infrastrukturvon klein bis mittel(stands)großMitarbeit in div. OSS-Projekten (Emerging Threats, Icinga, Naxsi, Nginx)Vorträge/Artikel: CeBIT, OWASP, ix, ADMIN-MAGAZIN, Barcamps

● MARE system (Kiel)http://www.mare-system.de/Hosting-Provider für Ecommerce-Infrastruktur

● 8ackhttp://www.8ack.deSecurity-Information und News, von Profis für Profis

Page 3: SLAC Berlin 2014: Headers, Websockets + More: Webserver und … · 2016-05-09 · Markus Manzke SLAC 2014 / Berlin 13.03.2014 Headers, Websockets + More: Webserver und Webapp-Sicherheit

SLAC Berlin, 13.03.2014 http://www.mare-system.de/slac 3

Inhalt

● Webserver-Header Analyse, Probleme, Best Practices

● Content Security Policy et alneue Userschutz-Technologie

● WebsocketsEinsatzgebiete, DOs & DONTs

● Reverse Proxy Einsatzgebiete & Best Practices

● WebApplicationFirewallsEinsatzszenarien, Überblick und Vergleich populärer Open-Source-LösungenLayer 7 DDoS - Schutz

Page 4: SLAC Berlin 2014: Headers, Websockets + More: Webserver und … · 2016-05-09 · Markus Manzke SLAC 2014 / Berlin 13.03.2014 Headers, Websockets + More: Webserver und Webapp-Sicherheit

SLAC Berlin, 13.03.2014 http://www.mare-system.de/slac 4

Web-Security: Grundsätzliche Probleme

● Problem:24/7, Accept: World & DogAbhängig von Appservern, Libs, Frameworks, Appliances: kleine Ursache, große Wirkungkomplex, vernetzt & verwoben (OAuth)Verteidigung: 24/7, GrundrauschenAngreifer: kann warten und die Route wählen, ausgereifte Toolbox, Scanner

● LösungWissenPolicy + ArchitekturDisziplinGlück

Page 5: SLAC Berlin 2014: Headers, Websockets + More: Webserver und … · 2016-05-09 · Markus Manzke SLAC 2014 / Berlin 13.03.2014 Headers, Websockets + More: Webserver und Webapp-Sicherheit

SLAC Berlin, 13.03.2014 http://www.mare-system.de/slac 5

Webserver-Header

● verräterische HeaderAppServer-Leakslazy Admins / EastereggsInfrastruktur-Leaks

● Analyse-ToolsShodan/zmap/masscanConsole-Output

● Todo:Attack-Surface minimierenHeader-Check Header-Hygiene

Page 6: SLAC Berlin 2014: Headers, Websockets + More: Webserver und … · 2016-05-09 · Markus Manzke SLAC 2014 / Berlin 13.03.2014 Headers, Websockets + More: Webserver und Webapp-Sicherheit

SLAC Berlin, 13.03.2014 http://www.mare-system.de/slac 6

Attacke!

● Angriffsvorbereitung via Header-Analyse

● Bsp1: zentraler Schul-Proxy Iowa/Arrowhead5 Minuten bis zum potentiellen Exploit

● Bsp2: myXYZ.de10 Minuten bis zum potentiellen Exploit

Page 7: SLAC Berlin 2014: Headers, Websockets + More: Webserver und … · 2016-05-09 · Markus Manzke SLAC 2014 / Berlin 13.03.2014 Headers, Websockets + More: Webserver und Webapp-Sicherheit

SLAC Berlin, 13.03.2014 http://www.mare-system.de/slac 7

Userschutz durch Security-Header

● Content Security Policy (CSP)XSS/Script-Injection-Schutz Definieren der Quellen für Script, Fonts, Grafiken, Iframes Whitelist-AnsatzLearning-Mode / Reporting

● X-Frame-OptionsClickjacking-SchutzSAMEORIGIN / DENY / ALLOW

● X-Content-Type-Options/X-XSS-ProtectionSchützt vor XSS und Mime-Sniffing

● Cross Origin Resource Sharing (CORS)Aufbrechen der Same-Origin-Policy (scriptbasierte XMLHttpRequests)

Page 8: SLAC Berlin 2014: Headers, Websockets + More: Webserver und … · 2016-05-09 · Markus Manzke SLAC 2014 / Berlin 13.03.2014 Headers, Websockets + More: Webserver und Webapp-Sicherheit

SLAC Berlin, 13.03.2014 http://www.mare-system.de/slac 8

Userschutz durch Security-Header

● Strict-Transport-Security (HSTS, SSL/TLS)zwingt den Browser auf HTTPS

● CookiesHTTPOnly / Secure

● Proerhöhter Userschutz (XSS, Clickjacking, Session-Stealing, SSL erzwingen)

● ContraBrowserabhängigImplementierungsaufwand (might break stuff)

Page 9: SLAC Berlin 2014: Headers, Websockets + More: Webserver und … · 2016-05-09 · Markus Manzke SLAC 2014 / Berlin 13.03.2014 Headers, Websockets + More: Webserver und Webapp-Sicherheit

SLAC Berlin, 13.03.2014 http://www.mare-system.de/slac 9

Websockets

● WebsocketsTCP over HTTPbidirektionale Verbindung Server ↔ Client (2-Way-Push)kein HTTP-Overhead

● DONTstatische Inhalte, CSS; JS; HTML

● DOdynamische Daten innerhalb der Webapp (vulgo: AJAX-Requests)

Page 10: SLAC Berlin 2014: Headers, Websockets + More: Webserver und … · 2016-05-09 · Markus Manzke SLAC 2014 / Berlin 13.03.2014 Headers, Websockets + More: Webserver und Webapp-Sicherheit

SLAC Berlin, 13.03.2014 http://www.mare-system.de/slac 10

Websockets

● Sicherheit … Sicherheit?eigenes Security-Modell implementieren

keine HTTP/IP-Restriktionen

keine Session/Cookies

alles noch sehr Alpha

WS-Server eigene Instanzen

keine WAF/IDS-Abdeckung momentan

Page 11: SLAC Berlin 2014: Headers, Websockets + More: Webserver und … · 2016-05-09 · Markus Manzke SLAC 2014 / Berlin 13.03.2014 Headers, Websockets + More: Webserver und Webapp-Sicherheit

SLAC Berlin, 13.03.2014 http://www.mare-system.de/slac 11

Reverse Proxy

● Reverse Proxy Best PracticesHeader-Kontrolle / Verstecken der Infrastruktur

Loadbalancing + Performance

Abfangen von Requests vor Appservern (Static/Cache)

Cookie-Mangling: Secure / HTTPOnly

Hotpatching / serverseitige Workarounds(CVE 2014-0050 Tomcat DDoS)

WAF / Limit-Filter

Page 12: SLAC Berlin 2014: Headers, Websockets + More: Webserver und … · 2016-05-09 · Markus Manzke SLAC 2014 / Berlin 13.03.2014 Headers, Websockets + More: Webserver und Webapp-Sicherheit

SLAC Berlin, 13.03.2014 http://www.mare-system.de/slac 12

WebApplicationFirewalls

● WAF – Protect your InterwebsSchutz vor SchmutzWhite/BlacklistingSignatur-basiertProfiling - browserbasierte Webapps - APIsHotpatching

● ContraImplementierungChange-Managementunbekannte Angriffsvektorenimmer einen Schritt hinterherPerformance

Page 13: SLAC Berlin 2014: Headers, Websockets + More: Webserver und … · 2016-05-09 · Markus Manzke SLAC 2014 / Berlin 13.03.2014 Headers, Websockets + More: Webserver und Webapp-Sicherheit

SLAC Berlin, 13.03.2014 http://www.mare-system.de/slac 13

WebApplicationFirewalls

● Mod-SecurityApacheausgereiftCore-Rule-Setsehr komplexhoher Aufwand für Regeln + Whitelisting

● NaxsiNginxstabilCore-Rule-SeteinfachLearning-Mode, Reporting-Tool,Whitelisting

● Lua-WAFNginxProfile, Logik, all you can Script

Page 14: SLAC Berlin 2014: Headers, Websockets + More: Webserver und … · 2016-05-09 · Markus Manzke SLAC 2014 / Berlin 13.03.2014 Headers, Websockets + More: Webserver und Webapp-Sicherheit

SLAC Berlin, 13.03.2014 http://www.mare-system.de/slac 14

Layer 7 DDoS

● Layer 7 DDoSlegitime RequestsApp-Server überfluten → Ressourcen verbrauchenca 20% der DDoS-Attacken sind L7-Attacken (Imperva)Bots werden intelligenter

● SchutzmaßnahmenMonitoring + NotfallplanJS-Canary/CookieRatelimits (bedingt) Request-Shaping (bedingt)IP-Block vs Request-Block

Page 15: SLAC Berlin 2014: Headers, Websockets + More: Webserver und … · 2016-05-09 · Markus Manzke SLAC 2014 / Berlin 13.03.2014 Headers, Websockets + More: Webserver und Webapp-Sicherheit

SLAC Berlin, 13.03.2014 http://www.mare-system.de/slac 15

SSL + TLS

● SSL + TLSAuthentizität der Verbindung Transport-Verschlüsselungganz oder garnichtHSTSSPDYPFS

● ContraPerformanceKompatibilitätmight break stuff

● Toolstestssl.shssllabs.com

Page 16: SLAC Berlin 2014: Headers, Websockets + More: Webserver und … · 2016-05-09 · Markus Manzke SLAC 2014 / Berlin 13.03.2014 Headers, Websockets + More: Webserver und Webapp-Sicherheit

SLAC Berlin, 13.03.2014 http://www.mare-system.de/slac 16

Fragen?