Пост

TryHackMe - CVE-2024-50379

Explore and learn about the Tomcat CVE-2024-50379 vulnerability

TryHackMe - CVE-2024-50379

Введение

CVE-2024-50379 — это уязвимость TOCTOU, вызванная состоянием гонки между проверкой и использованием ресурса. Она возникает во время компиляции JSP в системах с нечувствительным регистром, когда стандартный сервлет имеет права на запись.

Ссылка на комнату Tryhackme

Nmap

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
nmap -T4 -n -sC -sV -Pn -p- 10.10.122.218
PORT STATE SERVICE VERSION
3389/tcp open ms-wbt-server Microsoft Terminal Services
| ssl-cert: Subject: commonName=CHANGE-MY-HOSTNAME
| Недействительно до: 2025-01-24T14:59:28
|_Недействительно после: 2025-07-26T14:59:28
|_ssl-date: 2025-03-12T09:12:34+00:00; -1с от времени сканера.

| rdp-ntlm-info:
| Target_Name: CHANGE-MY-HOSTN
| NetBIOS_Domain_Name: CHANGE-MY-HOSTN
| NetBIOS_Computer_Name: CHANGE-MY-HOSTN
| DNS_Domain_Name: CHANGE-MY-HOSTNAME
| DNS_Computer_Name: CHANGE-MY-HOSTNAME
| Product_Version: 10.0.17763
|_ System_Time: 2025-03-12T09:12:29+00:00
7680/tcp open pando-pub?

8080/tcp open http Apache Tomcat (language: en)
|_http-favicon: Apache Tomcat
|_http-title: Apache Tomcat/10.1.25
Service Info: OS: Windows; CPE: cpe:/o:microsoft:windows

Open ports: 3389/tcp 7680/tcp 8080/tcp

Вопрос: Сервер Tomcat прослушивает порт 8080 на IP-адресе 10.10.122.218. Какая у него версия?

Ответ:

1
10.1.25

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

Давайте скачаем наш эксплойт для проверки концепции

1
git clone https://github.com/iSee857/CVE-2024-50379-PoC

И, как указано в комнате, давайте заменим цикл for на 2000 вместо 10000

Loop

Закомментируйте текущую полезную нагрузку, которая открывает калькулятор с помощью calc.exe, заменив её на ту, что была упомянута в комнате

Payload

Поскольку это уязвимость типа “состояние гонки”, нам необходимо запустить эксплойт несколько раз, чтобы он сработал.

1
python3 ApachTomcat_CVE-2024-50379_ConditionalCompetitionToRce.py -u 10.10.122.218:8080

Payload

И мы можем прочитать флаг:

Payload

Авторский пост защищен лицензией CC BY 4.0 .