자격증/정보보안기사

윈도우 인증

Dior2ky 2020. 6. 29. 17:55
반응형

윈도우 인증

1. 윈도우 인증과정

1) 윈도우 인증 구성요소

(1) LSA(Local Security Authority) 서비스 기능

- 모든 계정 로그인 검증, 시스템 자원에 대한 접근 권한 검사

- 계정명과 SID를 매칭하여 SRM이 생성한 감사 로그 기록

- NT 보안의 중심 서비스, 보안 서브시스템이라 불림

(2) SAM(Security Account Manager) 서비스 기능

- 사용자/그룹 계정 정보에 대한 데이터베이스 관리

- 사용자 로그인 정보, SAM 파일의 사용자 패스워드 정보를 비교하여 인증 여부 결정

- SAM 파일은 사용자, 그룹 계정 및 암호화된 패스워드를 저장한 데이터베이스, C:\\Windows에 위치

(3) SRM(Service Reference Monitor) 서비스 기능

- 인증된 사용자에게 SID 부여

- SID를 기반으로 파일, 디렉터리에 대한 접근 허용 여부 결정, 감사 메세지 생성

 

2) 로컬 인증 

윈도우 부팅 -> 로그인 창(Winlogon 화면) id, pw 입력 -> 인증정보 LSA 서브시스템로 이동 -> NTLM 모듈로 이동 -> SAM으로 이동 -> 접근 토큰 생성 -> 로그인 처리

 

3) 원격(도메인) 인증

윈도우 부팅 -> 로그인 창(Winlogon 화면) id, pw 입력 -> 인증정보 LSA 서브시스템로 이동 -> 로컬 인증용, 도메인 인증용 확인 -> 커버로스(Kerberos) 프로토콜을 이용하여 도메인 컨트롤러(DC)에 인증 요청 ->  접근 토큰 생성 -> 로그인 처리

 

4) SAM 파일 접근 통제 설정(시스템 취약점 분석·평가 항목)

- Administrators 및 System 그룹 외에는 SAM 파일에 대한 접근 제한

- 불필요한 그룹 및 계정에 대해 권한 제거

 

2. 윈도우 보안 식별자(SID:Security Identifier)

1) SID

- 윈도우 각 상용자나 그룹에 부여되는 고유한 식별번호

- 로그인을 수행하면 접근 토큰이 생성, 해당 토큰에 로그인한 사용자, 사용자가 속한 모든 작업 그룹들에 관한 보안 식별자 정보 포함

- 접근 토큰의 사본은 그 사용자에 의해 시작된 모든 프로세스에게 할당

- SAM 파일에 SID 정보 저장

 

2) SID 구조

S-1 : 윈도우 시스템 의미 

5-21 : 시스템이 도메인 컨트롤러 이거나 단독 시스템임을 의미

xxxxxxxxxx-xxxxxxxxxx-xxxxxxxxxx : 해당 시스템만의 고유한 식별자

500 or 501 or 1001 : 사용자 식별자, 500(관리자), 501(게스트), 1000 이상(일반 사용자)

 

SID 확인 

-윈도우 관리명령 콘솔(WMIC) 사용

- useraccount list brief 명령 실행

 

3. 윈도우 인증 구조

1) 윈도우 인증 구조

Challenge & Response 방식 인증구조 사용 

- 인증 요청 : 인증하고자 하는 사용자가 윈도우 시스템에 인증 요청

- Challenge 값 생성 및 전송 : 인증 요청을 받은 서버는 특정 규칙 또는 랜덤한 Challenge 값 생성, 사용자에게 전달

- Response 값 생성 및 전송 : 사용자는 전달받은 Challenge 값과 사용자 패스워드 정보를 이용해 Response 값을 생성, 서버에 전달

- Response 값 확인 및 인증 성공 : 전달 받은 Response 값을 확인하여 인증 성공 여부 전달

 

2) 인증 암호 알고리즘 

- LM(Lan Manager) 해시 : 윈도우 2000, XP의 기본 알고리즘으로 구조적으로 취약한 알고리즘

- NTLM 해시 : LM 해시에 MD4 해시가 추가된 형태

- NTLMv2 해시 : 윈도우 비스타 이후 윈도우 시스템의 기본 인증 프로토콜, 기존과는 전혀 다른 알고리즘으로 해시값을 생성하며 현재까지 복잡도가 충분, 크래킹 어려움

- Lan Manager는 네트워크를 통한 파일 및 프린터 공유 등과 같은 작업 시 인증을 담당하는 서비스

- 안전한 인증을 위해 LM 해시 보다는 NTLMv2 해시 사용을 권장 

 

4. 패스워드 크래킹

1) 사전 공격/ 사전 대입 공격(Dictionary Attack)

- 패스워드에 자주 사용되는 사전에 있는 단어, 키보드 자판의 순서, 주민등록번호, 이름 등을 사전 파일로 만들어 이를 하나씩 대입하여 패스워드 일치 여부를 확인  

2) 무차별 공격/ 무작위 대입 공격(Brute Force Attack)

- 가능한 범위 내의 패스워드를 모두 일치 여부를 확인하는 방법, 일반적으로 사전공격 실패 후 진행

3) 혼합 공격(Hybrid Attack)

- 사전 공격과 무차별 공격을 혼합한 방식으로 사전 파일의 문자열에 문자, 숫자를 추가로 무작위 대입하여 패스워드 일치 여부 확인

4) 레인보우 테이블(Rainbow Table)을 이용한 공격

- 레인보우 테이블은 하나의 패스워드에서 시작해 특정한 변이 함수를 이용해 여러 변이된 형태의 패스워드를 생성, 각 변이된 패스워드의 해시를 고리처럼 연결하여 일정 수의 패스워드와 해시로 이루어진 체인을 무수히 만들어 놓은 테이블

- 해시 테이블과 Reduction 함수의 반복 수행을 통해 일치하는 해시값을 통해 패스워드를 찾는 방식

반응형

'자격증 > 정보보안기사' 카테고리의 다른 글

UNIX/Linux(파일시스템 응용)  (0) 2020.06.30
UNIX/Linux 기본(시스템 기본)  (0) 2020.06.29