Researchers at the University of Texas at Austin and Stanford have revealed that poorly designed APIs utilized in SSL implementations are to fault for vulnerabilities in many vital non-browser software packages.
The research team said a number of factors contribute to the poor security of SSL implementations: a lack of testing for vulnerabilities during development; unsecure SSL libraries by default; misuse or misinterpretation of security options in secure libraries by developers; SSL vulnerabilities are often not present on the application layer, but in middleware—out of a developers’ purview; and some cases where developers deliberately turn off validation.
The researchers point out that the SSL libraries (JSSE, OpenSSL, GnuTLS, and others) are often correct, but developers misunderstand the security options, parameters, and return values.
By incorrectly setting a return value in Amazon’s Flexible Payments Service PHP library, for example, a developer can accidentally turn off certificate validation functionality.
PayPal Payments Standard PHP library contains the same bug, the researchers said.
“SSL certificate validation is completely broken in many critical software applications and libraries,” the report concluded.