why traditional web security technologies no …

32
@PhilippeDeRyck WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO L ONGER SUFFICE TO KEEP Y OU SAFE Philippe De Ryck OWASP Belgium, February 2017 https://www.websec.be

Upload: others

Post on 29-Nov-2021

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

WHY TRADITIONAL WEB SECURITY TECHNOLOGIESNO LONGER SUFFICE TO KEEP YOU SAFE

PhilippeDeRyckOWASPBelgium,February2017

https://www.websec.be

Page 2: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

WHICH SCENARIO WOULD YOU CONSIDER TO BE SECURE?

(a)Visitwebsite,browsepublicpages

Loginwithusernameandpassword

Consultprivateinformation

Visitwebsite,browsepublicpages

Loginwithusernameandpassword

Consultprivateinformation

Visitwebsite,browsepublicpages

Loginwithusernameandpassword

Consultprivateinformation

(b)

(c)

Page 3: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

ABOUT ME – PHILIPPE DE RYCK

§Mygoalistohelpyoubuildsecurewebapplications− In-housetrainingprogramsatvariouscompanies−HostedwebsecuritytrainingcoursesatDistriNet (KULeuven)− Talksatvariousdeveloperconferences− Slides,videosandblogpostsonhttps://www.websec.be

§ Ihaveabroadsecurityexpertise,withafocusonWebSecurity−PhDinclient-sidewebsecurity−MainauthorofthePrimeronclient-sidewebsecurity

§ PartoftheorganizingcommitteeofSecAppDev.org−Week-longcoursefocusedonpracticalsecurity

3

Page 4: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

Page 5: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

THE WEB USED TO BE SERVER-CENTRIC

Page 6: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

http://arstechnica.com/security/2015/12/hackers-actively-exploit-critical-vulnerability-in-sites-running-joomla/

WITH A LOT OF SERVER-SIDE PROBLEMS

Page 7: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

http://motherboard.vice.com/read/one-of-the-largest-hacks-yet-exposes-data-on-hundreds-of-thousands-of-kids

WITH A LOT OF SERVER-SIDE PROBLEMS

Page 8: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

THE WEB HAS BECOME CLIENT-CENTRIC

Page 9: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

NETWORKS ARE EVERYWHERE

§Wehappilyconnecttoanynetworkwecanfind−Withoutknowingwhohascontroloverthenetwork

§ Peopleknowabouteavesdroppingattacks− Sniffingusernames,passwords,sessionidentifiers,…

9

https://www.flickr.com/photos/djimison/222214205/http://codebutler.com/firesheep/

Page 10: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

THE COMMUNICATION CHANNEL IS INSECURE

§ ButweuseHTTPSforsensitivedata− Sufficienttocounterpassiveeavesdroppingattacks−Butwhataboutactivenetworkattacks?

10

ManintheMiddle ManontheSide

Page 11: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

3VARYING LEVELS OF HTTPS

(a)Visitwebsite,browsepublicpages

Loginwithusernameandpassword

Consultprivateinformation

Visitwebsite,browsepublicpages

Loginwithusernameandpassword

Consultprivateinformation

Visitwebsite,browsepublicpages

Loginwithusernameandpassword

Consultprivateinformation

(b)

(c)

Page 12: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

PREVENTING THE TRANSITION FROM HTTPTO HTTPS

Page 13: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

PREVENTING THE TRANSITION FROM HTTPTO HTTPS

some-shop.com

Visithttp://some-shop.com

Welcome,pleaselogin

LoginasPhilippe

WelcomePhilippe

Visithttp://some-shop.com

LoginasPhilippe

WelcomePhilippe

RewriteHTTPStoHTTP

Page 14: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

TIME TO MOVE TOWARDS HTTPS

some-shop.com

Visithttp://some-shop.com

Welcome,pleaselogin

LoginasPhilippe

WelcomePhilippe

Visithttps://some-shop.com

LoginasPhilippe

WelcomePhilippe

Page 15: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

HTTPWEAKENS HTTPSSITES

https://news.netcraft.com/archives/2016/03/17/95-of-https-servers-vulnerable-to-trivial-mitm-attacks.html

15

Page 16: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

SNEAKY SSLSTRIPPING ATTACKS PREVENT THE USE OF HTTPS

Page 17: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

SNEAKY SSLSTRIPPING ATTACKS PREVENT THE USE OF HTTPS

GET http://www.websec.be

200 OK<html>…</html>

www.websec.be

GET http://…

301 Moved …

GET https://…

200 OKRewriteHTTPSURLStoHTTP

POST http://www.websec.be

200 OK<html>…</html>

POST https://…

200 OKRewriteHTTPSURLStoHTTP

17

Page 18: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

§ StrictTransportSecurityconvertsallHTTPrequeststoHTTPS

§ModernbrowserssupportHTTPStrictTransportSecurity(HSTS)−HTTPresponseheadertoenableStrictTransportSecurity−Whenenabled,thebrowserwillnotsendanHTTPrequestanymore

STRICT TRANSPORT SECURITY AGAINST SSLSTRIPPING

GET https://www.websec.be

200 OK<html>…</html>

www.websec.be

4 4 7 11Fromversion… 4.4.4 7.1

18

Page 19: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

HSTSCAN BE ENABLED WITH A SIMPLE ONE-LINER

