CVE-2019-3396
Atlassian Confluence Server and Data Server
2021-11-03
Atlassian Confluence Server and Data Center contain a server-side template injection vulnerability that may allow an attacker to achieve path traversal and remote code execution.
Технический анализ и план устранения
Суть уязвимости
Злоумышленник может отправить специально сформированный HTTP-запрос к серверу Confluence, который использует уязвимость шаблонов Velocity (Server-Side Template Injection). Это позволяет: * Читать произвольные файлы на сервере за пределами корневой директории Confluence (Path Traversal). * Выполнять произвольные команды на операционной системе сервера (Remote Code Execution).
Как исправить
Немедленно обновите Atlassian Confluence Server/Data Center до исправленной версии.
Конкретные патчи (выберите версию, соответствующую вашей текущей установке): * 6.15.x: Обновитесь до версии 6.15.7. * 6.14.x: Обновитесь до версии 6.14.5. * 6.13.x: Обновитесь до версии 6.13.12. * 6.12.x: Обновитесь до версии 6.12.10. * 6.11.x: Обновитесь до версии 6.11.12. * 6.10.x: Обновитесь до версии 6.10.13. * 6.9.x: Обновитесь до версии 6.9.16. * 6.8.x: Обновитесь до версии 6.8.18. * 6.7.x: Обновитесь до версии 6.7.19. * 6.6.x: Обновитесь до версии 6.6.20. * 6.5.x: Обновитесь до версии 6.5.21. * 6.4.x: Обновитесь до версии 6.4.24. * 6.3.x: Обновитесь до версии 6.3.29. * 6.2.x: Обновитесь до версии 6.2.30. * 6.1.x: Обновитесь до версии 6.1.34. * 6.0.x: Обновитесь до версии 6.0.35.
Процесс обновления (Linux, пример):
1. Скачайте исправленный архив с официального сайта Atlassian.
2. Остановите службу Confluence:
bash
sudo systemctl stop confluence
3. Создайте резервную копию текущей установки и базы данных.
4. Распакуйте новый дистрибутив поверх старого (или в новую директорию, обновив симлинки).
5. Запустите службу:
bash
sudo systemctl start confluence
Временное решение
Если немедленное обновление невозможно, примените следующие меры:
-
Ограничьте сетевой доступ: Настройте брандмауэр (например,
iptablesили WAF) так, чтобы доступ к порту Confluence (обычно 8090/TCP, 8443/TCP) был разрешен только с доверенных IP-адресов (офисная сеть, VPN).bash # Пример iptables: разрешить доступ только из сети 192.168.1.0/24 sudo iptables -A INPUT -p tcp --dport 8090 -s 192.168.1.0/24 -j ACCEPT sudo iptables -A INPUT -p tcp --dport 8090 -j DROP -
Настройте WAF (Web Application Firewall): Добавьте правило для блокировки запросов, содержащих в теле или заголовках известные сигнатуры эксплуатации этой уязвимости (например, строки, связанные с
Velocity,class.classLoader,webapp). -
Отключите уязвимый эндпоинт (самый радикальный метод): Удалите или переименуйте файл
web.xml, отвечающий за обработку виджетов. Внимание: Это сломает функциональность виджетов в Confluence.bash # Пример для типичного пути установки sudo mv /opt/atlassian/confluence/confluence/WEB-INF/lib/confluence-*-jar /opt/atlassian/confluence/confluence/WEB-INF/lib/confluence-*-jar.bakПосле этого необходимо перезапустить Confluence. Это решение должно использоваться только как крайняя мера перед обновлением.