bo-blog任意变量覆盖漏洞

- AV AC AU C I A
发布: 2025-04-13
修订: 2025-04-13

// go.php $q_url=$_SERVER["REQUEST_URI"]; @list($relativePath, $rawURL)=@explode('/go.php/', $q_url); $rewritedURL=$rawURL; // 来自$_SERVER["REQUEST_URI"],可以任意提交的:) ... $RewriteRules[]="/component\/([^\/]+)\/?/"; // 这个正则限制的不够细致,可以很轻易的绕过:) ... $RedirectTo[]="page.php?pagealias=\\1"; $i=0; foreach ($RewriteRules as $rule) { if (preg_match($rule, $rewritedURL)) { $tmp_rewritedURL=preg_replace($rule, '<'.$RedirectTo[$i].'<', $rewritedURL, 1); $tmp_rewritedURL=@explode('<', $tmp_rewritedURL); $rewritedURL=($tmp_rewritedURL[2]) ? false : $tmp_rewritedURL[1]; break; } $i+=1; } if ($rewritedURL==$rawURL || !$rewritedURL) { ... $parsedURL=parse_url ($rewritedURL); // 这里的$parsedURL['query']就是要利用的变量了:) parse_str($parsedURL['query']); // 通过这个地方可以覆盖任意变量 include(basename($parsedURL['path'])); // 通过上面的覆盖,可以利用这里包含本地文件,不过用了basename()函数处理:(...

0%
暂无可用Exp或PoC
当前有0条受影响产品信息