Jenkins RCE Creating/Modifying Project

Erlernen Sie AWS-Hacking von Null auf Heldenniveau mit htARTE (HackTricks AWS Red Team Expert)!

Andere Möglichkeiten, HackTricks zu unterstützen:

Projekt erstellen

Diese Methode ist sehr laut, da Sie ein komplett neues Projekt erstellen müssen (dies funktioniert nur, wenn Ihr Benutzer die Berechtigung hat, ein neues Projekt zu erstellen).

  1. Erstellen Sie ein neues Projekt (Freestyle-Projekt), indem Sie auf "Neues Element" klicken oder auf /view/all/newJob

  2. Setzen Sie im Abschnitt Build Ausführen von Shell und fügen Sie einen Powershell Empire Launcher oder einen Meterpreter Powershell ein (kann mit unicorn erhalten werden). Starten Sie das Payload mit PowerShell.exe anstelle von powershell.

  3. Klicken Sie auf Jetzt erstellen

  4. Wenn die Schaltfläche Jetzt erstellen nicht angezeigt wird, können Sie immer noch zu Konfigurieren --> Build-Auslöser --> Periodisch erstellen gehen und einen Cron von * * * * * einstellen

  5. Anstelle von Cron können Sie die Konfiguration "Bauauslösungen remote" verwenden, bei der Sie nur den API-Token-Namen festlegen müssen, um den Job auszulösen. Gehen Sie dann zu Ihrem Benutzerprofil und generieren Sie einen API-Token (nennen Sie diesen API-Token wie den API-Token, um den Job auszulösen). Lösen Sie schließlich den Job aus mit: curl <Benutzername>:<API-Token>@<jenkins_url>/job/<job_name>/build?token=<api_token_name>

Projekt ändern

Gehen Sie zu den Projekten und prüfen Sie, ob Sie eines konfigurieren können (suchen Sie nach der "Konfigurieren-Schaltfläche"):

Wenn Sie keine Konfigurationsschaltfläche sehen können, können Sie es wahrscheinlich nicht konfigurieren (überprüfen Sie jedoch alle Projekte, da Sie einige davon konfigurieren können und andere nicht).

Oder versuchen Sie, auf den Pfad zuzugreifen /job/<proj-name>/configure oder /me/my-views/view/all/job/<proj-name>/configure __ in jedem Projekt (Beispiel: /job/Project0/configure oder /me/my-views/view/all/job/Project0/configure).

Ausführung

Wenn Sie das Projekt konfigurieren dürfen, können Sie es so einrichten, dass es Befehle ausführt, wenn ein Build erfolgreich ist:

Klicken Sie auf Speichern und bauen Sie das Projekt, und Ihr Befehl wird ausgeführt. Wenn Sie keinen Reverse-Shell ausführen, sondern einen einfachen Befehl, können Sie die Ausgabe des Befehls im Ausgabebereich des Builds sehen.

Last updated