源码泄露
源码泄露
原理
.git 很好理解吧,git仓库都会有个隐藏文件夹
.git文件夹是git init后在当前目录生成的一个管理git仓库的文件夹,这里包含所有git操作所需要的东西
.DS_Store在mac下听常见的,
DS_Store 是用来存储这个文件夹的显示属性的:比如文件图标的摆放位置。删除以后的副作用就是这些信息的失去。
.swp这是在vim编辑时产生的临时文件(自己可以试下)
vim中的swp即swap文件,在编辑文件时产生,它是隐藏文件,如果程序正常退出,临时文件自动删除,如果意外退出就会保留,文件名为 .filename.swp,(第一次产生的交换文件名为“.filename.txt.swp”;再次意外退出后,将会产生名为“.filename.txt.swo”的交换文件;而第三次产生的交换文件则为“.filename.txt.swn”)
备份文件名为 filename~
.svn
这个和.git类似
.bak
这个是手工备份常用的后缀名,也可以用别的后缀名如.old,.temp等等也是常见的文件备份后缀名吧,
还有可能有压缩文件这样的备份未删除,后缀如.rar,.zip,.7z,.tar.gz…
当然还有许多别的文件泄露的可能
例子
上面的文件大部分都是隐藏文件所以有几率被忽视而发布到网站上,这时我们就可以利用其来获得信息
可以看到前面攻防世界博客中17题,20题都出现了git泄露用到了githack这样的工具
第4题用到了.bak备份的文件泄露
.DS_Store
.DS_Store源码泄露可以看下面的一道ctf题
表面上是一道sql注入题,但实际sql注入是极为麻烦过滤特别多,而用源码泄露就很轻松
工具一跑就拿到flag
题目来源:https://ctf.bugku.com/challenges#sql注入2
vim文件泄露
下面这道题主要一个考查点就是vim文件泄露
查看源码可以看到提示使用的编辑器是vim,可能存在临时文件
但查看.step1.php.swp返回404…
后面看别人说是.submit.php.swp。。。我也不知道为什么是submit。。。
下载回来后删掉末尾的.swp,然后进行代码审计
可以看到需要token参数,然后长度是10和值
http://ctf5.shiyanbar.com/10/upload/[email protected]&token=0000000000
然后构造上面的url就能得到flag
详细步骤可以参考:CTF实验吧-忘记密码了【vim编辑器备份文件】
题目来源:http://ctf5.shiyanbar.com/10/upload/