zoukankan      html  css  js  c++  java
  • 跟bWAPP学WEB安全(PHP代码)--PHP代码注入

    ---恢复内容开始---

    # 背景 *** *** 今天我们换一个方式来分析这个漏洞,从渗透的角度去搞。

    渗透过程



    测试漏洞


    先来看看,观察URL是:http://192.168.195.195/bWAPP/phpi.php

    message像是有链接,点击看看

    在查看url是http://192.168.195.195/bWAPP/phpi.php?message=test,GET型参数,burp扫一下

    感觉不对,怎么可能只有Flash跨域红红的,目测这个地方是echo xxxx,猜测代码:

    <?php
        echo $_GET["message"];
    ?>
    

    可是这样哪里来的代码注入啊,难道message有问题,测试phpinfo(),果然有问题

    那就可以看代码了,执行message=system("cat phpi.php > phpi.txt") ,请求一下phpi.txt

    我们来看代码:

    代码设计


    <?php
    
    if(isset($_REQUEST["message"]))
    {
    
        // If the security level is not MEDIUM or HIGH
        if($_COOKIE["security_level"] != "1" && $_COOKIE["security_level"] != "2")
        {
    
    ?>
        <p><i><?php @eval ("echo " . $_REQUEST["message"] . ";");?></i></p>
    
    <?php
    
        }
    
        // If the security level is MEDIUM or HIGH
        else
        {
    ?>
        <p><i><?php echo htmlspecialchars($_REQUEST["message"], ENT_QUOTES, "UTF-8");;?></i></p>
    
    <?php
    
        }
    
    }
    
    ?>
    

    卧槽,什么鬼竟然用了eval,这个可是执行代码内容的函数,类似的还有asset、preg_replace、call_user_func, call_user_func_array,array_map等等,这其中还包括thinkphp5-RCE的罪魁祸首函数哈哈。中级和高级过滤了,使用了htmlspecialchars函数就OK了

  • 相关阅读:
    20190912
    20190825
    20190818
    20190811
    20190804
    数据结构与算法之顺序表
    数据结构与算法之顺序表
    数据结构与算法之单链表
    数据结构与算法之循环双链表
    数据结构与算法之循环单链表
  • 原文地址:https://www.cnblogs.com/KevinGeorge/p/10242189.html
Copyright © 2011-2022 走看看