윈도우 보안
--LSA(Local Security Authority)
NT서버(New Technology의 약자로, 윈도우 서버의 통칭) 보안의 기본.
SAM(Security Account Management): 인증된 사용자들에게 SID를 부여해 DB로 관리
> 로컬인증 과정: winlogon 실행되면 사용자 인증 정보를 LSA가 받아 NTLM(NT LAN Manager)모듈로 넘긴 뒤, SAM이 DB에 저장된 값과 비교하여 같으면 접근 토큰 부여함.
> 원격 인증 과정: winlogon 실행되면 사용자 인증 정보를 LSA가 LSA 서브 시스템으로 전달하고, LSA 서브 시스템은 이를 커버로스를 통해 인증 과정을 거침. 이때 커버로스란 대칭키 암호화를 이용한 티켓 기반 인증 암호화 프로토콜이다. AS(인증서버), TGS(티켓 발급 서버)_이 둘을 묶어 KDC라고 함, SS(서비스 서버)로 구성되어 있으며, 커버로스가 적용된 시스템에 접근할 땐 kinit 명령어를 사용한다.
SAM 패스워드 파일에 대한 크래킹을 방지하기 위해 administrator와 시스템 그룹 외에는 SAM파일에 대한 접근을 제한하고, 불필요한 계정/그룹에는 권한 제거하여 관리한다.
--SID) 윈도우 보안 식별자. 고유 식별 번호로, administrator는 500, guest는 501, 일반사용자는 1000이상의 번호가 부여됨.
윈도우 인증 구조는 Challenge&Response 구조로, 단순히 아이디/패스워드를 전달하여 인증하는 취약한 방법보다 높은 수준의 인증을 제공함. 인증 암호 알고리즘으로는 LM 해시(윈도우 xp버전에서 사용), NTLM 해시(LM 해시에 MD4 해시 추가), NTLMv2 해시(현재까지 복잡도가 충분하여 크래킹 어려움)이 있음.
*패스워드 크래킹 방법: Brute force, 사전 공격, 혼합 공격, rainbow table 등이 있음.
--윈도우 서버 취약점
계정 관리
1) administrator 계정 이름 변경: 기본 관리자 계정명 그대로 사용할 경우, 윈도우 시스템의 관리자 계정의 경우 로그온 실패 횟수에 대한 제한이 없기 때문에 악의적인 공격(brute force 등)에 노출되기 쉬움.
>> 예측하기 어려운 이름으로 관리자 계정 이름 변경
2) Guest 계정 사용 제한: Guest 계정은 소프트웨어나 하드웨어 설치, 설정 변경, 암호 만들기 등을 수행할 수 없고 외부 사용자가 컴퓨터를 잠시 접근할 때 사용하는 계정임. 불특정 사용자의 시스템 접근을 허용하는 취약한 계정이므로 사용 제한을 권장하며 필요한 경우에는 일반 사용자 계정을 사용하도록 해야 함.
>> Guest 계정 사용 안 함 설정
3) 불필요한 계정 삭제
4) 관리자 그룹에 최소한의 사용자만 포함
5) 패스워드 정책 설정 >> 최소한의 복잡성을 만족하도록 영어 대소문자, 숫자, 특수문자를 모두 포함하도록 해야 함. 사전에 나오는 단어/길이가 짧은 패스워드/키보드 자판에서 연속되는 경우/사용자 계정 정보로 유추되는 정보 등은 패스워드로 설정하지 않아야 함. 최근 패스워드 기억 설정도 사용할 수 없도록 설정, 패스워드 최대/최소 사용기간 설정, 패스워드 최소 길이 설정
6) 계정 잠금 정책: 패스워드 틀린 횟수 일정 횟수(5 이하의 값 권장) 넘으면 특정 시간 동안 계정 로그인 잠금 설정.
서비스 관리
1) 하드디스크 기본 공유 제거: 하드디스크 기본 공유 C$, D$ 및 원격 관리/IPC용 기본 공유 파일 ADMIN$, IPC$의 공유 제거
2) 공유 권한 및 사용자 그룹 설정: 공유 폴더에 everyone 그룹 포함된 경우 이를 제거
3) 불필요한 서비스 제거: Alerter, Clipbook, Messenger, Simple TCP/IP 서비스 제거
로그 관리
윈도우에서는 감사 정책으로 로그 관리를 수행함. 감사 정책이란 어떤 로그를 남길지 정의한 규칙으로, 감사 설정이 없거나 설정 수준이 너무 낮은 경우 보안 관련 문제 발생 시 원인을 찾기 어려움. 감사 정책 수준이 너무 높은 경우에는 보안 로그에 불필요한 항목들이 많이 기록되어 주요 항목과 혼동될 수 있고 시스템 성능에도 영향을 미치므로 법적 요구사항과 조직의 정책에 따라 적정 수준으로 로그 남기도록 설정해야 함.