XML Encryption Standard Cracked

A flaw in XML Encryption may force major web services companies to adopt a new standard

Security researchers have cracked the major XML framework used to encrypt data in major web applications.

Two researchers from Germany’s Ruhr-University demonstrated a practical attack against XML’s cipher block chaining module at the ACM Conference on Computer and Communications Security in Chicago on 19 October. The technique affects messages encrypted with any of the algorithms supported by the XML Encryption standard, including the popular AES and DES.

‘No simple patch’

“We were able to decrypt data by sending modified ciphertexts to the server – by gathering information from the received error messages,” the researchers said in a statement.

XML, or “eXtensible Markup Langugage”, is used for storing and transporting data and is widely used for web applications such as business communications, e-commerce, financial services, healthcare, and government and military infrastructure. Standardised in 2002 by the W3 Consortium, an Internet standards group, XML Encryption is widely used by Apache, Red Hat, IBM and Microsoft in their XML frameworks.

“There is no simple patch for this problem”, said Juraj Somorovsky, one of the researchers, adding, “We therefore propose to change the standard as soon as possible.”

Researchers proposed replacing the CBC module in XML Encryption with a mechanism focused on both message confidentiality and message integrity.

Adopting a new approach and changing the standard, however, would likely affect existing deployments and create backwards compatibility issues with older applications, the researchers said.

A potential attack vector involves sending bogus messages to a targeted system and then using the information returned by the system to crack the encryption.

“We show that an adversary can decrypt a ciphertext by performing only 14 requests per plaintext byte on average,” they said. “This poses a serious and truly practical security threat on all currently used implementations of XML Encryption.”

Workarounds

The German team notified all affected XML framework providers, including Amazon.com, IBM, Microsoft, and Red Hat, via the W3C mailing list before releasing their paper. They’ve engaged in “intensive discussions on workarounds” with some of the affected organisations.

Amazon.com acknowledged the issue on 20 October, and said it had fixed the related vulnerabilities in XML-based messaging protocol Simple Object Access Protocol (SOAP) in its Elastic Compute Cloud (EC2) infrastructure. The giant also checked to ensure no customers had been targeted by potential attackers.

“The research showed that errors in SOAP parsing may have resulted in specially crafted SOAP requests with duplicate message elements and/or missing cryptographic signatures being processed,” the company wrote in the Amazon Web Services security bulletin. “If this were to occur, an attacker who had access to an unencrypted SOAP message could potentially take actions as another valid user and perform invalid EC2 actions,” according to the advisory.

Amazon said it would be generally difficult for attackers to obtain a pre-signed SOAP request or a signed certificate, but admitted it was possible if the customer was sending SOAP requests over plain HTTP connections instead of the more secure HTTPS protocol. The researchers also disclosed cross-site scripting flaws that would have allowed attackers to obtain the certificate, according to Amazon.

This is not the first time the CBC mode in encryption protocols was targeted. Two researchers last year developed a “padding oracle attack” to decrypt encrypted cookies for websites and hijack users’ secure sessions. The technique affected the security of Microsoft’s ASP.NET framework and forced an emergency patch from Microsoft to close the hole.