安全信息

From Dolibarr ERP CRM Wiki
Jump to navigation Jump to search


Securite.png 警报

最后更新: 2024-02-19

发现了一个允许用户获取联系人列表(检索数据库中联系人的姓氏、名字和 ID)的漏洞。 已经在 18.0.1 及更高版本中修复。

注意:您还可以从 GitHub(https://github.com/Dolibarr/dolibarr/) 下载所有分支/版本的中间版本(尚未发布的维护包)

Art.png 安全特性

Dolibarr 实现了多种安全功能,以匹配与安全相关的最佳实践规则。

以下是您可以找到的主要安全功能列表:


加密

  • 数据库中保存的密码或安全密钥数据是加密之后的 [*7] [*8]
  • 数据库技术密码可以被伪装到 Dolibarr configuration file (conf.php) [*8]文件中。
  • 可以强制使用 HTTPS [*9]
//conf/conf.php file
//example of $dolibarr_main_force_https  configuration
$dolibarr_main_force_https = '1';//to force https
Values Description

0

无强制重定向

1

强制重定向到 https,直到 response 中的 SCRIPT_URI 以 https 开头

2

强制重定向到 https,直到 response 中的 SERVER[“HTTPS”] = 'on'

https://mydomain

强制重定向到 https 域名 mydomain(推荐方法)


黑客与骇客

  • 可使用 register_globals=on/off(强烈推荐使用off) [*2]
  • 可使用 PHP safe_mode=on/off (推荐使用on) [*3]
  • 在生产模式下可禁用任何技术信息泄漏,如调试、错误堆栈跟踪、版本信息(请参阅 configuration file) [*6]
  • 防止 SQL 注入。受内部 WAF 保护,并通过单元测试检查数据库擒纵机制的良好。 [*2]
  • 防止 XSS 注入(Cross Site Scripting:跨站点脚本)。受内部 WAF 和网页 headers 保护。 [*1]
  • 防止 SSRF。
  • 防止 CSRF(Cross Site Request Forgery:跨站点请求伪造)。受内部 WAF 和 token 系统保护。 [*5]

请注意,还建议通过禁用 Apache 选项来保护您的 Web 服务器

AcceptPathInfo Off


页面与文件访问

  • 页面和内容受集中式入口代码保护,以检查权限(授予组或用户的每个功能模块) [*4] [*10]
  • Dolibarr 保存的文件存储在与 Web 应用不同的 root 目录中(因此,不通过 Dolibarr wrapper,就无法下载) [*3] [*10] 。 注意:您必须要核实 document 目录(用于上传文件)与 htdocs 目录没有位于同一目录中,也不在 htdocs 的子目录中。您的 Web 虚拟主机必须仅指向 htdocs 目录(并且此目录可以/应该处于只读模式)。因此,如果不使用 wrapper 页面,则无法下载任何上传的文件(存储在 document 目录中)。
  • Dolibarr 目录内容无法访问,即使 Apache 的选项 Indexes 没有被设置为 on(不应该忘记设置) [*3]


登录保护

  • 反暴力破解的登录页面延迟 [*7] 。目前的延迟值是固定值(在未来版本中,尝试登录时可能会呈指数级增长)。
  • 登录页面上针对机器人的图形代码(CAPTCHA)选项 [*7]
  • 仅限制某些 IP 对后台的访问 [*7]
  • 日志中不记录密码,即使在技术日志中也是如此 [*7]
  • 内部记录器(logger)永久保存所有Dolibarr事件,包括有关用户管理以及成功登录、失败登录或管理事件(用户、组、权限的变更)。
  • 可以在成功登录或失败登录尝试之后将日志记录输出到日志文件中(Debug Log模块必须被启用,在生产服务器上最低使用 5-LOG_NOTICE级别,在开发服务器上使用更高级别),以便您可以添加 fail2ban 规则来锁定暴力破解。您可以使用以下语法检查日志记录 :
"YYYY-MM-DD HH:MM:SS (ERROR|NOTICE|INFO|DEBUG)    IP functions_dolibarr::check_user_password_.* Authentication KO"

要添加到服务器的 fail2ban 规则列表在后面的 DOS 和暴力破解率缓解(DOS and Brute force rate Mitigation)一章中提供。

病毒

  • 可以对每个上传的文件运行外部防病毒软件 [*3]


安全信息中心

  • 从版本 14 开始,您将在菜单 主页 - 管理工具 - 安全(Home - Admin tools - Security) 中找到一个安全信息中心,其显示与当前安装相关的已完成和待完成的所有安全建议。


用于安全性的 CTI

持续集成平台对每次修改代码运行安全单元测试和静态代码分析。


每个版本的footprint

我们的发布流程为每个版本提供了一个 footprint 文件(也可在线获取),以验证本地安装的所有文件。

注意:Dolibarr 符合 OpenSourceSSF 定义的 Best Practices(最佳实践) : https://bestpractices.coreinfrastructure.org/projects/5521


DOS 和暴力破解率缓解

该项目提供了一些 fail2ban 规则的示例,以阻止登录页面、忘记密码页面和任何公共页面上的暴力尝试或滥用访问。参见 https://github.com/Dolibarr/dolibarr/tree/develop/dev/setup/fail2ban

Art.png 报告安全漏洞

在大多数情况下,安全报告会在几天内被处理。



(*X) 此解决方案是用于解决 OWASP Top Ten 分类的漏洞(范围为 X 的)保护的一部分。