Jenkins RCE Creating/Modifying Project
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
이 방법은 새로운 프로젝트를 만들어야 하기 때문에 매우 시끄럽습니다 (명백히 사용자가 새로운 프로젝트를 만들 수 있는 경우에만 작동합니다).
새 프로젝트 만들기 (Freestyle project) "New Item"을 클릭하거나 /view/all/newJob
에서 진행합니다.
Build 섹션에서 Execute shell을 설정하고 powershell Empire launcher 또는 meterpreter powershell을 붙여넣습니다 (이는 _unicorn_을 사용하여 얻을 수 있습니다). powershell 대신 _PowerShell.exe_로 페이로드를 시작합니다.
Build now를 클릭합니다.
Build now 버튼이 나타나지 않으면 여전히 configure --> Build Triggers --> Build periodically
로 이동하여 * * * * *
의 크론을 설정할 수 있습니다.
크론을 사용하는 대신 "Trigger builds remotely" 설정을 사용할 수 있으며, 여기서는 작업을 트리거하기 위해 API 토큰 이름을 설정하기만 하면 됩니다. 그런 다음 사용자 프로필로 이동하여 API 토큰 생성을 클릭합니다 (이 API 토큰을 작업을 트리거하기 위해 호출한 API 토큰으로 부릅니다). 마지막으로 작업을 트리거합니다: curl <username>:<api_token>@<jenkins_url>/job/<job_name>/build?token=<api_token_name>
프로젝트로 이동하여 구성할 수 있는지 확인합니다 ( "Configure button"을 찾습니다):
구성 버튼이 보이지 않으면 아마도 구성할 수 없습니다 (하지만 모든 프로젝트를 확인해보세요, 일부는 구성할 수 있을 수 있습니다).
또는 각 프로젝트에서 /job/<proj-name>/configure
또는 /me/my-views/view/all/job/<proj-name>/configure
경로에 접근해 보세요 (예: /job/Project0/configure
또는 /me/my-views/view/all/job/Project0/configure
).
프로젝트를 구성할 수 있는 경우 빌드가 성공할 때 명령을 실행하도록 설정할 수 있습니다:
저장을 클릭하고 프로젝트를 빌드하면 명령이 실행됩니다. 리버스 셸을 실행하지 않고 간단한 명령을 실행하는 경우 빌드의 출력에서 명령의 출력을 볼 수 있습니다.
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)