Los AngelesNew YorkChicagoHoustonPhoenixPhiladelphiaSan FranciscoSeattleAtlantaBoston
Tech · Tech

Big flaw in digital trust lets attackers mimic any website or app

A major security flaw allows any attacker to pretend to be any website or app.

By Anna Nowak ·

A major security flaw has been discovered that allows any attacker to pretend to be any website or app, such as Apple, Amazon, or Bank of America. This flaw comes from eight insecure intermediate CA certificates, which can allow attackers to impersonate any domain and/or pretend their malware is from a legitimate source.

An attacker anywhere in the path of your network traffic, like in a company or government network, public Wi-Fi, your ISP, or one of any number of government entities, can intercept your connection and pretend that they're any website, like tomshardware.com. If not updated, your operating system and installed software would be none the wiser. Additionally, with the code signing certificates, an application you download can be shown as completely legitimate from, say, Microsoft or Google.

The way that software checks a certificate is legitimate is by verifying its 'chain.' For example, a website like tomshardware.com has a certificate, issued and signed by an intermediate Certification Authority (or CA, a certificate-selling company), and whose certificate, in turn, is trusted and signed by root certificates — whose exceedingly precious keys are kept offline in safes.

In this week's event, Indian CA firm eMudhra issued six TLS and two code-signing intermediate certificates with easily guessable keys. Your operating system and potentially tens of different applications on your machine all keep a list of which root certificates and CAs are trusted. Browsers also keep a list of those not to trust, called a revocation list. These lists are updated periodically as screw-ups happen, just like the one that took place this week. And now they all need to be updated again, by revoking the eight CAs, removing the one affected root certificate, or just hard-coding a rejection of all eight affected keys.

There's a silver lining: recent versions of Chrome, Brave, Firefox, and Safari all enforce a feature called Certificate Transparency that consults a public read-only log of certificate issuances, and blocks any that aren't mentioned. Google reports that no certificates signed by the six affected intermediate CAs were logged, so if regular web browsing is all you did, you should be safe — but still check all your software for updates nonetheless.

The problem here is the sheer amount of machines and software that needs updating: PCs, servers, operating systems, phones, tablets, routers, web browsers, web browsers wrapped in apps, virtual servers, virtual machines, Docker and other containers, programming languages like Python, Go, Node.js, Rust, standalone download utilities like curl, and probably tens or hundreds of other categories.

As for the technical details, eMudhra issued six intermediate CA certificates and two intermediate code-signing certs with rather unadvisable private keys. The private key is the secret half of the two parts of a certificate, and for some reason, those of the aforementioned certs were only 1 byte long — thus a number from 0 to 255, trivial to brute-force in a split second. How the heck that happened is still under investigation.

Source: Tom's Hardware

More from Tech