Jenkins RCE Creating/Modifying Project
Tworzenie Projektu
Ta metoda jest bardzo głośna, ponieważ musisz stworzyć zupełnie nowy projekt (oczywiście to zadziała tylko, jeśli użytkownik ma prawo do tworzenia nowego projektu).
Utwórz nowy projekt (projekt Freestyle) klikając "Nowy element" lub w
/view/all/newJob
W sekcji Budowanie ustaw Wykonaj powłokę i wklej launcher PowerShell Empire lub PowerShell meterpreter (można go uzyskać za pomocą unicorn). Uruchom ładunek za pomocą PowerShell.exe zamiast powershell.
Kliknij Buduj teraz
Jeśli przycisk Buduj teraz się nie pojawia, możesz nadal przejść do konfiguracji --> Wyzwalacze budowy -->
Buduj okresowo
i ustawić cron na* * * * *
Zamiast używać crona, możesz użyć konfiguracji "Wyzwalaj budowy zdalnie", gdzie musisz tylko ustawić nazwę tokena API, aby wyzwolić zadanie. Następnie przejdź do swojego profilu użytkownika i wygeneruj token API (nazwij ten token API tak, jak nazwałeś token API do wyzwolenia zadania). Na koniec wyzwól zadanie za pomocą:
curl <username>:<api_token>@<jenkins_url>/job/<job_name>/build?token=<api_token_name>
Modyfikowanie Projektu
Przejdź do projektów i sprawdź czy możesz skonfigurować którykolwiek z nich (szukaj przycisku "Konfiguruj"):
Jeśli nie możesz zobaczyć żadnego przycisku konfiguracji, to prawdopodobnie nie możesz go skonfigurować (ale sprawdź wszystkie projekty, ponieważ możesz być w stanie skonfigurować niektóre z nich, a nie inne).
Lub spróbuj uzyskać dostęp do ścieżki /job/<proj-name>/configure
lub /me/my-views/view/all/job/<proj-name>/configure
__ w każdym projekcie (przykład: /job/Project0/configure
lub /me/my-views/view/all/job/Project0/configure
).
Wykonanie
Jeśli masz prawo do konfiguracji projektu, możesz sprawić, aby wykonywał polecenia, gdy budowa zakończy się sukcesem:
Kliknij Zapisz i zbuduj projekt, a twoje polecenie zostanie wykonane. Jeśli nie wykonujesz odwrotnej powłoki, ale proste polecenie, możesz zobaczyć wynik polecenia w wynikach budowy.
Last updated