Proton

Summary of HSTS Support in Modern Browsers

HTTP Strict Transport Security (HSTS) is a web security policy that is made to protect secure HTTPS websites against downgrade attacks that is used to perform Man in the middle attacks. “Once a supported browser receives this header that browser will prevent any communications from being sent over HTTP to the specified domain and will instead send all communications over HTTPS. It also prevents HTTPS click through prompts on browsers”[1].

HSTS support

The downgrade attack can occur when the user request a website in HTTP. When the user requested in HTTP:// URL, the server redirects the user to a secure HTTPS:// URL. Without HSTS, an attacker in the same network is able to stop the user from using the HTTPS version of the site and forcing the user to use the HTTP version, where the attacker is able to control user’s data and hijack the user’s session.

The HTTPS stripping attack that relates to the unuse of HSTS policy can be done via open-source tools, such as SSLStrip by Moxie Marlinspike. The tool has been publicly released on February 2009, and since then many browsers and websites have mitigated the issue.

Preventing the issue should be from two sides: the website, and the client. The website has that is already using HTTPS should apply HSTS policy to prevent the attack. The client has to use an updated version that supports HSTS policy.

The current advisory is tend to inform users that there is still modern browsers that do not support HSTS policy until today.

The following browsers supports HSTS policy (latest versions of browsers):

  • Google Chrome
  • Mozilla Firefox
  • Microsoft Edge
  • Safari for OSX
  • Opera
  • Ghostery
  • TOR Browser

The following browsers do not support HSTS policy:

  • Internet Explorer (all stable versions do not support HSTS. Only Microsoft Edge and Internet Explorer 10 Technical Preview support it)
  • Android Browser ( All versions upto 4.4.2 do not support HSTS policy. Newer versions might not be supporting it too)
  • Opera Mini (all versions, including Opera Mini 8)
  • Maxthon browser
  • UC browsers (including UC browser, UC mini, UC browser HD)
  • Opera for Android

Testing Browsers for MITM attacks due to Lack of HSTS policy:

You can follow the instructions in the following link to check if the browser supports HSTS policy.

http(nouvelle fenêtre)://(nouvelle fenêtre)www(nouvelle fenêtre).(nouvelle fenêtre)thoughtcrime(nouvelle fenêtre).(nouvelle fenêtre)org(nouvelle fenêtre)/(nouvelle fenêtre)software(nouvelle fenêtre)/(nouvelle fenêtre)sslstrip(nouvelle fenêtre)/(nouvelle fenêtre)

Recommendations:

  • Always use the latest version of browsers
  • If you are concerned about your security, do not use a browser that does not support HSTS policy.
  • If you are using a browser that is not listed above, you should test if it supports HSTS policy, and if it does not support it, you should stop using it.

Notes:

  • Even if the website is using the maximum SSL encryption possible, if the client’s browser does not support HSTS, the client is vulnerable to man in the middle attacks.
  • If the client made an initial request to the website in HTTP, an attacker can manipulate the response to uninclude the HSTS header, and would be able to perform MITM attacks too. Therefore, if you are making an initial request to secured site, you should request it in HTTPS to avoid HTTPS stripping that leads to MITM attacks.

The list might be updated for newer information. If there is a mistake on the list, you can contact me to correct it.

References:

http(nouvelle fenêtre)://(nouvelle fenêtre)en(nouvelle fenêtre).(nouvelle fenêtre)wikipedia(nouvelle fenêtre).(nouvelle fenêtre)org(nouvelle fenêtre)/(nouvelle fenêtre)wiki(nouvelle fenêtre)/(nouvelle fenêtre)HTTP(nouvelle fenêtre)_(nouvelle fenêtre)Strict(nouvelle fenêtre)_(nouvelle fenêtre)Transport(nouvelle fenêtre)_(nouvelle fenêtre)Security(nouvelle fenêtre) [1]

http(nouvelle fenêtre)://(nouvelle fenêtre)caniuse(nouvelle fenêtre).(nouvelle fenêtre)com(nouvelle fenêtre)/#(nouvelle fenêtre)feat(nouvelle fenêtre)=(nouvelle fenêtre)stricttransportsecurity(nouvelle fenêtre)

https(nouvelle fenêtre)://(nouvelle fenêtre)www(nouvelle fenêtre).(nouvelle fenêtre)owasp(nouvelle fenêtre).(nouvelle fenêtre)org(nouvelle fenêtre)/(nouvelle fenêtre)index(nouvelle fenêtre).(nouvelle fenêtre)php(nouvelle fenêtre)/(nouvelle fenêtre)HTTP(nouvelle fenêtre)_(nouvelle fenêtre)Strict(nouvelle fenêtre)_(nouvelle fenêtre)Transport(nouvelle fenêtre)_(nouvelle fenêtre)Security(nouvelle fenêtre)