§ ThepolicyiscontrolledbytheStrict-Transport-Security header− max-age specifieshowlongthepolicyshouldbeenforcedinseconds−Makesurethisislongenoughtocovertwosubsequentvisits− Ifnecessary,thepolicycanbedisabledbysettingmax-age to0

§ Thepolicycanbeextendedtoautomaticallyincludesubdomains− ThisbehavioriscontrolledbytheincludeSubDomains flag−Beforeenablingthis,carefullyanalyzetheservicesyouarerunningonyourdomain

Strict-Transport-Security: max-age=31536000

Strict-Transport-Security: max-age=31536000; includeSubDomains

19

Page 20: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

HSTSIN ACTION

GET https://websec.be

200 OKStrict-Transport-Security: max-age=31536000; includeSubDomains

GET https://www.websec.be

200 OKStrict-Transport-Security: max-age=31536000; includeSubDomains

websec.be

GET https://websec.be

200 OKStrict-Transport-Security: max-age=31536000; includeSubDomains

www.websec.be

20

Page 21: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

POLICY DETAILS OF HSTS

§HSTSdoesnotcareaboutTCPports−Policymatchesaredeterminedbasedonthehostnameonly−Port80istranslatedtoport443,butotherportsarepreserved

§HSTSpoliciescanonlybesetoverasecureconnection− Thecertificateusedmustbevalid−HSTSpoliciessetoninsecureconnectionsareignored

§ DisablingHSTSmustbedonebyexplicitlysettingmax-age to0−OmittingaHSTSheaderfromaHSTS-enabledhostdoesnothing

21

Page 22: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

ENABLING HSTSIN PRACTICE

§ Thestep-by-stepguidetowardsenablingHSTS− SetupHTTPScorrectly− SendtheStrict-Transport-Security headerwithashortmax-age− Testyourconfiguration− Increasemax-ageaftersuccessfultesting

§ Chrome’snet-internals allowinspection− dynamic_sts istheHSTSmechanism

22

Page 23: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

FUN FACT:CHROME HANDLES HSTSAS A REDIRECT

23

Page 24: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

TIME TO GET ON THE HSTSTRAIN

https://trends.builtwith.com/docinfo/HSTS 24

Page 25: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

BUT HOW DO YOU MAKE THE FIRST CONNECTION OVER HTTPS?

GET https://websec.be

200 OKStrict-Transport-Security: max-age=31536000; includeSubDomains

GET https://www.websec.be

200 OKStrict-Transport-Security: max-age=31536000; includeSubDomains

websec.be

GET https://www.websec.be

200 OKStrict-Transport-Security: max-age=31536000; includeSubDomains

www.websec.be

25

Page 26: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

HSTS==TOFU

http://www.bbcgoodfood.com/howto/guide/ingredient-focus-tofu 26

Page 27: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

PRELOADING HSTSINTO THE BROWSER

https://hstspreload.appspot.com/?

Strict-Transport-Security: max-age=31536000; includeSubDomains; preload

27

Page 28: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

PRELOADING IS ON THE RISE

https://trends.builtwith.com/docinfo/HSTS 28

Page 29: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

ALL INTERACTIONS SHOULD HAPPEN OVER HTTPS

§ ThereisabigpushforHTTPSontheWeb−GoogleusesHTTPSasarankingsignal−Activemixedcontentisblockedinmoderndesktopbrowsers− TheSecureContextsspecificationlimitsuseofsensitivefeatures

§ ThereisplentyofsupportforeasilyenablingHTTPS−RateyourdeploymentwiththeSSLServerTest−Getfree,automatedcertificatesfromLet’sEncrypt

§HSTSisessentialforamodernHTTPSdeployment− Forcomplexenvironments,startwithsubdomains

29

https://www.ssllabs.com/ssltest/https://letsencrypt.org/

Page 30: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

KNOWLEDGE IS THE KEY TO BUILDING SECURE APPLICATIONS

§ TheuseofHTTPSandHSTSisonlythetipoftheiceberg−Numerousnewsecuritypolicyhavebeenaddedinthelast5years

§ Thesenewtechnologiesrequireexplicitknowledgeandaction−Developersneedtowhyandhowtousethem

§WeofferspecializedtrainingcoveringtheWebsecuritylandscape−Hostedtrainingcoursesandcustomizablein-housetrainings−Broadspectrumoftopics,suchasHTTPS,authentication,authorization,XSS−VariousWebtechnologies,includingmodernMVCframeworks(AngularJS,…)− Effectivecombinationoflecturesandhands-onsessions

Page 31: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

`

https://essentials.websec.be

Web Security EssentialsApril 24 – 25, Leuven, Belgium

Security in 4 key areasSecure communication

Strong authentication

Avoiding authorization bypasses

Neutralizing code injection attacks

Up-to-date & actionable adviceDirectly applicable security advice

Overview of essential best practices

Strong theoretical foundation

Practical hands-on experience

Thanks for providing this course packed with very up-to-date information.

I would recommend this training to all web developers and architects

Excellent hand-outs, providing concise but complete information

Page 32: WHY TRADITIONAL WEB SECURITY TECHNOLOGIES NO …

@PhilippeDeRyck

NOW IT’S UP TO YOU …

Secure ShareFollow

https://www.websec.be [email protected] /in/philippederyck