0

当我推送 bitbucket 时收到以下消息:

Repository https://git.xx.xxx/scm/appXXXx/appxxx-xx-gateway.git
pre-receive hook declined
Push rejected due to security vulnerabilities detected by security hook.
GENERIC_PASSWORD vulnerability detected in file src/main/resources/application.yml (678a59ebfee39534b4a68e1ad01c36f3cf2f9a2b) on line 14.

此消息的原因是因为“密码”一词在 Application.xml 中,如下例所示:

mail:
host: myhost.xxx.com
port: 123
    username: ${MAIL_USERNAME}
    password: ENC(${MAIL_PASSWORD})

你们知道如何克服这个问题吗?

非常感谢您的帮助 谢谢

4

2 回答 2

0

该错误来自在 bitbucket 级别设置的某些提交策略。您需要向您的存储库的维护人员询问这一点。一个临时的解决方法是您更改 yml 文件中的属性名称,然后创建一个读取 props 的配置 bean,然后初始化您的 javamailsender。

注意:如果 MAIL_USERNAME 和 MAIL_PASSWORD 作为命令行参数传递,并且使用服务器中的脚本实例化 jar,那么您就没有提交拒绝消息所暗示的那么多漏洞。您也在此处加密密码。

于 2021-09-24T06:28:27.903 回答
0

很多人一直在添加“门”和“检查”来自动化质量。这完全是“过程胜于人”的事情……幸运的是,作为项目的“团队领导”,您可以绕过所有这些(使用它,不要滥用它)。

检查是按“推送”进行的,因此您可以禁用、推送和重新启用它。在这种情况下,拥有来自 shell 环境的密码并被注入到 spring 配置中并不是那么令人反感。


1. 存储库设置
2- Hooks
3- Reject Vulnerable Commits

禁用它,推送,重新启用它

于 2021-09-24T12:27:40.627 回答