07信息打点-资产泄漏&CMS识别&Git监控&SVN&DS_Store&备份
一.知识点和总览
知识点:
CMS指纹识别源码获取方式
习惯&配置&特性等获取方式
托管资产平台资源搜索监控
- 常见的Web源码泄漏漏洞及其利用: https://www.secpulse.com/archives/124398.html
源码泄漏原因:
1、从源码本身的特性入口
2、从管理员不好的习惯入口
3、从管理员不好的配置入口
4、从管理员不好的意识入口
5、从管理员资源信息搜集入口
源码泄漏集合:
git 源码泄露
svn 源码泄露
hg 源码泄漏
网站备份压缩文件
WEB-INF/web.xml 泄露
DS_Store 文件泄露
SWP 文件泄露
CVS 泄露
Bzr 泄露
GitHub 源码泄漏
二.直接获取-CMS 识别-云悉指纹识别平台
CMS 识别:https://www.yunsee.cn/
注意:下面的三四五六七是识别不到CMS用的
三.习惯不好-备份文件
备份服务器文件的时候备份到服务器文件夹内会导致泄露,如果备份到上一级目录就可以避免
四.配置不当-GIT 泄漏
Git是一个开源的分布式版本控制系统,在执行git init
初始化目录的时候,会在当前目录下自动创建一个.git
目录,用来记录代码的变更记录等。发布代码的时候,如果没有把.git
这个目录删除,就直接发布到了服务器上,攻击者就可以通过它来恢复源代码。
- 判断有无该安全问题,在网址后面加地址.git/看看返回代码
使用读取脚本命令GitHack,在githack目录打开cmd,然后格式为:
1 | python GitHack.py .git目标网址 |
五.配置不当-SVN 泄漏
SVN是一个开放源代码的版本控制系统。在使用SVN管理本地代码过程中,会自动生成一个名为.svn的隐藏文件夹,其中包含重要的源代码信息。网站管理员在发布代码时,没有使用‘导出’功能,而是直接复制代码文件夹到WEB服务器上,这就使.svn隐藏文件夹被暴露于外网环境,可以利用.svn/entries文件,获取到服务器源码。
- 判断:网址后面加.svn/entries访问该目录看结果
使用SvnHack脚本,用法:
1 | SvnHack.py [options] |
Options:
-h, –help show this help message and exit
-u Url, –url=Url add a svn url.
-d Dic, –dic=Dic list a directory.
-r READFILE, –read=READFILE read a file.
–download download the entire station.
例子:
列取目录:
1 | - 根目录 python SvnHack.py -u http://x.x.x.x/.svn/entries |
读源码:
1 | - 指定文件 python SvnHack.py -u http://x.x.x.x/.svn/entries -d scripts -r upd.js |
下载整站:
1 | python SvnHack.py -u http://x.x.x.x/.svn/entries —download |
六.配置不当-DS_Store 泄漏
.DS_Store是Mac下Finder用来保存如何展示 文件/文件夹 的数据文件,每个文件夹下对应一个。如果将.DS_Store上传部署到服务器,可能造成文件目录结构泄漏,特别是备份文件、源代码文件。
使用方法:
1 | python ds_store_exp.py http://www.example.com/.DS_Store |
七.PHP 特性-composer.json 泄漏
很多程序都会有这个文件,判断有没有网址目录访问composer.json即可,查到这个文件就可以获得网站的一些信息
八.下载配合-WEB-INF 泄露
WEB-INF
是Java的WEB应用的安全目录,如果想在页面中直接访问其中的文件,必须通过web.xml文件对要访问的文件进行相应映射才能访问。
WEB-INF
主要包含以下文件或目录:
九.资源监控-GITHUB 泄漏-语法搜索&关键字搜索&社工
GITHUB 资源搜索:
in:name test #仓库标题搜索含有关键字
in:descripton test #仓库描述搜索含有关键字
in:readme test #Readme 文件搜素含有关键字
stars:>3000 test #stars 数量大于 3000 的搜索关键字
stars:1000..3000 test #stars 数量大于 1000 小于 3000 的搜索关键字 forks:>1000 test
#forks 数量大于 1000 的搜索关键字
forks:1000..3000 test #forks 数量大于 1000 小于 3000 的搜索关键字 size:>=5000 test
#指定仓库大于 5000k(5M)的搜索关键字 pushed:>2019-02-12 test #发布时间大于 2019-02-12 的
搜索关键字 created:>2019-02-12 test #创建时间大于 2019-02-12 的搜索关键字 user:test
#用户名搜素
license:apache-2.0 test #明确仓库的 LICENSE 搜索关键字 language:java test #在 java 语
言的代码中搜索关键字
user:test in:name test #组合搜索,用户名 test 的标题含有 test 的
关键字配合谷歌搜索:
site:Github.com smtp
site:Github.com smtp @qq.com
site:Github.com smtp @126.com
site:Github.com smtp @163.com
site:Github.com smtp @sina.com.cn
site:Github.com smtp password
site:Github.com String password smtp