天命:这题本地php代码是无法复现的
首先打开网站,啥也没有,查看源码

发现文件,打开访问一下看看,发现是代码审计
<?php
highlight_file(__FILE__);
class emmm
{
public static function checkFile(&$page)
{
$whitelist = ["source"=>"source.php","hint"=>"hint.php"];
if (! isset($page) || !is_string($page)) {
echo "you can't see it";
return false;
}
// 拦截1:判断是否数组里面两个文件名
if (in_array($page, $whitelist)) {
return true;
}
// 拦截2:输入的东西在最后面添加上?,然后获取字符串长度,通过长度来截取字符串
// 如果?前面是数组里面的东西,就返回true,
$_page = mb_substr( $page, 0, mb_strpos($page . '?', '?'));
if (in_array($_page, $whitelist)) {
return true;
}
// 拦
PHP代码审计中的文件名拦截与安全漏洞分析

最低0.47元/天 解锁文章
1474

被折叠的 条评论
为什么被折叠?



