信息收集(四类信息收集)
一、信息泄露
dirsearch 去扫描,看一下.pdf 、readme.md 、readme.txt 、xlsx 、.DS_Store 敏感的文件,通过这些敏感信息去确定该网页的框架的结构是什么类型,然后去github上找对应框架的默认密码(适用于小架构的网站,小公司类的);或者去看xlsx等等泄露的数据信息,找有用的eg:
/.DS_Store
/xxx.xlsx
/readme.md
/xxx.pdf
/robots.txt
/index.php~
/index.php.bak
/www.zip
/wwwroot.zip
/htdocs.zip
/.rar
/.zip
/.7z
/.tar.gz
/.bak
/.swp
/.txt
二、svn源码泄露
当开发人员使用 SVN 进行版本控制,对站点自动部署。如果配置不当,可能会将.svn文件夹直接部署到线上环境。这就引起了 SVN 泄露漏洞。
版本控制工具:dvcs-ripper
https://github.com/kost/dvcs-rippeLinuxr
apt-get install perl
切换到工作目录下,perl xxx.pl 就能执行了
1.先对目标url进行扫描,确认是 .svn 泄露后,使用 dvcs-ripper 工具中的 rip-svn.pl 脚本进行 clone.
eg:
index.html和svn目录就是clone出来的
2.svn/pristine/
进入.svn文件夹
pristine存放的时原始的文件,可能包含备份的文件。
eg:
ps:在备份文件里寻找需要的东西一般用:grep 比如:
cat wc.db | grep flag
svn源码泄露暂时能有的操作就这么多。
三、svn源码泄露
Index
Git下载地址,有些地址下载的功能比较单一,无法适用后两种情况,用这个就好
https://github.com/BugScanTeam/GitHack
执行命令即可
https://github.com/BugScanTeam/GitHack
log
1.一样先是扫描发现 .git 泄露
2.使用 GitHack 工具 clone 目标源代码到本地
Git源码泄露不止涉及到当前git版本时需要查看历史记录
查看历史记录
git log
切换版本
git reset
对比两次提交
git diff
git log 会出现先前的几个版本信息,注意要切换到源码泄露文件夹里~,/dist/xxx.
每个版本有对应的id标识,用git diff +id号查看版本差别
Stash
当正在dev分支上开发某个项目,这时项目中出现一个bug,需要紧急修复,但是正在开发的内容只是完成一半,还不想提交,这时可以用git stash命令将修改的内容保存至堆栈区,然后顺利切换到hotfix分支进行bug修复,修复完成后,再次切回到dev分支,从堆栈中恢复刚刚保存的内容。
简单来说,stash 用于保存 git 工作状态到 git 栈,在需要的时候再恢复。
git stash
备份当前工作区的内容,保存到git 栈中,从最近的一次commit中读取相关内容
git stash pop
从git栈中获取到最近一次stash进去的内容,恢复工作区的内容。。获取之后,会删除栈中对应的stash。
由于可能会stash多次,git使用栈管理,我们可以使用git stash list查看所有的stash
清空git栈
git stash clear
四、网站信息备份文件
这种很少出现了,出现了价值不是很大,因为出现这种错误网站本来就没什么价值:)
网站源码
bak文件
vim缓存
.DS_Store
当开发人员在线上环境中对源代码进行了备份操作,并且将备份文件放在了 web 目录下,就会引起网站源码泄露。
整理了一点
/robots.txt /index.php~ /index.php.bak /www.zip /wwwroot.zip
/htdocs.zip /.rar /.zip /.7z /.tar.gz /.bak /.swp /.txt
bak文件:
当开发人员在线上环境中对源代码进行了备份操作,并且将备份文件放在了 web 目录下,就会引起网站源码泄露。
eg:http://url/index.php.bak 等
vim缓存(.swp备份文件):
当开发人员在线上环境中使用 vim 编辑器,在使用过程中会留下 vim 编辑器缓存,当vim异常退出时,缓存会一直留在服务器上,引起网站源码泄露。
eg:URL:xxx/index.php.swp
下载.swp文件代码尝试
并使用vim打开,打开命令:vim -r index.php.swp
打开后则发现源码,进行代码审计
.DS_Store
.DS_Store 是 Mac OS 保存文件夹的自定义属性的隐藏文件。通过.DS_Store可以知道这个目录里面所有文件的清单。
eg:用 Python-dsstore 这个工具 (https://github.com/gehaxelt/Python-dsstore) 来完成 .DS_Store 文件的解析:
用法:wget http://xxx.com/.DS_Store -qO samples/.DS_Store.ctfxxx
#正常的话文件已经再 samples 文件夹里
#ls -al 查看
python main.py samples/.DS_Store.ctfxxx
ps:文件里已经有原始的.DS_Store.ctf,所以取名要另取