CTFHub技能树——信息搜集
目录遍历
挨个点,在/4/2发现flag.txt。
PHPINFO
找啊找啊找啊找啊,终于在Environment里找到了flag。
备份文件下载
网站源码
打开网站,看到这个页面,这个提示就是告诉我们遍历了,写个脚本爆破一下:
得到结果如下:
有个叫www.zip的文件,访问一下,下载下来:
这个txt文件里面没什么东西,文件名应该是在提示我们flag的位置,访问URL/flag_2896617771.txt,get了flag!
bak文件
bak文件是备份文件,例如index.php.bak就是index.php的备份文件。这道题告诉我们flag在源代码中,访问/index.php.bak,用记事本打开下载的bak文件,可以看到源码,里面就有flag。
vim缓存
在使用vim时会创建临时缓存文件,关闭vim时缓存文件则会被删除,当vim异常退出后,因为未处理缓存文件,导致可以通过缓存文件恢复原始文件内容。
第一次产生的文件扩展名:.swp
第二次:.swo
第三次:.swn
进来之后扫目录,扫到/.index.php.swp,访问之后下载文件,用vim处理它:
vim -r index.php
复现代码,发现flag。
.DS_Store
.DS_Store是MacOS保存文件夹自定义属性的隐藏文件。进来之后访问./DS_Store,下载文件,用二进制文件查看器打开文件(我用的IDA),可以发现中间有一段提示:
告诉你flag就在这,把小点点们去掉,得到一个txt文件名,访问/xxxxx.txt,得到flag。
Git泄露
当前大量开发人员使用git进行版本控制,对站点自动部署。如果配置不当,可能会将.git文件夹直接部署到线上环境。这就引起了git泄露漏洞。
需要用到的git相关命令:
git log #显示最近到最远的提交日志 git diff HEAD^ #查看不同 git reset #回退版本库
Log
GitHack一把梭,把东西弄下来,在文件夹内执行git命令:git log:
我们可以看到,第一步init是初始化仓库,在这步会产生.log文件。第二步add flag,添加了flag。第三步remove了flag。我们现在处于remove flag的状态,使用git diff命令查看两个版本的不同之处:
get daze~
补充:不使用git diff,使用git show也一样可以抓到flag。
stash
对于一个没学过git的人来说,我对stash的印象就是缓冲区,在这里保存了一些工作现场。
老规矩,githack,在弄下来的文件夹里使用git,git log查看历史日志,和上一次一样,但这次不能通过git diff或git show获得flag了,flag并没有被直接写出来。
使用git stash list命令,列出stash中的东西:
发现还真有东西,使用git stash pop命令,将stash中的东西弹出:
好像弹出来了个txt文件,在文件夹里一看还真是,打开获得flag。
index
老样子,结果发现直接把flag的txt文件搞出来了。
SVN泄露
当开发人员使用 SVN 进行版本控制,对站点自动部署。如果配置不当,可能会将.svn 文件夹直接部署到线上环境。这就引起了 svn 泄露漏洞。
信息泄露神器出场:dvcs-ripper,svn和hg都要用到它。
./rip-svn.pl -v -u URL/.svn
把文件爬下来,然后ls -al查看所有文件:
进入.svn文件夹,再进入pristine文件夹,这里还有两个文件夹里面放着数据,都打开看一遍,就找到flag了。
hg泄露
当开发人员使用 Mercurial 进行版本控制,对站点自动部署。如果配置不当,可能会将.hg 文件夹直接部署到线上环境。这就引起了 hg 泄露漏洞。
爬,打开,进入,值得一提的是,看起来比较有用的data文件夹其实挺没用的,我们要打开的是fncache文件,打开之后发现一个txt:
访问一下,get到flag。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具