7 ms·
Forgive my ignorance but I have a few questions: * Why would HSTS help in this case? While HSTS is active, does it prevent clicking through the warning (which
by EE84M3i 9y ago
Forgive my ignorance but I have a few questions:
* Why would HSTS help in this case? While HSTS is active, does it prevent clicking through the warning (which was done here)?
* How would a CAA record help against cert issuance in this case? Is it only helping against compromise of the authoritative during the remaining TTL of the record in recursives AND if the CAA record points to something that doesn't have on-demand DV like Lets Encrypt?
- bklyn11201 9y agoHSTS wouldn't help users clicking through warnings, but it's a good thing to have (myetherwallet doesn't use HSTS). CAA record would only help in remaining TTL. Once expired, then it doesn't matter. So yeah, these seem like decent steps to help protect but certainly not going to 100% prevent an attack like this one.
- DividableMiddle 9y agowait, myetherwallet doesn't use HSTS? I thought they had a vulnerability analysis done a few months ago. I feel like this should have been something that was caught.
- Cshelton 9y agoWow, that's scary. I even told someone recently, jokingly of course, they forgot to add HSTS for their mvp app. But MEW doesn't have HSTS? I would never use it personally on a public Wifi, but many people will for sure and they have no idea they'd be MITM'd.
- tekstar 9y ago> But MEW doesn't have HSTS? I would never use it personally on a public Wifi, but many people will for sure and they have no idea they'd be MITM'd. Even without HSTS a bad actor would have to either trick a user to install a root cert or trick a certificate authority to generate a cert for the domain. Both of these are possible and have happened in the past, but they're also are a requirement for the attack you mention that you seemed to have completely forgotten about.
- C4K3 9y agoNo they wouldn't, without HSTS a bad actor (public wifi) could just do an SSL strip attack. Sure, observant users would notice that the page isn't over https, and with browsers adding warnings on all http pages, that'll become more obvious, but it's still not something most people notice. Are you thinking of HPKP?
- tekstar 9y agoah, yes, I was confusing HSTS with HPKP. Now I need to re-read the whole thread with this context. Thanks for the correction!
- f2n 9y ago>HSTS wouldn't help users clicking through warning Actually it would have! Chrome and possible other browsers do not allow clicking throw certificate validation issues on sites with HSTS. For example, try to get to https://badssl.finn.io https://badssl.finn.io in Chrome.
- cft 9y agoSorry how does that help if the attackers purchase a new "valid" SSL certificate since they control the DNS and thus email?
- f2n 9y agoIt does not help for that scenario, but it forces the attackers to jump through another hoop, and publish that a new cert was issued for the domain.
- rocqua 9y agoOnce you control DNS, it doesn't require email, you can just use lets-encrypt. The lets-encrypt verification does not check HSTS. Makes sense because it keeps HSTS from the lockout scenario that makes HPKP so scary.
- cft 9y agoIs it possible to get a TLD registrar to set a very short TTL like 5min on your NS record? Then you can switch to a backup DNS hosted on another network fast.
- rocqua 9y agoYes, you can set a short TTL on your NS record, but that would not keep this attack from hijacking your site. This attack intercepts the clients DNS lookup, so the DNS a browser is talking to is ill-behaved. No amount of correct setup here will work because the ill-behaved DNS server will just replace your setup with whatever that server wants. There is no strong defense against this as a website. With an app the solution would be certificate pinning. You could try HPKP but that comes with a host of issues and I think it is being deprecated.
- C4K3 9y agoI'm seeing HSTS on https://www.myetherwallet.com/ https://www.myetherwallet.com/ curl -I https://www.myetherwallet.com/ strict-transport-security: max-age=63072000; includeSubdomains; preload
- pfg 9y agoPresumably that's fairly new. The domain hasn't made it on the HSTS preload list shipped by browsers yet, so my guess would be they started using HSTS in response to this attack.
- toast0 9y ago> * Why would HSTS help in this case? While HSTS is active, does it prevent clicking through the warning (which was done here)? Yes, HSTS (if preloaded or cached by the browser) prevents clicking through the warning, although there's a secret code you can type in chrome? to get around it still. > * CAA record Yeah, a CAA record wouldn't help. Presumably the CA in question is going to want to get that record freshly, and while the DNS is hijacked, they can return whatever they like. DNSSEC could conceivably help, but that's a pretty big can of worms.
- tptacek 9y agoDNSSEC only "helps" if you can get CAA working reliably with it, because otherwise, it's only role in this attack is to lock CAs to a particular IP address. But this is a BGP hijack: attackers control IP.
- an_account_name 9y agoHSTS does indeed prevent users from clicking through the warning - it makes handshake / trust chain failure fatal with no "proceed anyway" button.
- triplenineteen 9y agoSorta. In most browsers you can manually delete the HSTS property on a per-domain basis. Presumably, anyone doing this knows the risks.
- discreditable 9y agoHSTS does prevent clicking through the warning. Here's a test page: https://subdomain.preloaded-hsts.badssl.com/ https://subdomain.preloaded-hsts.badssl.com/