GaussDB(DWS)安全测试之TLS协议

ACBD 发表于 2021/09/28 15:50:56 2021/09/28
【摘要】 1.      协议安全机制SSL/TLS协议是业界常用的加密通信协议,通过该协议可以完成通信双方身份认证,会话密钥协商,通信内容加密和完整性保护。SSL/TLS协议的算法套件包含4种算法:密钥交换、认证、加密、MAC算法。如TLS_DHE_RSA_WITH_AES_128_CBC_SHA256算法套件,DHE是密钥交换算法,RSA是认证算法,AES_128_CBC是对称加密算法,SHA25...

1.      协议安全机制

SSL/TLS协议是业界常用的加密通信协议,通过该协议可以完成通信双方身份认证,会话密钥协商,通信内容加密和完整性保护。SSL/TLS协议的算法套件包含4种算法:密钥交换、认证、加密、MAC算法。如TLS_DHE_RSA_WITH_AES_128_CBC_SHA256算法套件,DHE是密钥交换算法,RSA是认证算法,AES_128_CBC是对称加密算法,SHA256是做完整性保护的MAC算法。如果没有显示密钥交换算法和认证算法,那么这两者都是RSA算法,如:TLS _RSA_WITH_AES_128_CBC_SHA。如果套件中的有一种算法不安全,那么就应该禁用该算法套件。

SSL/TLS协议体系结构

SSL/TLS协议实现的安全机制包括:

  • 密钥配送的安全性:利用密钥协商算法来保障密钥本身的安全性。
  • 数据传输的机密性:利用对称密钥算法对传输的数据进行加密。
  • 身份验证机制:基于证书利用数字签名方法对服务器和客户端进行身份验证,其中客户端的身份验证是可选的。
  • 消息完整性验证:消息传输过程中使用MAC算法来检验消息的完整性。

上述四个部分构成了SSL/TLS加密套件。

例如TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,由协议名称TLS、密钥交换算法 KeyExchange(密钥协商)ECDHE、认证算法 Au (身份验证)RSA、对称加密算法 Enc (信息加密)AES_256_CBC和信息摘要 Mac(完整性校验)SHA384组成。

SSL/TLS协议组成

TLS/SSL的功能实现主要依赖于三类基本算法:非对称加密、对称加密和散列函数 Hash,其利用非对称加密实现身份认证和密钥协商,对称加密算法采用协商的密钥对数据加密,基于散列函数验证信息的完整性。

2.      测试关注点

  • 协议版本
  • SSL协议:SSL协议各版本均存在安全漏洞,因此禁止使用,包括0、2.0和3.0。
  • TLS协议:禁止使用0、TLS1.1协议,荐使用TLS1.2或者TLS1.3。
  • 密钥协商交换算法

在客户端和服务器开始交换TLS所保护的加密信息之前,他们必须安全地交换或协定加密密钥和加密数据时要使用的密码。DH/ECDH的密钥协商协议不能验证服务器或用户,易受中间人攻击因此不能使用,需要使用能提供前向保密能力的DHE/ECDHE算法,且禁止使用RSA作为密钥交换算法。

  • 认证算法

目前主流的是RSA算法,需注意算法长度小于2048bits为不安全算法,推荐使用长度大于3072bits的安全算法。

  • 加密算法

数据加密使用对称加密算法,常见的加密算法有 AES-CBC、3DES、AES-GCM等,注意使用安全的加密算法,对于已被认为不安全的算法应禁止使用。

分组加密场景,产品应优先选择GCM模式。TLS的算法套件的选择,是按照顺序从前到后逐个匹配的,需要把优选的套件放在前面,次选的放在后面。

  • 完整性算法

为了避免网络中传输的数据被非法篡改,SSL/TLS利用基于MD5或SHA的MAC算法来保证消息的完整性。其中基于MD5的算法已被证明不安全,禁止使用,基于SHA的算法需使用安全的SHA3、SHA25或以上。

想了解GuassDB(DWS)更多信息,欢迎微信搜索“GaussDB DWS”关注微信公众号,和您分享最新最全的PB级数仓黑科技,后台还可获取众多学习资料哦~

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区),文章链接,文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:cloudbbs@huaweicloud.com进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。