Falla en certificados X.509 permite intercambio de datos encubierto

El ultimo año, durante la conferencia de Bsides de Julio del 2017, el investigador de seguridad de  Fidelis CyberSecurity Jason Reaves, demostró como encubrir datos, usando certificados digitales X.509, y ahora el experto publico el código utilizado en la prueba de concepto.

El standard X.509, define el formato de los certificados de llave publica usados actualmente en muchos protocolos de Internet, incluyendo TLS/SSL. Por ejemplo, TLS usa un certificado X.509 durante el proceso de Handshake para establecer una comunicación encriptada entre ambas partes.

El investigador demostró que un atacante motivado podría utilizar estas tecnologías para saltarse los procesos y mecanismos de seguridad. Adicionalmente se puede resumir de lo informado por Reaves, que los certificados TLS X.509, tienen campos para negociar información entre ambas partes, como puede ser la versión, el número de Serie, periodo de valides etc, por tanto se puede abusar del contenido del certificado para ocultar información maliciosa en alguno de esos campos.

La prueba de concepto Reaves uso el siguiente campo.

class=wrap_text>SubjectKeyIdentifier

El problema ocurre desde la versión 3 del certificado X.509 el cual permite a las CA, añadir una descripción al certificado, pero desafortunadamente, también puede añadirse código malicioso en estos. Adicionalmente atacantes podrían enviar pequeñas cantidades de datos hacia un servidor externo sin ser advertidos.

Acá se muestra como se logró añadir la aplicación Mimikats, para un ataque posterior dentro de la negociación TLS.-




 


Fuente: https://www.fidelissecurity.com/threatgeek/2018/02/exposing-x509-vulnerabilities