一个CISSP对“相同的SSH密钥事件”的深入分析

一个CISSP对“相同的SSH密钥事件”的深入分析

 

事件内容:

多个国家有超过250,000个路由器使用了相同的SSH密钥。

事件分析:

SSH工作原理,如下图所示:


  1. 客户端连接器的22端口

客户端与服务器在完成底层TCP三次握手之后,与服务器的22端口也就是SSH的标准端口建立会话。

  1. 响应请求,并传送公钥

服务器响应客户端的SSH连接请求,并将公钥传送给客户端,客户端在之后的几个数据包会将数据采用非对称加密中公钥发送给服务器。服务器会使用非对称加密中的私钥对数据包内容进行解密并读取数据。

CISSP知识点:

a、           非对称加密:非对称密钥加密使用一对相关却无法推算的密钥对(通常基于数学难题),一个是主体单独持有对外保密的私钥(private key),一个是与主体身份关联(通常通过PKI等信任机制)对外公开的公钥(public key),密钥对中一个密钥加密的数据可以使用另一个密钥解密

b、          SSH协议采用了RSA算法,RSA算法的安全性是基于分解大整数的困难性,即将两个大素数相乘得到一个大整数很容易,而将这个大整数分解为两个素数却非常困难,到目前为止,无法找到一个有效的算法来分解两大素数之积;

客户端在连接服务器时,服务器会产生一对密钥,此密钥由非对称加密产生,客户端发送的数据会通过公钥加密,而这种加密只有通过私钥才能进行解密。这一对密钥由服务器产生,公钥会发送给客户端,私钥留在本地进行解密。由于只有服务器才有私钥,所以我们可以理解为只有服务器才能看到数据包的内容,从而防止数据包被人截获后获取数据包内的数据。

  1. 客户端产生通讯密钥,公钥加密后传送给服务器

客户端会产生一个通讯密钥用于之后的数据加密,此密钥既不是公钥也不是私钥,仅仅是通信过程中的双方才可以进行加解密的密钥。

  1. 服务器通过私钥解密,并请求验证用户名密码

客户端产生的通讯密钥通过公钥加密后传送给服务器,服务器使用私钥解密后保存该通讯密钥。之后服务器会向客户端发送用户名密码验证的请求。

  1. 账号密码验证通过后,使用通讯密钥进行传输。

客户端输入账号与密码,服务器通过其验证并检查该账号的权限体系,向客户端返回使用上面的通讯密钥加密后的数据。后面的数据传输会使用该通讯密钥尽行传输。

 

为什么私钥相同会造成如此大的危害?

根据我们上面所介绍的SSH的原理所述。私钥用来对客户端传送的通讯密钥进行解密,而后的通信会采用通信密钥进行加密。在这个案例中,由于运营商使用了相同的操作系统镜像对路由器进行设置从而导致其私钥相同;

也就是说,我们掌握了一台设备私钥,进而通过嗅探获取其他路由器在SSH会话过程初始时的通信密钥,然后通过私钥对数据包解密并获取通信密钥,然后使用通信密钥对后续的SSH数据包进行解密,从而读取到客户端连接到路由器时所有的数据。

 

实操环境:汇哲科技有相应实操环境,可提供我们的学员进行操作,具体详情可以和我们联系。

近期开课时间:

CISA 北京37-11      上海318-22

CISSP】北京314-18     上海325-29   

CISP 北京320-28     上海36-14   

CISM 上海37-10

CSSLP 上海 37-10

报名培训即赠送信息安全意识产品,另有培训优惠包

 

汇哲培训 小陆 Tel(微信): 18930807463 
E-mail: [email protected]

 

 

你可能感兴趣的:(一个CISSP对“相同的SSH密钥事件”的深入分析)