Jenkins RCE Creating/Modifying Project

Unterstütze HackTricks

Erstellen eines Projekts

Diese Methode ist sehr laut, da du ein ganz neues Projekt erstellen musst (offensichtlich funktioniert dies nur, wenn der Benutzer berechtigt ist, ein neues Projekt zu erstellen).

  1. Erstelle ein neues Projekt (Freestyle-Projekt), indem du auf "Neues Element" klickst oder in /view/all/newJob

  2. Setze im Abschnitt Build Shell ausführen und füge einen PowerShell Empire Launcher oder eine Meterpreter PowerShell ein (kann mit unicorn erhalten werden). Starte die Payload mit PowerShell.exe anstelle von powershell.

  3. Klicke auf Jetzt bauen

  4. Wenn der Jetzt bauen-Button nicht erscheint, kannst du trotzdem zu konfigurieren --> Build-Trigger --> Build regelmäßig gehen und einen Cron von * * * * * setzen.

  5. Anstelle von Cron kannst du die Konfiguration "Bauten remote auslösen" verwenden, bei der du nur den API-Token-Namen setzen musst, um den Job auszulösen. Gehe dann zu deinem Benutzerprofil und generiere einen API-Token (nenne diesen API-Token so, wie du den API-Token genannt hast, um den Job auszulösen). Schließlich löse den Job mit aus: curl <username>:<api_token>@<jenkins_url>/job/<job_name>/build?token=<api_token_name>

Ändern eines Projekts

Gehe zu den Projekten und überprüfe ob du eines von ihnen konfigurieren kannst (suche nach dem "Konfigurieren"-Button):

Wenn du keinen Konfigurations-Button sehen kannst, dann kannst du es wahrscheinlich nicht konfigurieren (aber überprüfe alle Projekte, da du möglicherweise einige von ihnen und nicht andere konfigurieren kannst).

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

Ausführung

Wenn du berechtigt bist, das Projekt zu konfigurieren, kannst du es so einstellen, dass es Befehle ausführt, wenn ein Build erfolgreich ist:

Klicke auf Speichern und baue das Projekt, und dein Befehl wird ausgeführt. Wenn du keine Reverse-Shell, sondern einen einfachen Befehl ausführst, kannst du die Ausgabe des Befehls in der Ausgabe des Builds sehen.

Unterstütze HackTricks

Last updated