使用 WireShark 对 SSH 协议进行分析
这里主要对基于口令的安全认证的传输层协议和用户认证协议进行分析
client 端是使用的是基于 ssh2 的 Termius
server 端是一台运行 ubuntu 的 ecs,同样是基于 ssh2 的 openssh
对抓到的包一步一步进行分析
基于口令认证的 ssh 到底安不安全,记得前面说过的指纹吗,在第一次进行 ssh 连接的时候,client 会将指纹保存在本地,第二次进行连接时候,client 会将本地保存的指纹与 server 发送的进行对比。那么这里就是关键的地方了,如果一个黑客劫持了 client 与 server 的通信,伪装成 server 与 client 进行通信,问题就来了,如果客户不知道指纹发生了更改,选择继续通信,那么接下来相当于,客户的 PC 就与黑客的 PC 建立了连接,这就是中间人攻击。
在这里,我尝试进行了一次 MITM 攻击,可以看到,如果客户稀里糊涂点了个 repalce 就完蛋了。其次对于 ssh2 以下的 ssh 协议,被 arp 到密码的可能性更大。