源码泄露搜索
1. 代码托管平台搜索(主战场)
GitHub 和 Gitee 是最常见的代码泄露平台。搜索时需要利用它们的高级搜索语法来定位目标
平台 | 搜索目标 | 搜索语法/关键词 |
---|---|---|
GitHub/Gitee | 公司/组织 | 搜索目标公司名、产品名、项目代号。 |
员工邮箱 | 搜索 @目标域名.com ,定位到将工作邮箱用于个人 GitHub 的员工。 |
|
敏感文件 | filename:config.php OR filename:database.yml "password" |
|
硬编码凭证 | API_KEY OR secret_token target_company |
|
特定框架文件 | path:src/main/resources/application.properties "jdbc" |
实战技巧:
- 克隆工具:使用专门的工具(如 Gitrob、TruffleHog)对已知的目标代码仓库进行扫描,它们能深度挖掘历史提交记录中的敏感信息,即使代码已经被删除
- 搜索 Code:直接在 GitHub 的“Code”选项卡下搜索,而不是在“Repositories”下,以确保搜索范围覆盖所有代码片段
2. 公开网盘与存储服务
员工可能会将项目代码或敏感文档存储在公开网盘上,以便于分享
- 平台:百度网盘、Google Drive、OneDrive 等
- 方法:利用搜索引擎的高级语法,将网盘域名与目标公司名称关联
- 百度网盘:
site:pan.baidu.com "目标公司全称" OR "项目名称"
- 文件类型:
filetype:zip OR filetype:rar OR filetype:7z "项目名称"
- 百度网盘:
3. Web 服务器源码泄露与备份文件
这类泄露是由于服务器配置错误或运维疏忽造成的,通常存在于已知的 Web 资产上
泄露类型 | 常见路径或指纹 | 搜索方法 |
---|---|---|
Git 泄露 | 网站根目录下存在 .git 文件夹。 |
使用 GitHack 或 Githug 等工具,尝试下载整个 .git 仓库,恢复完整代码。 |
SVN 泄露 | 网站根目录下存在 .svn 文件夹。 |
使用 dvcs-ripper 等工具进行恢复。 |
编辑器备份 | 存在 ~ 、.bak 、.old 、.zip 等扩展名。 |
对已知的 Web 路径进行字典爆破,例如 index.php.bak 、config.zip 、backup2023.tar.gz 。 |
目录遍历 | 网站开启了目录列表功能。 | 访问主目录、uploads 、download 目录等,查找是否有可下载的源代码或配置文件。 |
4. Pastebin/代码分享网站
员工可能会为了调试或寻求帮助,将包含敏感代码或错误日志的代码片段发布到公共网站
- 平台:Pastebin、Gist、CodePen、CSDN 等技术论坛或代码分享网站
- 方法:
- 搜索目标公司名称、IP 地址、内部域名或项目代号
- 搜索 API 请求的错误信息或堆栈跟踪信息,这些信息有时会暴露部分源代码路径或配置信息
5. Docker Hub 或镜像仓库
如果目标单位使用 Docker 进行部署,错误的配置可能导致 Docker 镜像或配置文件被公开
- 平台:Docker Hub、私有或公共的镜像仓库
- 方法:
- 搜索组织名称或项目名称,查找公开的 Docker 镜像
- 分析镜像的
Dockerfile
或配置层,可能会发现泄露的构建过程和配置参数
6. 企业协作与文档平台搜索
这类平台是企业员工存放项目文档、会议记录、API 文档甚至代码片段的地方。如果权限设置不当,可能导致内部信息被公开或被搜索引擎抓取
平台 | 搜索目标 | 搜索方法/关键词 |
---|---|---|
语雀 (Yuque) | 项目文档、技术规范 | 使用搜索引擎高级语法,搜索 site:yuque.com "目标公司名" OR "项目名称" |
飞书 (Feishu) | 知识库、API 接口文档 | 使用搜索引擎搜索 site:feishu.cn "目标公司名" intitle:API OR intitle:密钥 |
钉钉 (DingTalk) | 群文件、内部通知 | 搜索 site:dingtalk.com "目标公司名" filetype:xls 等,查找群文件或共享文档 |