menu arrow_back 湛蓝安全空间 |狂野湛蓝,暴躁每天 chevron_right ... chevron_right 179-EmpireCMS chevron_right 004-EmpireCMS 7.5 配置文件写入漏洞.md
  • home 首页
  • brightness_4 暗黑模式
  • cloud
    xLIYhHS7e34ez7Ma
    cloud
    湛蓝安全
    code
    Github
    004-EmpireCMS 7.5 配置文件写入漏洞.md
    1.56 KB / 2021-07-17 00:01:28
        # EmpireCMS 7.5 配置文件写入漏洞
    
    ## 一、漏洞简介
    
    该漏洞是由于安装程序时没有对用户的输入做严格过滤,导致用户输入的可控参数被写入配置文件,造成任意代码执行漏洞。
    
    ## 二、漏洞影响
    
    EmpireCMS 7.5
    
    ## 三、复现过程
    
    ### 漏洞分析
    
    开始进行审计安装程序,根据经验安装问题一般出现在配置数据输入配置时导致,常见引发问题漏洞的参数用户输入数据库名参数、可控的表前缀等可控参数,于是乎定位到代码位置install/index.php 645行附近,可以看到表名前缀phome_,并将获取表名前缀交给了mydbtbpre参数。继续往下看并跟踪参数传递。
    
    ![](images/2020_07_08/15942232870835.jpg)
    
    
    在代码位置/e/install/data/fun.php 347~379行发现,将用户前端输入的表前缀(默认phome_)替换掉默认的phome_后带入了sql语句中进行表的创建,并且可以发现过程中未作过滤。
    
    ![](images/2020_07_08/15942232944186.jpg)
    
    
    创建表的同时将配置数据包含可控的表前缀一起写入到config.php配置文件,代码位置/e/install/data/fun.php 587~645行
    
    ![](images/2020_07_08/15942233033659.jpg)
    
    
    ![](images/2020_07_08/15942233084641.jpg)
    
    
    整个install过程中并未对用户数据进行过滤,导致配置文件代码写入。
    
    ### 漏洞复现
    
    ![](images/2020_07_08/15942233174314.jpg)
    
    
    ![](images/2020_07_08/15942233224710.jpg)
    
    ![](images/2020_07_08/15942233267113.jpg)
    
    
    ## 参考链接
    
    > http://qclover.cn/2018/10/10/EmpireCMS_V7.5%E7%9A%84%E4%B8%80%E6%AC%A1%E5%AE%A1%E8%AE%A1.html
    
    
    
    links
    file_download