
RottenPotatoNG의 설탕 코팅 버전으로, 약간의 주스를 더한, 즉 Windows Service Accounts에서 NT AUTHORITY\SYSTEM으로 권한을 상승시키는 또 다른 로컬 권한 상승 도구입니다.
RottenPotatoNG의 달콤한 버전으로, 약간의 주스가 첨가되었습니다. 즉, Windows 서비스 계정에서 NT AUTHORITY\SYSTEM으로의 또 다른 로컬 권한 상승 도구입니다
RottenPotatoNG 및 그 변종은 BITS 서비스가 127.0.0.1:6666에서 MiTM 리스너를 가지고 있고 SeImpersonate 또는 SeAssignPrimaryToken 권한이 있을 때의 권한 상승 체인을 활용합니다. Windows 빌드 검토 중에 BITS가 의도적으로 비활성화되고 포트 6666이 사용 중인 설정을 발견했습니다.
우리는 RottenPotatoNG을 무기화하기로 결정했습니다: Juicy Potato에 인사하세요.
이론은 Rotten Potato - Privilege Escalation from Service Accounts to SYSTEM을 참조하고 링크와 참고 자료 체인을 따라가세요.
우리는 BITS 외에도 남용할 수 있는 여러 COM 서버가 있음을 발견했습니다. 그들은 다음 조건을 충족해야 합니다:
IMarshal 인터페이스를 구현해야 합니다.몇 가지 테스트 후 우리는 여러 Windows 버전에서 흥미로운 CLSID의 광범위한 목록을 얻고 테스트했습니다.
JuicyPotato는 다음을 가능하게 합니다:
대상 CLSID
원하는 CLSID를 선택하십시오. 여기에서 OS별로 정리된 목록을 찾을 수 있습니다.
COM 수신 포트
선호하는 COM 수신 포트를 정의합니다 (마샬링된 하드코딩된 6666 대신)
COM 수신 IP 주소
서버를 모든 IP에 바인딩합니다
프로세스 생성 모드
가장된 사용자의 권한에 따라 다음 중에서 선택할 수 있습니다:
CreateProcessWithToken (SeImpersonate 필요)CreateProcessAsUser (SeAssignPrimaryToken 필요)both (둘 다)실행할 프로세스
익스플로잇이 성공하면 실행 파일 또는 스크립트를 실행합니다
프로세스 인수
실행된 프로세스 인수를 사용자 정의합니다
RPC 서버 주소
은밀한 접근 방식을 위해 외부 RPC 서버에 인증할 수 있습니다
RPC 서버 포트
외부 서버에 인증하려고 하는데 방화벽이 포트 135를 차단하는 경우 유용합니다...
테스트 모드
주로 테스트 목적, 즉 CLSID 테스트를 위한 것입니다. DCOM을 생성하고 토큰의 사용자를 출력합니다. 테스트는 여기를 참조하십시오.
T:\>JuicyPotato.exe
JuicyPotato v0.1
Mandatory args:
-t createprocess call: <t> CreateProcessWithTokenW, <u> CreateProcessAsUser, <*> try both
-p <program>: program to launch
-l <port>: COM server listen port
Optional args:
-m <ip>: COM server listen address (default 127.0.0.1)
-a <argument>: command line argument to pass to program (default NULL)
-k <ip>: RPC server ip address (default 127.0.0.1)
-n <port>: RPC server listen port (default 135)
-c <{clsid}>: CLSID (default BITS:{4991d34b-80a1-4291-83b6-3328366b9097})
-z only test CLSID and print token's user

사용자가 SeImpersonate 또는 SeAssignPrimaryToken 권한을 가지고 있다면 당신은 SYSTEM입니다.
이러한 모든 COM 서버의 남용을 방지하는 것은 거의 불가능합니다. DCOMCNFG를 통해 이러한 개체의 권한을 수정하려고 생각할 수 있지만, 행운을 빕니다. 이는 매우 어려울 것입니다.
실제 해결책은 * SERVICE 계정으로 실행되는 민감한 계정과 애플리케이션을 보호하는 것입니다.
DCOM을 중지하면 이 익스플로잇을 분명히 차단할 수 있지만 기본 OS에 심각한 영향을 미칠 수 있습니다.
자동 빌드가 제공됩니다. 바이너리는 여기의 아티팩트 섹션에서 다운로드할 수 있습니다.
또한 BlackArch에서도 사용할 수 있습니다.