Kerberos 프로토콜의 ASREQ & AS_REP

4390 단어 Kerberos
Kerberos 개요
Kerberros는 MIT(매사추세츠공대)가 제출한 인터넷 신분증 프로토콜이다.그것은 연결을 통해 사용할 때 클라이언트/서버 응용 프로그램에 강력한 신분 검증을 제공할 것이다.
Kerberos 프로토콜에는 주로 세 개의 각도가 있습니다.
  • 서비스에 액세스하는 클라이언트(이하 표는 클라이언트 또는 사용자)
  • 서비스 제공 서버(이하 표는 서비스)
  • KDC(Key Distribution Center) 밀착 센터kerberos 측정 도구 소개
  • 그 중에서 KDC 서비스는 기본적으로 한 구역의 구역 제어에 설치되고 클라이언트와 서버는 구역 내의 사용자나 서비스, 예를 들어 HTTP 서비스, SQL 서비스이다.Kerberros에서 Client가 Server 측에 접근할 권리가 있는지 여부는 KDC에서 발행한 표에 의해 결정됩니다.
    의 간소화 인증 과정은 다음과 같다.
  • AS_REQ: Client KDC에 AS 발생REQ, Client hash 암호화 타임 스탬프 요청
  • AS_REP: KDC는 Client hash를 사용하여 복호화하고 결과가 정확하면 krbtgt hash로 암호화된 TGT 어음을 되돌려줍니다. TGT 뒷면에는 PAC, PAC에는 Center의sid, Center가 있는 그룹이 포함됩니다.
  • TGS_REQ: Celient가 TGT 티켓을 발행하여 KDC에 특정 서비스를 위한 TGS를 개시한다REQ 요청
  • TGS_REP: KDC는 krbtgt hash를 사용하여 복호화하고 결과가 정확하면 서비스hash로 암호화된 TGS 어음으로 되돌려줍니다(이 단계는 사용자가 서비스에 접근할 권한이 있든 없든 TGT가 정확하면 TGS 어음으로 되돌려줍니다)
  • AP_REQ:Center가 TGS 티켓을 가지고 서비스 요청
  • AP_REP: 서비스는 자신의 해시를 사용하여 TGS 어음을 복호화합니다.복호화가 정확하면 PAC를 가지고 KDC에 가서 Client에게 접근 권한이 없다고 물어보고 구역 제어 복호화 PAC를 물어보세요.Celient의sid, 그리고 소재 그룹을 획득한 다음에 이 서비스의 ACL에 따라 Celient가 서비스에 접근할 수 있는 권리 제한이 있는지 판단한다.
  • 본문은 앞의 두 가지를 중시한다
    AS_REQ
    Keerberos 패키지는 데커 셰프의 도구로 보냅니다.
    배포 계정
    PAPAC_REQUEST,ENCTIMESTAMP,etypes에 있는 rc4hmac를 암호화합니다.하도급

    클러치 AS-REQ AS-REAP 2개

    AS-REQ의 필드
    1. pvno Kerberos 버전
    2.ms-type Kerberos 유형 0x0a 대응krb-as-req
    3. padata는 PA-ENC-TIMESTAMP와 PA-PAP-REQUEST를 저장한다
    3.1 PA-ENC-TIMESTAMP는 사전 인증으로 사용자의hash를 암호화하고 AS는 사용자의hash를 저장하며 AS 사용자의hash를 복호화하여 타임 스탬프를 받는다.만약 시간이 어느 시간에 스탬프를 찍으면 인증이 성공합니다.
    3.2 PA-PAP-REQUEST는 마이크로소프트가 도입한 PAC 확장으로, include-pac=true, KDC는include의 값에 따라 PAC 휴대 여부를 판단한다.
    4. req-body

    4.1 cname
    PrincipalName 유형입니다.PrincipalName에는 type과value가 포함되어 있습니다.
    KRB_NT_PRINCIPAL = 1 은 사용자 이름만 있으면 된다는 뜻이다. 예를 들어 [email protected] 이 지역의 사용자는 admin만 입력하면 된다.
    KRB_NT_SRV_INST=2 서비스 and other unique instance(krbtgt) 서비스 계정
    KRB_NT_ENTERPRISE_PRINCIPAL = 10[email protected] 사용자 전체 이름.
    4.2 sname PrincipalName 유형은 ASREQ에서 sname은 krbtgt이고 유형은 KRB입니다.NT_SRV_INST
    4.3 till 만료 시간
    4.4 nonce 랜덤
    4.5etypehash 암호화 유형
    AS-REP

    KDC는 사용자가 krbtgt hash로 암호화된 TGT 어음을 올바르게 재사용할 수 있도록 해독합니다.

    각 필드의 의미
    1.msg-type krb-as-rep에 대응하는 것은 0x0b
    2. cream 도메인 이름
    3. cname용 호형과 호명
    4.ticket tgt 어음 이 안에 황금 어음 문제가 존재한다. 되돌아오는 tgt는krbtgt의hash를 통해 암호화되기 때문에krbtgt의hash를 알면 임의의 사용자를 위조할 수 있다.
    5.enc-partt 이 부분은 Daiker 스승의 도구로 복호화할 수 있습니다.키는 사용자hash입니다. 복호화 후 Encryptionkey를 받을 수 있습니다.

    참고 자료
  • https://daiker.gitbook.io/windows-protocol/kerberos/1
  • https://github.com/daikerSec/windows_protocol/tree/master/tools
  • 불어서 폭파시키다

    좋은 웹페이지 즐겨찾기