关于Bearer
Bearer是一款功能强大的代码安全扫描工具(SAST),可以帮助广大研究人员发现并过滤目标应用代码中存在的安全问题和隐私风险,并确定安全问题的优先级。
当前版本的Bearer支持扫描JavaScript、TypeScript和Ruby技术栈实现的应用程序,针对Java应用的支持目前仍在开发过程中。
功能介绍
当前版本的Bearer命令行接口支持扫描下列内容:
1、未过滤的用户输入(sql注入、路径遍历等);
2、通过Cookie、内部记录器、第三方日志记录服务和分析环境泄露的敏感数据;
3、使用弱加密库或滥用加密算法;
4、敏感数据的未加密传入和传出通信(HTTP、FTP、SMTP);
5、硬编码的秘密和令牌;
工具安装
安装Bearer命令行接口
安装Bearer命令行接口最简单的方式就是直接食用工具安装脚本,脚本会自动选择最合适的架构并编译代码,默认安装目录问./bin:
curl -sfL https://raw.githubusercontent.com/Bearer/bearer/main/contrib/install.sh | sh
Homebrew
brew install bearer/tap/bearer brew update && brew upgrade bearer/tap/bearer
Debian/Ubuntu
sudo apt-get install apt-transport-https echo "deb [trusted=yes] https://apt.fury.io/bearer/ /" | sudo tee -a /etc/apt/sources.list.d/fury.list sudo apt-get update sudo apt-get install bearer
工具使用
扫描你的项目
使用Bearer命令行接口最简单的方法就是结合OWASP Juice Shop样例项目一起使用,该项目模拟了真实场景下包含了常见安全漏洞的JavaScript项目,具体操作如下,先将该项目源码克隆至本地:
git clone https://github.com/juice-shop/juice-shop.git
然后针对项目目录运行bearer scan命令:
bearer scan juice-shop
扫描完成后,Bearer将会输出扫描结果,并生成详细的安全分析报告。
分析报告
工具生成的安全报告由以下几个部分组成:
1、针对目标代码运行的规则列表;
2、每一个发现的结果中,包含了文件路径和触发规则的代码行;
3、包含规则检查、发现和警告信息概览;
OWASP Juice Shop样例应用程序将会触发检测规则,工具将生成一份完整报告,下面给出的是部分输出样例:
... HIGH: Sensitive data stored in HTML local storage detected. [CWE-312] https://docs.bearer.com/reference/rules/javascript_lang_session To skip this rule, use the flag --skip-rule=javascript_lang_session File: juice-shop/frontend/src/app/login/login.component.ts:102 102 localStorage.setItem('email', this.user.email) ===================================== 59 checks, 40 findings CRITICAL: 0 HIGH: 16 (CWE-22, CWE-312, CWE-798, CWE-89) MEDIUM: 24 (CWE-327, CWE-548, CWE-79) LOW: 0 WARNING: 0
工具使用样例
工具使用演示
视频地址:【点我观看】
许可证协议
本项目的开发与发布遵循Elastic License 2.0开源许可证协议。
项目地址
Bearer:【GitHub传送门】
参考资料
https://owasp.org/www-project-top-ten/