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,信息搜集部分结束~
TRANSLATE withArabic | Hebrew | Polish |
Bulgarian | Hindi | Portuguese |
Catalan | Hmong Daw | Romanian |
Chinese Simplified | Hungarian | Russian |
Chinese Traditional | Indonesian | Slovak |
Czech | Italian | Slovenian |
Danish | Japanese | Spanish |
Dutch | Klingon | Swedish |
English | Korean | Thai |
Estonian | Latvian | Turkish |
Finnish | Lithuanian | Ukrainian |
French | Malay | Urdu |
German | Maltese | Vietnamese |
Greek | Norwegian | Welsh |
Haitian Creole | Persian |
- 中文(简体)
- 中文(繁体)
- 丹麦语
- 乌克兰语
- 乌尔都语
- 亚美尼亚语
- 俄语
- 保加利亚语
- 克罗地亚语
- 冰岛语
- 加泰罗尼亚语
- 匈牙利语
- 卡纳达语
- 印地语
- 印尼语
- 古吉拉特语
- 哈萨克语
- 土耳其语
- 威尔士语
- 孟加拉语
- 尼泊尔语
- 布尔语(南非荷兰语)
- 希伯来语
- 希腊语
- 库尔德语
- 德语
- 意大利语
- 拉脱维亚语
- 挪威语
- 捷克语
- 斯洛伐克语
- 斯洛文尼亚语
- 旁遮普语
- 日语
- 普什图语
- 毛利语
- 法语
- 波兰语
- 波斯语
- 泰卢固语
- 泰米尔语
- 泰语
- 海地克里奥尔语
- 爱沙尼亚语
- 瑞典语
- 立陶宛语
- 缅甸语
- 罗马尼亚语
- 老挝语
- 芬兰语
- 英语
- 荷兰语
- 萨摩亚语
- 葡萄牙语
- 西班牙语
- 越南语
- 阿塞拜疆语
- 阿姆哈拉语
- 阿尔巴尼亚语
- 阿拉伯语
- 韩语
- 马尔加什语
- 马拉地语
- 马拉雅拉姆语
- 马来语
- 马耳他语
- 高棉语