Jenkins RCE Створення/Модифікація Проекту
Reading time: 3 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.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на GitHub.
Створення Проекту
Цей метод дуже шумний, оскільки вам потрібно створити абсолютно новий проект (очевидно, це спрацює лише якщо ваш користувач має право створювати новий проект).
- Створіть новий проект (Freestyle project), натиснувши "New Item" або в
/view/all/newJob
- У розділі Build встановіть Execute shell і вставте запускник powershell Empire або meterpreter powershell (можна отримати за допомогою unicorn). Запустіть payload з PowerShell.exe замість powershell.
- Натисніть Build now
- Якщо кнопка Build now не з'являється, ви все ще можете перейти до configure --> Build Triggers -->
Build periodically
і встановити cron на* * * * *
- Замість використання cron, ви можете використовувати конфігурацію "Trigger builds remotely", де вам просто потрібно встановити ім'я токена API для запуску роботи. Потім перейдіть до свого профілю користувача і згенеруйте токен API (назвіть цей токен API так, як ви назвали токен API для запуску роботи). Нарешті, запустіть роботу з:
curl <username>:<api_token>@<jenkins_url>/job/<job_name>/build?token=<api_token_name>
Модифікація Проекту
Перейдіть до проектів і перевірте чи можете ви налаштувати будь-який з них (шукайте кнопку "Configure"):
Якщо ви не можете побачити жодної кнопки конфігурації, то ви не можете налаштувати його, ймовірно (але перевірте всі проекти, оскільки ви можете налаштувати деякі з них, а не інші).
Або спробуйте отримати доступ до шляху /job/<proj-name>/configure
або /me/my-views/view/all/job/<proj-name>/configure
__ в кожному проекті (приклад: /job/Project0/configure
або /me/my-views/view/all/job/Project0/configure
).
Виконання
Якщо вам дозволено налаштувати проект, ви можете зробити так, щоб він виконував команди, коли збірка успішна:
Натисніть Save і build проект, і ваша команда буде виконана.
Якщо ви не виконуєте зворотний shell, а просто команду, ви можете бачити вихід команди всередині виходу збірки.
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.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на GitHub.