Kerberos 협의의 비약정 위원회 파견

5476 단어 Kerberos
지역 위원회파
한마디로 위임은 지역 내 사용자의 권리 제한을 서비스 계정에 위임하여 서비스 계정이 호권 제한으로 지역 내 활동을 전개할 수 있도록 한다.나의 권리를 서비스 계좌에 한정하다.
주의해야 할 점은 위탁을 받은 계좌는 서비스 계좌나 컴퓨터 계좌일 수 있다는 것이다
하나의 고전적인 예는 그림과 같다

Jack은 Kerberos 인증을 받은 다음 백그라운드 서버에 로그인해야 합니다.
  • jack은Kerberos 프로토콜 인증으로 등록하여 웹svc
  • 에 증빙서류를 발송
  • 웹 svc는 Jack의 자격 증명을 사용하여 KDC에 Kerberos를 시작하여 TGT를 신청합니다.
  • KDC는 웹svc의 위원회파 속성을 검사하고 웹svc가 위원회파를 할 수 있다면 전송할 수 있는 jack의 TGT를 검사한다.
  • 웹svc에서 전송 가능한 TGT를 받은 후 이 TGT를 사용하여 KDC에 백엔드 파일 서버에 접근할 수 있는 TGS 어음을 신청합니다.
  • KDC는 웹svc의 위임 속성을 검사하고 위임이 가능하며 권리가 허락된다면 jack 방문 서비스의 TGS 어음으로 돌아간다.
  • 웹 svc는 jack의 서비스인 TGS표를 사용하여 백엔드 파일 서버를 요청합니다.
  • 마이크로소프트의 공식 프로세스를 붙이다

    비약정 위원회파 배치
    DM$ 서비스 계정에 비제약 위임이 설정되어 있으면 임의의 사용자가 임의의 서비스를 요청하는 것을 받아들일 수 있다.
    너무 추상적이어서 셋방을 비교해 보면
  • 임의의 사용자가 세입자
  • DM달러 계좌는 중개업자
  • 임의 서비스는 집주인
  • 세입자는 자신의 돈을 중개인에게 맡기고, 중개인은 돈을 집주인에게 건네 전세를 신청한다.그러면 이 과정에서 DM은 임의의 사용자의'돈'을 가지게 된다.
    프로토콜 차원에서 말하자면 사용자 A위임DM$이 WEB 서비스에 접근하면 사용자는 TGT를 DM의 lsas에 버퍼링하고 DM은 이 사용자가 서비스에 접근하는 것을 모의한다.
    위임 계좌를 찾다
  • 서비스 계정 번호나 호스트가 비제약적 위임으로 설정되었을 때 userAccountControl 속성은 TRUSTED_FOR_DELEGATION
  • 본 서비스 계정 또는 호스트가 번들 위임으로 설정되었을 때 그 userAccountControl 속성은 TRUSTED_TO_AUTH_FOR_DELEGATION를 포함하고 msDS-AllowedToDelegateTo 속성은 약정된 서비스를 포함한다
  • adsiedit에서.mc에서 ADSI 편집기를 열고 LDAP 링크

    비제약 위임 속성을 설정한 계정에 TRUSTED 추가TO_AUTH_FOR_DELEGATION의 목표 위치, 대응하는 값은 0x80000, 즉 524288이다.
    필터비제약 위임을 구성할 영역을 찾는 사용자:
    (&(samAccountType=805306368)(userAccountControl:1.2.840.113556.1.4.803:=524288))
    
    조사 영역에서 비제약 위임을 구성하는 호스트:
    (&(samAccountType=805306369)(userAccountControl:1.2.840.113556.1.4.803:=524288))
    
    adfind와ldapsearch 모두 조회할 수 있습니다.
    활용단어참조
    환경: DM은 위임할 수 있고 DC는 도메인 제어입니다.
    DC에서 WinRM을 통한 DM 액세스

    이 때 DM에서는 DC에서 로그인한 도메인 파이프의 ticket을 버퍼링하고 mimikatz에서 내보냅니다.

    완성됐습니다.실전에서 DC로 하여금 우리의 DM 기계에 접근하게 해야 한다.
    제약이 없는 위원회 파견 + Spooler 프린터 서비스
    윈도 프린터 시스템 원격 프로토콜(MS-PRPRN)의 낡았지만 인정된 방법을 이용하여 이 방법에서 구역은 MS-PRPRNRpcRemoteFindFirstPrinterChangeNotification(Ex) 방법으로 스폴러 서비스를 실행한 몇 개의 컴퓨터를 Kerberros나 NTLM을 통해 공격자가 선택한 목표를 강제로 인증할 수 있다.
    도구: https://github.com/leechristensen/SpoolSample
    의제 기사 주소: https://www.slideshare.net/harmj0y/derbycon-the-unintended-risks-of-trusting-active-directory
    SpoolSample을 도메인으로 변환하려면 기본적으로 자동으로 켜져 있는 Print Spooler 서비스를 켜야 합니다.
    SpoolSample.exe DC DM
    
    DC에 DM 인증을 강제로 액세스하는 동시에 rubeus를 사용하여 DC의 4624 로그인 로그를 수신합니다.
    Rubeus.exe monitor /interval:1 /filteruser:dc$
    

    Rubues를 사용하여 base 64 ticket 가져오기
    .\Rubeus.exe ptt /ticket:base64
    
    이때 나온 티켓은 DC의 TGT가 있어요.

    Mimikatzptt로 하면 끝이에요.

    참고 자료
  • https://xz.aliyun.com/t/7217
  • https://github.com/leechristensen/SpoolSample
  • https://www.cnblogs.com/zpchcbd/p/12939246.html
  • https://daiker.gitbook.io/windows-protocol/kerberos/2
  • 좋은 웹페이지 즐겨찾기