Estoy usando nodejs y Ubuntu.
Cuando escaneo mi dominio en trustwave.com, recibí el siguiente error
Bloquee los algoritmos de cifrado con un tamaño de bloque de 64 bits (como DES y 3DES) ataque de cumpleaños conocido como Sweet32
Esta es una vulnerabilidad de cifrado, no limitada a ningún SSL / TLS específico Implementación de software. DES y Tripple DES (3DES) bloquean cifrados con un tamaño de bloque de 64 bits, tiene un límite de cumpleaños de aproximadamente 4 mil millones de bloques (o 2 a la potencia de 32, de ahí el nombre de este vulnerabilidad). Un atacante de hombre en el medio (MitM), que es capaz de capturar una gran cantidad de tráfico de red cifrado, puede recuperar datos confidenciales de texto sin formato.
y este problema puede evitarse desactivando los cifrados de bloque de 64 bits de longitud (como DES / 3DES) en todos los servidores SSL / TLS. El procedimiento exacto depende de la implementación real. Consulte la documentación de su software de servidor SSL / TLS y el software de servicio real (servidor http, servidor de correo, etc.).
NOTA
1: este hallazgo se basa en una prueba en vivo que realmente detecta cuál los cifrados son compatibles con el servidor. Es muy importante tener en cuenta que en muchos casos, una actualización de software (versión con portada posterior proporcionada por Proveedor del sistema operativo o versión "vainilla" tomada directamente de El proveedor de SSL / TLS) no será suficiente para resolver este problema. Generalmente la actualización de software no sobrescribe la configuración modificada manualmente archivos, lo que significa que DES / 3DES todavía puede estar disponible, incluso si el la actualización del software los desactiva de forma predeterminada.
Soy nuevo en nodejs y varias cosas,
He usado el siguiente código
var constants = require('constants')
, https = require('https')
, path = require('path')
, tls = require('tls')
, fs = require('fs');
var sslOptions = {
key: fs.readFileSync('/etc/ssl/private/private.key'),
secureProtocol: 'SSLv23_server_method',
secureOptions: constants.SSL_OP_NO_SSLv3 | constants.SSL_OP_NO_SSLv2 | constants.SSL_OP_NO_TLSv1,
// secureOptions: require('constants').SSL_OP_NO_TLSv1,
cert: fs.readFileSync('/etc/ssl/certs/STAR_w.crt'),
ca: [
fs.readFileSync('/etc/ssl/certs/AddTrustExternalCARoot_1.crt'),
fs.readFileSync('/etc/ssl/certs/AddTrustExternalCARoot_2.crt'),
fs.readFileSync('/etc/ssl/certs/AddTrustExternalCARoot_3.crt')
],
ciphers:[
"ECDHE-RSA-AES256-SHA384",
"DHE-RSA-AES256-SHA384",
"ECDHE-RSA-AES256-SHA256",
"DHE-RSA-AES256-SHA256",
"ECDHE-RSA-AES128-SHA256",
"DHE-RSA-AES128-SHA256",
"ECDHE-RSA-DES-CBC3-SHA",
"DES-CBC3-SHA",
"ECDHE-RSA-DES-CBC3-SHA",
"DES-CBC3-SHA",
"HIGH",
"!aNULL",
"!eNULL",
"!EXPORT",
"!DES",
"!RC4",
"!MD5",
"!PSK",
"!SRP",
"!CAMELLIA"
].join(':'),
//ca: fs.readFileSync('/etc/ssl/certs/AddTrustExternalCARoot.crt'),
requestCert: false,
rejectUnauthorized: false
};
¿Alguna idea de cómo desactivar el chiper?
Gracias