Security

Windows Privilege Escalation 도구(감자)

plit00 2024. 7. 6. 23:52

감자라 하면 potato인데 이 이름의 공격 도구들이 존재한다.

종류는 총 7개로 Hot, Rotten, Lonely, Juicy, Rogue, Sweet, Generic 이 있다.

 

이 도구들은 공격자들이 Windows 서버에 침투 후 서비스 계정을  NT AUTHORITY/SYSTEM 으로

권한 상승을 할때 사용된다. 

 

영향 범위 

Name OS
Hot, Rotten, Lonely, Juicy Potato Windows 7, 8, 10, Server 2008 및 Server 2012
Rogue, Sweet, Generi Potato Windows Server 2019 

 

해당 공격 도구들이 서비스 계정에서 NT AUTHORITY/SYSTEM으로 권한 상승을 하려는 이유는 말 그대로, 관리자 권한을

소유한다면, 피해 서버는 해킹 경유지 혹은 악성코드 유포지로 사용할 수 있다.

 

Windows 7,8,10, Server 2008, Server 2012 OS에 해당하는 취약점 원리는 다른 PoC에서도 다수 발견되는 NTLM이다.

NTLM 릴레이 이전에 작성한 글에서도 나오는데 PetitPotam(CVE-2021-43893) 공격에도 사용된다. 

 

공격 도구의 코드를 설명하기 이전에, 이해해야 하는 공격 기법 및 개념을 먼저 말하겠다.

 

Privilege(권한)

시스템 작업을 수행하는 특별한 권한이다. Windows를 사용하는 사용자에게 할당되며, 이를 토큰이라고 한다.

이는 비활성화/활성화로 나눌 수 있는데, 일반적인 권한에서 확인한다면 다음과 같이 나타나게 된다.

whoami /priv

사진과 같이 5개밖에 확인을 못하는 이유는 제한된 토큰을 사용하고 있기 때문이다. 

다음 결과를 보자

whoami /priv

 

부여된 토큰이 다르기때문에 동일한 명령어를 입력했는데 결과 값이 다르다. 

potato가 사용하는 토큰은 SeImpersonatePrivilege와 SeAssignPrimaryTokenPrivilege다. 

SeImpersonatePrivilege는 사용자 토큰을 가장하고 보안 컨텍스트를 실행할 수 있다.

SeAssignPrimaryTokenPrivilege는 CreateProcessWithTokenW()를 호출하여 보유한 토큰을 프로세스로 만들 수 있다.

 

 

 

NTLM 공격

중간자공격(MitM)의 일종으로 네트워크 접근 권한을 가진 공격자가 네트워크 서비스에 접근하기 위해 클라이언트와 서버 간의 정식 인증 트래픽에 인터셉트하여 유효한 인증 요청을 릴레이하도록 허용하는 것이다. 

피해 서버가 AD를 사용한다면, DC를 포함한 윈도우 서버가 공격자를 정상적인 인증으로 처리하여 장악까지 할 수 있다.