Tag: tls1.2

通过TLS连接发送跨域策略以通过节点js进行刷新

我有一个客户端在闪存as3。 我有2个服务器,一个主要用于Flash客户端和一个套接字策略服务器。 例如,我在端口843上运行套接字策略服务器,在任何端口X上运行我的客户端。 现在,当我连接我的Flash客户端,使用这个: Security.loadPolicyFile("xmlsocket://domain.com:port"); SecureSocket.connect(ip, port); 它实际上首先连接到我的策略套接字服务器,发送一个策略文件请求行,并接收我使用我的服务器发送的那个看起来像这样的: tls.createServer(options, function(sock) { sock.on('data', function(data) { console.log('Data receveid: '.cyan + data + ' from ' + sock.remoteAddress); if (data == "<policy-file-request/>\0") { sock.write('<?xml version="1.0"?><!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd"><cross-domain-policy><site-control permitted-cross-domain-policies="all"/><allow-access-from domain="*"></cross-domain-policy console.log('Sent policy file to: '.green + sock.remoteAddress); } … 之后,连接自动closures。 然后尝试连接到我的真实服务器,并再次发送到服务器的策略文件请求线,然后连接closures。 从现在开始,我真的不知道该怎么做,一直试图整天在网上search。 任何人都知道我错过了什么?

将https代理configuration为只允许TLS1.2进行传出请求

我正在使用客户端证书从节点应用程序进行HTTPS连接: var options = { hostname: 'https://my-server.com', port: 443, path: '/', method: 'GET', key: fs.readFileSync('client1-key.pem'), cert: fs.readFileSync('client1-crt.pem'), ca: fs.readFileSync('ca-crt.pem') }; var req = https.request(options, res => { […] }); 一切工作正常,但是我想添加代码,以确保只允许TLS 1.2连接。 我找不到任何方法来configurationhttps.agent选项或其他地方。 有没有可能configuration这个,或者我必须build立一个连接,然后查询协议版本,如下所示: res.socket.getProtocol() === 'TLSv1.2' 如果协议不满意就中止连接?

我怎样才能find一个客户端可用的密码套件

我正在运行一个节点服务器,我需要找出一个请求客户端可以支持的密码套件。 这可能与一个实例吗?

避免在TLS客户端中发送TLS_EMPTY_RENEGOTIATION_INFO_SCSV密码Hello

Node.js默认发送TLS_EMPTY_RENEGOTIATION_INFO_SCSV密码,以防止POODLE攻击 。 我试图通过用自定义密码列表覆盖TLS密码来避免发送这种密码(尽pipe这可能构成安全风险)。 但是,无论我做什么,Node.js都会一直发送TLS_EMPTY_RENEGOTIATION_INFO_SCSV密码。 我试图故意避免发送这个密码来模仿Firefox / Chrome的TLS协商。 这里是我用来修改和检查哪些密码节点发送的代码: var request = require('request'); var ciphers = [ 'ECDHE-ECDSA-AES128-GCM-SHA256', 'ECDHE-RSA-AES128-GCM-SHA256', 'ECDHE-ECDSA-AES256-SHA', 'ECDHE-ECDSA-AES128-SHA', 'ECDHE-RSA-AES128-SHA', 'ECDHE-RSA-AES256-SHA', 'DHE-RSA-AES128-SHA', 'DHE-RSA-AES256-SHA', 'AES128-SHA', 'AES256-SHA', 'DES-CBC3-SHA' ].join(':'); var options = { ciphers: ciphers, secureProtocol: 'TLSv1_2_method', url: 'https://www.howsmyssl.com/a/check' }; request(options, function (error, response, body){ if (!error) { console.log(body); } else { console.log(error); } }); 有什么办法可以禁止在Node.js中发送这个密码吗?