WEB USERS are at risk of man-in-the-middle (MITM) attacks, security firm Sucuri has warned, after discovering that popular web development languages remain vulnerable to transport layer security (TLS) spoofing and exploitation from revoked certificates.
Sucuri, following up a 2012 academic paper that first highlighted the weaknesses, explained that many of the vulnerabilities have still not been patched.
"Web developers today rely on various third-party APIs. For example, APIs [that] allow you to accept credit card payments, integrate a social network with your website, or clear your CDN's cache," said Securi in a blog post.
"The HTTPS protocol is used to secure the connection with the API server. However, if your web app doesn't verify the TLS certificate, a malicious person can steal your passwords or your customers' credit card numbers.
"When implemented correctly, the TLS protocol provides encryption and authentication. The connection between your server and the API server is encrypted using a symmetric cipher (typically AES) so an eavesdropper cannot read your data.
"The server also confirms its identity (authenticates itself) by sending an X.509 certificate to the client. The client must verify the certificate's signature against the list of known root certificates, but this step is often neglected. As a result, a MITM attack becomes possible."
In particular, Sucuri warned that financial institutions, especially those offering banking or other transactions online, ought to ensure that their sites verify TLS certificates correctly. In tests, the firm found a complicated and poorly documented situation.
"Two years ago, IOActive tested 40 mobile banking apps and found that 40 per cent of them are vulnerable to MITM attacks," the firm said.
"Another group of researchers from Leibniz University of Hanover and Philipps University of Marburg found that eight per cent of popular Android apps fail to verify certificates.
"A passive MITM attack against these mobile apps is very real when you use a public WiFi hotspot. The attack is also possible in the case of a web server accessing a third-party API."
The problem is that the use of third-party SSL libraries, such as OpenSSL, GnuTLS and CryptoAPI, as well as higher-level data transport libraries, such as Apache HTTPClient, act as wrappers around SSL libraries.
There are some mitigation methods that developers can employ, according to IBM Security Intelligence.
"Upgrading to the latest version of languages will remove many certificate verification problems, although not the revocation aspect. There are also web services that can test any APIs a server is using. This kind of service can identify problems that may arise from the use of shared or unmaintained programs," the company said.
"The end result is that TLS can still be broken, even four years after significant faults were pointed out. The remedies are there, but their use must be vigilant for them to be effective." µ
To hear more about security challenges, the threats they pose and how to combat them, sign up for The INQUIRER sister site Computing's Enterprise Security and Risk Management conference taking place on 24 November.
Flagship will launch a day early to avoid being 'overshadowed' by Apple
EC says merged entity will 'continue to face significant competition'
Alexa, give me a reason to be cheerful about the UK economy
No, it isn't 1 April