公司坚持以“数据科学”为企业发展核心,自创立以来一直致力于为用户提供先进的数据软件产品和全面的数据解决方案,助力企业提升决策效率、优化运营成本、驱动业务创新。

紧急!速转 | Apache Log4j 高危漏洞 Tableau 解决方案!

2024-05-07 05:33:41博易智软7307

Java 日志框架 Log4j2 爆出高危大漏洞:

攻击者可以利用漏洞远程执行代码,最终获得服务器的最高权限!

只需要向目标输入一段代码,不需要用户执行任何多余操作,漏洞便可被触发。漏洞触发后,攻击者就可以远程控制攻击目标的服务器,预计 90% 以上基于 Java 开发的应用平台都会受到影响。

Tableau Apache Log4j2 vulnerability (Log4shell)

解决方案

1.所解决问题:在使用 log4j Apache 库的产品中,安全漏洞会允许远程执行代码。在Tableau 2021年12月14日(包含14日)之前发布的所有产品中都会有此现象出现。

2. 适用环境:Tableau 产品的所有受支持版本。

3.解决方法:方法一:版本升级;方法二:环境变量修改。

4.针对新用户或有升级tableau计划的老用户:

Tableau 2021年12月15日及以后发布的版本将不受影响,可以放心下载最新版本或升级到相应版本的最新小版本。

下载路径为:https://www.tableau.com/zh-cn/support/releases/server

选择对应的产品及对应的版本号,进入到子页面,选择下载对应操作系统的安装文件下载安装或进行升级即可。如下图所示:

 

Tableau Desktop 直接双击安装包,下一步即可。

Tableau_server_windows环境安装步骤详见:https://help.tableau.com/current/server/zh-cn/install.htm

Tableau server Linux环境安装步骤详见:https://help.tableau.com/current/server-linux/zh-cn/install.htm

Windows环境产品升级步骤详见:

https://help.tableau.com/current/server/zh-cn/upgrade.htm

Linux环境环境产品升级步骤详见:

https://help.tableau.com/current/server-linux/zh-cn/upgrade.htm

1.针对目前没有升级计划的老用户:

设置系统环境变量

注意:这些步骤将修改机器上所有 java 进程的环境变量。

操作步骤详见下面(不同操作系统操作方法不同):

- Linux Server 使用说明 -

1.停止 Tableau Server

tsm stop

2.停止 TSM 管理服务。运行以下脚本:

sudo/opt/tableau/tableau_server/packages/scripts./stop-administrative-services

 例如安装目录:sudo/byit/packages/scripts.20202.20.0626.1424/stop-administrative-services

3.更改为非特权用户(默认用户为tableau)

sudo su -l tableau

4.使用变量创建 log4j.conf 文件

echo_LOG4J_FORMAT_MSG_NO_LOOKUPS=true>>~/.config/systemd/tableau_server.conf.d/log4j.conf

(查看目录是否有该文件:cd ./.config/systemd/tableau_server.conf.d)

 

5.退出 Tableau shell。运行以下命令:

exit

6.启动 TSM 管理服务。运行以下脚本:

sudo/opt/tableau/tableau_server/packages/scripts./start-administrative-services

例如:安装目录:

sudo/byit/packages/scripts.20202.20.0626.1424/start-administrative-services

7.如果运行多节点部署,则对集群中的每个节点重复步骤 2 到 5

8.启动 TSM。

tsm start

9.重新启动后,运行命令pgrep -l run-以获取 Tableau 进程之一的 pid

 

10.运行sudo strings /proc//environ其中是从步骤 5 返回的 pid 之一

例如:sudo strings /proc/89129/environ

 

11.验证步骤 6 的输出中是否存在LOG4J_FORMAT_MSG_NO_LOOKUPS=true

- Windows server使用说明 -

1.打开管理 PowerShell 窗口

2.在初始节点上,停止 Tableau Server

tsm stop

3. 停止 TSM 管理服务。运行以下脚本:

C:\Program_Files\Tableau\Tableau_Server\packages\scripts.\stop-administrative-services.cmd

4. 运行命令:

[System.Environment]::SetEnvironmentVariable('LOG4J_FORMAT_MSG_NO_LOOKUPS','true',[System.EnvironmentVariableTarget]::Machine)

5. 启动 TSM 管理服务。运行以下脚本:

C:\Program_Files\Tableau\Tableau_Server\packages\scripts.\start-administrative-services.cmd

6. 如果运行多节点部署,则对集群中的每个节点重复步骤 3 到 5

7. 在初始节点上,启动 Tableau Server

tsm start

8. 打开管理 PowerShell 窗口并通过运行命令env验证环境变量是否存在。在命令输出中,变量LOG4J_FORMAT_MSG_NO_LOOKUPS=true应该存在

- Tableau Desktop(Windows)-

1. 下载并安装7zip到c:\7zip

2. 打开管理 PowerShell 窗口

3. 将目录更改为 Tableau Desktop bin 目录。默认情况下C:\Program Files\Tableau\Tableau <版本>\bin

cd C:\Program Files\Tableau\Tableau <版本>\bin

4. 在 jdbcserver.jar 上禁用只读

Set-ItemProperty jdbcserver.jar -Name IsReadOnly -Value $false

5. 在 oauthservice.jar 上禁用只读

Set-ItemProperty oauthservice.jar -Name IsReadOnly -Value $false

6. 从 jdbcserver 中删除 JndiLookup.class

c:\7zip\7z_d

jdbcserver.jar org/apache/logging/log4j/core/lookup/JndiLookup.class -r

7. 从 oauthservice 中删除 JndiLookup.class

c:\7zip\7z_d_oauthservice.jar org/apache/logging/log4j/core/lookup/JndiLookup.class -r

8. 在 jdbcserver.jar 上重新启用只读

Set-ItemProperty jdbcserver.jar -Name IsReadOnly -Value $true

9. 在 oauthservice.jar 上重新启用只读

Set-ItemProperty oauthservice.jar -Name IsReadOnly -Value $true

- Tableau Desktop (MacOS)-

注意:以下说明假定默认安装路径为/Applications/Tableau Desktop.app。以下命令适用于 2020.4

1.sudo_zip_-d_'/Applications/Tableau_Desktop

2020.4.app/Contents/Resources/oauthservice.jar'

org/apache/logging/log4j/core/lookup/JndiLookup.class

2.sudo_zip_-d_'/Applications/Tableau_Desktop

2020.4.app/Contents/Resources/jdbcserver.jar'

org/apache/logging/log4j/core/lookup/JndiLookup.class

原因:

  • 2021 年 12 月 10 日发布了一个零日安全漏洞CVE-2021-44228,详细说明了 Apache 中的任意代码执行漏洞。
  • 附加信息:Tableau(Oline)受 CVE-2021-44228 影响。该服务正在更新以修复在 CVE-2021-44228 中发现的漏洞。
  • 更多详情:https://kb.tableau.com/articles/issue/Apache-Log4j2-vulnerability-Log4shell

声明:

 近日,Log4j2漏洞事件给广大用户造成担忧与不安,博易智软秉承负责任,重品质的服务态度,自漏洞出现后,立即与 Tableau 原厂反馈沟通,并积极向用户解释并提供协助,力求客户避免受到此次漏洞的影响。在此博易智软也感谢广大客户在此期间的理解与支持。

同时博易智软也在此声明,博易全线自研产品DDMP(博易数据开发管理平台),OSDP(统一数据自助分析平台)均未受到此次漏洞影响,请客户放心使用。

博易智软承诺为客户提供先进、专业、负责的大数据服务!