breaking out hsts (and hpkp) on firefox, ie/edge and ... · @unapibageek - @ssantosv ie/edge...

Post on 27-Jun-2020

4 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

@unapibageek - @ssantosv

Breaking Out HSTS (and HPKP) on Firefox, IE/Edge and (Possibly) Chrome.

@unapibageek - @ssantosv

Sheila Ayelen Berta Sergio De Los Santos

Security Researcher ElevenPaths

(Telefonica Digital cyber security unit)

Head of Innovation and Lab ElevenPaths

(Telefonica Digital cyber security unit)

22 years old - N/A :p -

@unapibageek - @ssantosv

HTTP://www.example.com/login

Username: John / Password: 1234

C

@unapibageek - @ssantosv

HTTPS://www.example.com/login

Username: John / Password: 1234

(

C

@unapibageek - @ssantosv

@unapibageek - @ssantosv

SSLSTRIP

COMMONATTACKS

ROGUE CERTIFICATES

SOLUTIONS?HTTP Strict Transport Security

HPKPHSTSHTTP Public Key Pinning

@unapibageek - @ssantosv

HSTS – First time requests

@unapibageek - @ssantosv

HSTS – HTTP requests after HSTS header is setted

THERE IS NOT A FIRST HTTP (UNSECURE) REQUEST.SSLSTRIP HAS NOTHING TO INTERCEPT, IT WON’T WORK.

@unapibageek - @ssantosv

HPKP – Certificate Pinning

pin-sha256="WoiWRyIOVNa9ihaBciRSC7XHjliYS9VwUGOIud4PB18=";pin-sha256="RRM1dGqnDFsCJXBTHky16vi1obOlCgFFn/yOhI/y+ho=";

@unapibageek - @ssantosv

HPKP – Certificate Pinning

@unapibageek - @ssantosv

Attacking HSTS (and HPKP) browsers implementation

@unapibageek - @ssantosv

@unapibageek - @ssantosv

The curious thing…

1024 ENTRIES

AS MAXIMUM

@unapibageek - @ssantosv

@unapibageek - @ssantosv

DEMO

@unapibageek - @ssantosv

@unapibageek - @ssantosv

@unapibageek - @ssantosv

Attack improvement… defeating FF’s score system

CJUNK HSTS ENTRIES INJECTION

JUNK HSTS ENTRIES INJECTION

JUNK HSTS ENTRIES INJECTION

DELOREAN +1 DAY

DELOREAN +1 DAY

SCORE = 0

SCORE = 1

SCORE = 2

DEMO

@unapibageek - @ssantosv

DEMO

FF’s highlights – Cons :

• Attack might be a little complex to achieve:MITM + DELOREAN + HSTS Injection.

• We need time enough inside the target’s network.(It may be some hours).

Internal Pentests, Hotels… are the best scenarios ;)

@unapibageek - @ssantosv

DEMO

FF’s highlights - Pros:

• Attack effectiveness.

JUNK ENTRY – SCORE = 2

HS

TS

S

LO

TS

JUNK ENTRY – SCORE = 2

JUNK ENTRY – SCORE = 2

REAL ENTRY – SCORE = 0 NEW ENTRY – SCORE = 0

@unapibageek - @ssantosv

@unapibageek - @ssantosv

@unapibageek - @ssantosv

@unapibageek - @ssantosv

The curious thing…

NO STORAGE LIMITS

@unapibageek - @ssantosv

@unapibageek - @ssantosv

DEMO

@unapibageek - @ssantosv

Chrome highlights:

• Attack is very easy to achieve and you can try it in different ways.(WiFi Portal / MITM attack / etc).

• Chrome stops working properly in a few minutes.

• User is forced to clear browsing data in Chrome and therefore the TransportSecurity file starts over again = HSTS/HPKP broken ;)

@unapibageek - @ssantosv

@unapibageek - @ssantosv

@unapibageek - @ssantosv

The curious thing…

@unapibageek - @ssantosv

WININET.DLL

HttpIsHostHstsEnabled

CheckHsts()

GetHstsEnabled()

IsHostHstsA()

GetHstsEntry()

SetHstsEntry()

UpdateHstsEntry()

AddHstsEntry()

CheckHstsInternal()

@unapibageek - @ssantosv

CheckHsts()

GetHstsEnabled()

CheckHstsInternal()

IsHostHstsA()

IsHostHstsInternal()

ConvertURLtoHTTPS()

Landing issues…

AddHstsEntry()

SetHstsEntry()

SaveEntryToStore()

?

?

@unapibageek - @ssantosv

CACHE

I remember if you visited the website over

https or http… but not because of HSTS itself...

DEMO

@unapibageek - @ssantosv

IE/Edge highlights:

• Most of the websites will not be remembered as webs protected with HSTS, due to problems in the storage process.

• Browser cache is the one that remembers if you have entered the website over http or https… but not HSTS itself.

• Restarting the browser, the machine or (most effectively) clearingthe cache, leaves the user without a real HSTS protection.

@unapibageek - @ssantosv

Conclusions…

We can tell there is not a strong bet yet forimproving this implementations in browsers so…

No one is safe….even with HSTS.

@unapibageek - @ssantosv

THANK YOU!

Sheila Ayelen Berta Sergio De Los Santos

Security Researcher – ElevenPaths(Telefonica Digital cyber security unit)

@UnaPibaGeeksheila.berta@11paths.com

Head of Research – ElevenPaths(Telefonica Digital cyber security unit)

@ssantosvsergio.delossantos@11paths.com

top related