본문 바로가기
보안&네트워크/보안

커버로스(Kerberos)

by kakk789 2022. 1. 6.

커버로스

- 티켓을 기반으로하는 동작으로 컴퓨터 네트워크 인증 암호화 프로토콜

- 비밀키 암호 알고리즘으로 온라인 키 공유 방법 - 보안성 (기밀성, 무결성 보장)
-
투명성(명시적인 티켓 요청이 필요 없음) - 재사용성 (재생공격 방지)

: AS는 - TGS의 개인키를 갖고 있고,
           TGS의 대칭키를 생성한다.
         -
모든 사용자의 PW를 갖고 있음.

: TGSSS의 개인키를 갖고 있고,
            SS의 대칭키를 생성한다.

: 클라이언트는 TimeStamp를 전송한다.

: 클라이언트는 최종적으로 TimeStamp들의
  값을 비교해 같으면 응용서버와의 작업을 실시함.

: 3A 지원 (Authentication, Accounting, Authorization)

 

클라이언트 인증(AS)서버

1. 클라이언트는 먼저 자신의 머신에 ID/PW를 입력하여 로그인 한다.

 

2. 클라이언트가 아래 메시지를 AS로 전송

  • msg ( User ID ) -->  암호화 X

3. AS msg에 적힌 User IDDB에서 찾은 후 존재하면 아래 두개의 메시지를 클라이언트로 리턴

  • encrypt (key: 클라이언트 PW기반으로 한 비밀키, data : TGS의 세션키(대칭키) )
    ** TGS의 세션키(대칭키)는 AS에서 생성 한 것임
  • TGT = encrypt ( key: TGS의 비밀키, Data : “Client ID, ip주소, 유효기간, TGS 세션키(대칭키)”)

 

클라이언트 티켓발급서버(TGS)

4. 클라이언트는 리턴 받은 a. 메시지를 확인 후 자신(클라이언트)의 공개키로 복호화하여 TGS의 세션키(대칭키)를 얻은 후 얻은 키로 Client ID, TimeStamp를 암호화하여 아래 두 메시지를 TGS로 전송

  • Authenticator = encrypt ( key: TGS 세션키(대칭키), data: “Client ID, TimeStamp”)
  • TGT (전달받은 TGT를그대로 다시 TGS로 전달, 클라이언트는 TGS의 비밀키를 모르기 때문에 조작 불가)

5. TGS는 전달받은 TGT, Authenticator를 복호화 하여 안에 담긴 Client ID들이 일치하는지 확인, 일치하면 아래 두 메시지를 리턴

  • encrypt ( key: TGS 세션키(대칭키), data: SS 세션키(대칭키))
    --> SS 세션키(대칭키))는 TGS가 생성 한 것임.
  • Ticket = encrypt ( key: SS 비밀키, data: “Client ID, ip주소, 유효기간, SS 세션키(대칭키) )

클라이언트- 응용서버(SS)

6. 클라이언트는 복호화 후 아래 두 메시지를 SS로 전송

  • Authenticator = encrypt(key: SS 세션키(대칭키), data: “Client ID, TimeStamp”)
  • Ticket

7. SS는 전달받은 Ticket, Authenticator를 복호화 해서 안에 담긴 Client ID 일치 확인 후 메시지 리턴

  • encrypt (key: SS 세션키(대칭키), data: Authenticator 안에 담겨있던 TimeStamp)

 

8. 클라이언트는 전달받은 TimeStamp와 자신이 Authenticator에 담아 보냈던 TimeStamp의 값이 일치하면 작업을 시작한다.

 

참고자료 : https://www.letmecompile.com/kerberos-protocol/         

              https://real-dongsoo7.tistory.com/117

반응형

'보안&네트워크 > 보안' 카테고리의 다른 글

스텔스 스캔(Stealth)  (0) 2022.01.06
VPN ( Virtual Private Network )  (0) 2022.01.06
SNI (서버 이름 표시자)  (0) 2022.01.03
메일 관련 공격  (0) 2021.12.31
메일 보안 기술 ( MIME, PGP, S/MIME )  (0) 2021.12.31

댓글