deepfence/SecretScanner
GitHub: deepfence/SecretScanner
一款轻量级工具,用于在容器镜像和文件系统中发现未受保护的密钥与敏感凭据。
Stars: 3276 | Forks: 340
# SecretScanner
[](https://threatmapper.org/docs/secretscanner/)
[](https://github.com/deepfence/SecretScanner/blob/master/LICENSE)
[](https://github.com/deepfence/SecretScanner/stargazers)
[](https://github.com/deepfence/SecretScanner/issues)
[](https://join.slack.com/t/deepfence-community/shared_invite/zt-podmzle9-5X~qYx8wMaLt9bGWwkSdgQ)
# SecretScanner
Deepfence SecretScanner 可以在容器镜像或文件系统中查找未受保护的密钥。
* SecretScanner 是一个独立工具,用于检索和搜索容器和主机文件系统,并将内容与大约 140 种密钥类型的数据库进行匹配。
* SecretScanner 也包含在 [ThreatMapper](https://github.com/deepfence/ThreatMapper) 中,这是一个开源扫描器,用于识别云原生应用程序中的脆弱依赖项和未受保护的密钥,并根据其被利用的风险对这些漏洞进行排名([示例](https://github.com/deepfence/ThreatMapper/wiki/Scanning-Production-Deployments))。
## 什么是密钥?
密钥是任何敏感或私有数据,它赋予授权用户访问关键 IT 基础设施(如账户、设备、网络、基于云的服务)、应用程序、存储、数据库和其他组织关键数据的权限。例如,密码、AWS 访问 ID、AWS 秘密访问密钥、Google OAuth 密钥等都是密钥。密钥必须严格保密。然而,有时攻击者可以很容易地访问密钥,因为安全策略存在缺陷或开发人员无意中犯错。有时开发人员使用默认密钥或在容器镜像中留下硬编码的密钥(如密码、API 密钥、加密密钥、SSH 密钥、令牌等),特别是在 CI/CD 流水线中的快速开发和部署周期中。此外,有时用户会以明文形式存储密码。密钥泄露给未经授权的实体会给您的组织和基础设施带来严重的安全风险。
Deepfence SecretScanner 帮助用户扫描其容器镜像或主机上的本地目录,并输出一个包含所有发现密钥详细信息的 JSON 文件。
请查看我们的 [博客](https://medium.com/deepfence-cloud-native-security/detecting-secrets-to-reduce-attack-surface-3405ee6329b5) 获取更多细节。
## 何时使用 SecretScanner
如果您需要一种轻量级、高效的方法来扫描容器镜像和文件系统以查找可能的密钥(密钥、令牌、密码),则可以使用 SecretScanner。然后,您可以审查这些可能的“密钥”,以确定其中是否应删除某些内容再进行生产部署。
## 快速开始
完整说明请参考 [SecretScanner 文档](https://threatmapper.org/docs/secretscanner/)。

安装 Docker 并按照以下说明在容器镜像上运行 SecretScanner:
* 构建 SecretScanner:
```
./bootstrap.sh
docker build --rm=true --tag=quay.io/deepfenceio/deepfence_secret_scanner_ce:2.5.8 -f Dockerfile .
```
* 或者,通过以下操作从 Docker Hub 拉取最新版本:
```
docker pull quay.io/deepfenceio/deepfence_secret_scanner_ce:2.5.8
```
### 扫描
* 拉取要扫描的容器镜像:
```
docker pull node:8.11
```
* 执行扫描:
```
docker run -i --rm --name=deepfence-secretscanner \
-v /var/run/docker.sock:/var/run/docker.sock \
quay.io/deepfenceio/deepfence_secret_scanner_ce:2.5.8 \
--image-name node:8.11 \
--output json > node.json
```
## 联系
感谢您使用 SecretScanner。
## 安全与支持
对于 SecretScanner 项目中的任何安全问题,请联系 [productsecurity *at* deepfence *dot* io](SECURITY.md)。
如有需要,请提交 GitHub 问题,并加入 Deepfence 社区 [Slack 频道](https://join.slack.com/t/deepfence-community/shared_invite/zt-podmzle9-5X~qYx8wMaLt9bGWwkSdgQ)。
# 免责声明
本工具不得用于黑客攻击。请仅将其用于合法用途,例如检测您自己拥有的设施中的密钥,而不是他人的设施。DEEPFENCE 不对因 SecretScanner 不充分或存在缺陷或不足而直接或间接导致的任何利润损失、业务损失、其他财务损失或任何损失或损害承担责任。
标签:AI应用开发, AWS密钥, DevSecOps, EVTX分析, OAuth密钥, SecretScanner, Vue, Web截图, Windows日志分析, 上游代理, 威胁测绘, 安全扫描, 容器安全, 容器镜像扫描, 密码查找, 密钥泄露, 对抗攻击, 敏感信息检测, 数据泄露防护, 文件系统扫描, 文档结构分析, 日志审计, 时序注入, 深度围栏, 硬编码密钥, 秘密发现, 网络探测, 请求拦截, 默认密钥