【BUUCTF】[ACTF 2020]新生赛 backupfile1
[TOC]
[ACTF2020 新生赛]BackupFile1
dirsearch由于未知原因无法使用,故采用dirmap进行扫描。
dirmap语法:
┌──(wizard㉿kali)-[~/Desktop/dirmap-master] |
扫描出了index.php.bak
【补充:常见的备份文件后缀名有 .git .svn. swp .~ .bak .bash_history】
下载文件,阅读源码,审计发现是php的弱类型匹配:
|
简单的弱类型绕过
php中两个等于号是弱等于
取str的123与key进行比较,(弱比较:如果比较一个数字和字符串或者比较涉及到数字内容的字符串,则字符串会被转换成数值并且比较按照数值来进行,在比较时该字符串的开始部分决定了它的值,如果该字符串以合法的数值开始,则使用该数值,否则其值为0。所以直接传入key=123就行)
当一个字符串欸当作一个数值来取值,其结果和类型如下:如果该字符串没有包含'.','e','E'并且其数值值在整形的范围之内 |
构造payload:
url/?key=123 |
可得flag
dirsearch的正确使用:
安装步骤:
git clone https://github.com/maurosoria/dirsearch.git |
使用方法:
python3 dirsearch.py -u url -e * |
这样便成功扫描出来了备份文件
总结:dirsearch安装错误,没有clone到合适的包,故无法执行。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 The DC_comics's World!