Day19 Web应用&源码获取&闭源备份开发泄漏&WebPack打包&资源搜索&ICO定位
源码泄漏原因:
1、从源码本身的特性入口
2、从管理员不好的习惯入口
3、从管理员习惯的开发入口
4、从管理员不好的配置入口
5、从管理员不好的意识入口
6、从管理员资源信息搜集入口
源码泄漏大概集合:
Webpack 打包泄漏
composer.json
GitHub 源码泄漏
git 源码泄露
svn 源码泄露
网站备份压缩文件
DS_Store 文件泄露
hg 源码泄漏
SWP 文件泄露
CVS 泄露
Bzr 泄露
WEB-INF/web.xml 泄露
思路点:
1、使用指纹识别平台获取到目标是什么名字的源码程序
通过搜索引擎获取到源码
2、使用指纹识别平台不能获取目标信息
后端:借助 svn git composer.json ds_store 备份扫描等配置泄漏安全
前端:webpack 打包 谷歌插件获取源码
如果没有这些问题 还想获取源码怎么办 见下面方法
3、借助资源平台去搜索(github gitee oschina 等源码)
特定文件
特征联系方式
github 监控( 除了源码,漏洞更新,工具更新等都有用处)
目标使用的源码是开源还是闭源,是否公开
案例:
1、已知指纹识别获取源码途径
2、GIT 泄漏-未知指纹识别获取源码途径
3、SVN 泄漏-未知指纹识别获取源码途径
4、DS_Store 泄漏-未知指纹识别获取源码途径
GIT : https://github.com/lijiejie/GitHack
SVN : https://github.com/callmefeifei/SvnHack
DS_Store :https://github.com/lijiejie/ds_store_exp
通用 : https://github.com/0xHJK/dumpall
5、WebPack 打包-未知指纹识别获取源码途径
https://github.com/NothingCw/SourceDetector-dist
6、composer.json-未知指纹识别获取源码途径
7、源码文件备份泄漏-未知指纹识别获取源码途径
目录文件扫描工具获取存在,直接访问
8、Github 资源搜索-未知指纹识别获取源码途径
拓展:配合后期监控保证第一时间通知
资源搜索语法及关键字配合谷歌搜索表格
|
搜索类型 |
搜索语法 |
|
仓库标题搜索 |
in:name test |
|
仓库描述搜索 |
in:descripton test |
|
Readme 文件搜索 |
in:readme test |
|
stars 数量大于 3000 搜索 |
stars:>3000 test |
|
stars 数量 1000 – 3000 搜索 |
stars:1000..3000 test |
|
forks 数量大于 1000 搜索 |
forks:>1000 test |
|
forks 数量 1000 – 3000 搜索 |
forks:1000..3000 test |
|
指定仓库大于 5000k(5M)搜索 |
size:>=5000 test |
|
发布时间大于 2019 – 02 – 12 搜索 |
pushed:>2019-02-12 test |
|
创建时间大于 2019 – 02 – 12 搜索 |
created:>2019-02-12 test |
|
用户名搜索 |
user:test |
|
明确仓库的 LICENSE 搜索 |
license:apache-2.0 test |
|
java 语言代码搜索 |
language:java test |
|
组合搜索 |
user:test in:name 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 |
9、另类目标源码获取
https://www.huzhan.com/
https://www.goofish.com/
从目标转到寻找源码系统上,从源码系统上找应用目标
源码泄漏实战文章
渗透测试实战—某资金盘信息收集(.idea 目录泄露)
https://mp.weixin.qq.com/s/7cSrDZci_drE6wTGvQOOHw
SRC 挖掘-js.map 泄露到接管云上域控
https://mp.weixin.qq.com/s/QZsNjbTiaqC1qwzARVAiGQ
常见源码泄漏场景&对应工具、利用方式
信息泄漏情况汇总表
|
泄漏类型 |
常见场景 |
工具/利用方式 |
|
.idea /.vscode 目录泄漏 |
开发工具配置文件被部署到线上,包含项目路径、配置、数据库连接信息 |
直接访问 /.idea/workspace.xml /.vscode/settings.json ,可获取项目结构、数据库账号密码 |
|
.env /.env.local 文件泄漏 |
框架(如Laravel、Node.js)环境变量文件被误部署,包含数据库、密钥、API配置 |
直接访问 /.env ,可获取数据库账号、APP_KEY、第三方服务密钥 |
|
package – lock.json / yarn.lock 泄漏 |
Node.js项目依赖文件被部署,包含依赖版本信息,可辅助挖掘依赖漏洞 |
直接访问文件,或配合Snyk、NPM Audit工具分析依赖风险 |
|
WEB – INF/web.xml 泄漏 |
Java Web项目配置文件被直接访问,可获取项目结构、Servlet映射、敏感路径 |
直接访问 /WEB – INF/web.xml ,或通过Tomcat弱访问控制读取 |
|
Thumbs.db 文件泄漏 |
Windows系统缩略图缓存文件被部署,可泄露目录下的文件名 |
工具: thumbsviewer ,可解析文件获取目录内的图片/文件列表 |
|
robots.txt 泄露敏感路径 |
网站 robots.txt 中配置了禁止爬取的路径,可被攻击者发现隐藏目录/后台 |
直接访问 /robots.txt ,收集禁止爬取的路径,再尝试访问 |
|
phpinfo() 信息泄漏 |
开发测试文件未删除,可获取服务器配置、PHP版本、路径信息 |
直接访问 /phpinfo.php ,可辅助后续路径穿越、版本漏洞利用 |
|
日志文件泄漏 |
服务器日志(如 access.log 、 error.log )被部署到线上,包含请求记录、敏感参数 |
直接访问日志路径,可获取SQL语句、账号密码、Cookie等敏感信息 |
常用源码泄漏扫描工具、脚本
工具/脚本信息表
|
工具/脚本 |
用途 |
地址 |
|
GitHack |
Git源码泄漏利用 |
https://github.com/lijiejie/GitHack |
|
SvnHack |
SVN源码泄漏利用 |
https://github.com/callmefeifei/SvnHack |
|
ds_store_exp |
DS_Store文件泄漏利用 |
https://github.com/lijiejie/ds_store_exp |
|
dumpall |
通用源码泄漏扫描工具 |
https://github.com/0xHJK/dumpall |
|
SourceDetector |
Webpack打包源码泄漏检测 |
https://github.com/NothingCw/SourceDetector-dist |
|
Dirsearch |
目录/敏感文件扫描 |
https://github.com/maurosoria/dirsearch |
|
御剑 |
国内常用目录扫描工具 |
自行下载 |
|
JSLeak |
前端JS文件敏感信息泄漏扫描 |
https://github.com/0xbug/JSLeak |
夜雨聆风