Một lỗ hổng bảo mật trong Zimbra Collaboration Suite phiên bản 8.8.15 có thể ảnh hưởng đến tính bảo mật và toàn vẹn dữ liệu của bạn đã xuất hiện.

Nếu bạn không muốn update Zimbra hoặc chờ bản update mới của Zimbra thì có thể tiến hành vá lỗi bảo mật này như sau:

Thực hiện với quyền root trên tất cả các mailbox server.

1. Sao lưu file /opt/zimbra/jetty/webapps/zimbra/m/momoveto

Với quyền root:

cd /opt/zimbra/jetty/webapps/zimbra/m/
cp momoveto momoveto.orig

2. Edit file này ở dòng số 40.
3. Cập nhật lại dòng số 40 như sau:
– Trước khi cập nhật, dòng này có dạng:

<input name="st" type="hidden" value="${param.st}">

– Sau khi cập nhật, dòng này có dạng:

<input name="st" type="hidden" value="${fn:escapeXml(param.st)}">

Bạn không cần restart mailbox server sau khi đã chỉnh sửa file này.
Nếu muốn bạn có thể chạy file sau để cập nhật file cần sửa.
1. Tạo script, với quyền root

cd /opt/scripts/
touch manualfix_momoveto.sh

Nội dung file manualfix_momoveto.sh như sau:
#!/bin/sh
#
# Security patch 8.8.15 (July 12, 2023)
#
momoveto=/opt/zimbra/jetty/webapps/zimbra/m/momoveto
#momoveto=/tmp/momoveto
grep -q 'fn:escapeXml(param.st)' $momoveto
if [ $? -eq 1 ]; then
cp $momoveto $momoveto.bak
echo "Appying patch to $momoveto"
#
sed -i -e 's, , ,g' $momoveto
else
echo "nothing to patch"
fi

2. Cấp quyền cho file này và thực thi

chmod +x manualfix_momoveto.sh
./manualfix_momoveto.sh

Nếu dùng Ansible:

- name: fix XSS in /m/momoveto (ZBUG-3490)
replace:
path: /opt/zimbra/jetty/webapps/zimbra/m/momoveto
regexp: '\${param.st}'
replace: '${fn:escapeXml(param.st)}'

Bonus, bạn có thể thực hiện thêm các thay đổi sau trên hệ thống nếu chưa update Zimbra phiên bản mới nhất:

1. Loại bỏ file JSP không dùng:

rm /opt/zimbra/jetty_base/webapps/service/error/sfdc_preauth.jsp  (với quyền root)

2. Loại bỏ zimlet clientuploader

zmzimletctl undeploy com_zimbra_clientuploader  (với quyền zimbra)
rm -rf /opt/zimbra/lib/ext/com_zimbra_clientuploader (với quyền root)
zmmailboxd restart

3. Fix potential XSS vulnerability: thay ${requestScope.draftid} bằng ${zm:cook(requestScope.draftid)} trong file /opt/zimbra/jetty/webapps/zimbra/h/autoSaveDraft

P/S: bạn nên đăng ký nhận bản tin từ Zimbra để nhận được các thông báo bảo mật kịp thời. Đi đến trang https://www.zimbra.com/downloads/ và tìm nút có tiêu đề “Stay up to date with Zimbra Product and Security Updates”. Điền email và click subscribe.