В откритата платформа за визуализация на данни Grafana е открита уязвимост (CVE-2021-43798), която позволява излизане извън основната директория и достъп до произволни файлове в локалната файловата система на сървъра, в зависимост от правата на потребителя, под който работи Grafana. Проблемът е предизвикан от неправилното функциониране на обработчика на пътища „/public/plugins//“, в който е позволено използването на символи „..“ за достъп до подлежащи директории.
Уязвимость может быть эксплуатирована через обращение к URL типовых предустановленных плагинов, таких как «/public/plugins/graph/», «/public/plugins/mysql/» и «/public/plugins/prometheus/» (всего предустановлено около 40 плагинов). Например, для доступа к файлу /etc/passwd можно было отправить запрос «/public/plugins/prometheus/../../../../../../../../etc/passwd». Для выявления следов эксплутации рекомендуется проверить наличие маски «..%2f» в логах http-сервера.

Проблемът се проявяваше от версия 8.0.0-beta1 и е отстранен в версията Grafana 8.3.1, 8.2.7, 8.1.8 и 8.0.7, но след това бяха открити още две подобни уязвимости (CVE-2021-43813, CVE-2021-43815), които се проявяваха от версиите Grafana 5.0.0 и Grafana 8.0.0-beta3 и позволяваха на удостоверен потребител на Grafana да получи достъп до произволни файлове в системата, с разширения „.md“ и „.csv“ (с имена на файлове само с малки или само с главни букви), чрез манипулация с символите „..“ в пътищата „/api/plugins/.* /markdown/.*“ и „/api/ds/query“. За отстраняване на тези уязвимости са създадени актуализации Grafana 8.3.2 и 7.5.12.
Източник: opennet.ru
