freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

DeepSecrets:一款能够理解代码语义的代码敏感信息扫描工具
2024-01-06 16:30:09

关于DeepSecrets

DeepSecrets是一款能够理解代码语义的代码敏感信息扫描工具,在该工具的帮助下,广大研究人员将能够更有效地扫描和分析代码中的敏感信息。

社区中很多现有的代码分析工具其实并不能够真正地“理解”代码,而是直接解析代码文本。DeepSecrets通过语义分析、危险变量检测和更有效的熵分析扩展了传统的基于正则表达式的代码搜索方法。DeepSecrets提供的代码理解功能支持500多种编程语言和代码格式,并通过词法分析和解析(SAST工具中常用的技术)实现其功能。

除此之外,DeepSecrets还引入了一种搜索敏感数据的新方法,即使用已知敏感信息的哈希值并直接在代码中找到对应的数据。

工具安装

由于该工具基于Python开发,因此我们首先需要在本地设备上安装并配置好Python环境。接下来,广大研究人员可以直接使用pip工具从GitHub下载最新版本的DeepSecrets源码:

$ pip install git+https://github.com/avito-tech/deepsecrets.git

或者直接从Pypi下载和安装DeepSecrets:

$ pip install deepsecrets

工具使用

执行扫描

下列命令即可直接对目标代码执行敏感数据扫描与分析:

$ deepsecrets --target-dir /path/to/your/code --outfile report.json

上述命令将会使用工具默认配置并针对“/path/to/your/code”路径下的代码执行敏感数据扫描,其中:

1、正则表达式检测使用的是工具内置的规则集;

2、语义检查负责执行变量检测和熵检查;

扫描生成的报告将存储到report.json文件中。

配置微调

运行下列命令即可查看工具帮助信息:

deepsecrets --help

我们还可以通过使用“--regex-rules”选项来指定使用自己的规则集,或使用“--excluded-paths”选项来排除不需要扫描的代码路径。

规则集构建

正则表达式

为正则表达式检测提供的内置规则集路径为“/deepsecrets/rules/regexes.json”,广大研究人员可以按照原有数据格式自行修改或创建自定义规则集。

敏感数据哈希

为正则表达式检测提供的规则集样例路径为“/deepsecrets/rules/regexes.json”,广大研究人员可以按照原有数据格式自行修改或创建自定义规则集。

许可证协议

本项目的开发与发布遵循MIT开源许可证协议。

项目地址

DeepSecrets:【GitHub传送门

参考资料

https://hackernoon.com/modernizing-secrets-scanning-part-1-the-problem

# 代码审计 # 敏感信息 # 代码安全 # 敏感数据保护 # 敏感数据发现
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录