JinJava — это механизм шаблонов на основе Java, основанный на синтаксисе шаблонов django и адаптированный для рендеринга шаблонов jinja. До версий 2.7.6 и 2.8.3 JinJava уязвима для произвольного выполнения Java через обход ForTag. Это позволяет создавать произвольные экземпляры классов Java и получать доступ к файлам, минуя встроенные ограничения песочницы. Эта проблема исправлена в версиях 2.7.6 и 2.8.3.
Показать оригинальное описание (английский)
JinJava is a Java-based template engine based on django template syntax, adapted to render jinja templates. Prior to versions 2.7.6 and 2.8.3, JinJava is vulnerable to arbitrary Java execution via bypass through ForTag. This allows arbitrary Java class instantiation and file access bypassing built-in sandbox restrictions. This issue has been patched in versions 2.7.6 and 2.8.3.
Матрица атаки
СТРОКА CVSS ВЕКТОРА
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Тип уязвимости (CWE)
Источники и патчи
- https://github.com/HubSpot/jinjava/commit/3d02e504d8bbb13bf…
- https://github.com/HubSpot/jinjava/commit/c7328dce6030ac718…
- https://github.com/HubSpot/jinjava/releases/tag/jinjava-2.7…
- https://github.com/HubSpot/jinjava/releases/tag/jinjava-2.8…
- https://github.com/HubSpot/jinjava/security/advisories/GHSA…