http(nouvelle fenêtre)://(nouvelle fenêtre)blogs(nouvelle fenêtre).(nouvelle fenêtre)msdn(nouvelle fenêtre).(nouvelle fenêtre)com(nouvelle fenêtre)/(nouvelle fenêtre)b(nouvelle fenêtre)/(nouvelle fenêtre)ie(nouvelle fenêtre)/(nouvelle fenêtre)archive(nouvelle fenêtre)/2015/02/16/(nouvelle fenêtre)http(nouvelle fenêtre)(nouvelle fenêtre)strict(nouvelle fenêtre)(nouvelle fenêtre)transport(nouvelle fenêtre)(nouvelle fenêtre)security(nouvelle fenêtre)(nouvelle fenêtre)comes(nouvelle fenêtre)(nouvelle fenêtre)to(nouvelle fenêtre)(nouvelle fenêtre)internet(nouvelle fenêtre)(nouvelle fenêtre)explorer(nouvelle fenêtre).(nouvelle fenêtre)aspx(nouvelle fenêtre)

https(nouvelle fenêtre)://(nouvelle fenêtre)developer(nouvelle fenêtre).(nouvelle fenêtre)mozilla(nouvelle fenêtre).(nouvelle fenêtre)org(nouvelle fenêtre)/(nouvelle fenêtre)en(nouvelle fenêtre)(nouvelle fenêtre)US(nouvelle fenêtre)/(nouvelle fenêtre)docs(nouvelle fenêtre)/(nouvelle fenêtre)Web(nouvelle fenêtre)/(nouvelle fenêtre)Security(nouvelle fenêtre)/(nouvelle fenêtre)HTTP(nouvelle fenêtre)_(nouvelle fenêtre)strict(nouvelle fenêtre)_(nouvelle fenêtre)transport(nouvelle fenêtre)_(nouvelle fenêtre)security(nouvelle fenêtre)

http(nouvelle fenêtre)://(nouvelle fenêtre)www(nouvelle fenêtre).(nouvelle fenêtre)chromium(nouvelle fenêtre).(nouvelle fenêtre)org(nouvelle fenêtre)/(nouvelle fenêtre)hsts(nouvelle fenêtre)

http(nouvelle fenêtre)://(nouvelle fenêtre)www(nouvelle fenêtre).(nouvelle fenêtre)thoughtcrime(nouvelle fenêtre).(nouvelle fenêtre)org(nouvelle fenêtre)/(nouvelle fenêtre)software(nouvelle fenêtre)/(nouvelle fenêtre)sslstrip(nouvelle fenêtre)/
(nouvelle fenêtre)

About the Author

Mazin Ahmed is an information security specialist with experience in web-application security and mobile application security. Mazin is passionate about information security and has reported vulnerabilities which have been acknowledged by various companies, such as Facebook, Twitter, Linkedin, and Oracle to name a few. Mazin is part of Proton Mail’s security group, an independent panel of experts who audit Proton Mail releases on a voluntary basis. You can reach him via Twitter @mazen160(nouvelle fenêtre), and read more about him by visiting his website(nouvelle fenêtre).

Articles similaires

laptop showing Bitcoin price climbing
en
  • Guides vie privée
Learn what a Bitcoin wallet does and the strengths and weaknesses of custodial, self-custodial, hardware, and paper wallets.
pixel tracking: here's how to tell which emails track your activity
en
Discover what pixel tracking is and how it works, how to spot emails that track you, and how to block these hidden trackers.
A cover image for a blog describing the next six months of Proton Pass development which shows a laptop screen with a Gantt chart
en
  • Nouveautés produits
  • Proton Pass
Take a look at the upcoming features and improvements coming to Proton Pass over the next several months.
The Danish mermaid and the Dutch parliament building behind a politician and an unlocked phone
en
We searched the dark web for Danish, Dutch, and Luxembourgish politicians’ official email addresses. In Denmark, over 40% had been exposed.
Infostealers: What they are, how they work, and how to protect yourself
en
Discover insights about what infostealers are, where your stolen information goes, and ways to protect yourself.
Mockup of the Proton Pass app and text that reads "Pass Lifetime: Pay once, access forever"
en
Learn more about our exclusive Pass + SimpleLogin Lifetime offer. Pay once and enjoy premium password manager features for life.