보안 계정 관리자
1. 개요
보안 계정 관리자(SAM)는 윈도우 운영체제에서 사용자 계정의 비밀번호를 저장하는 데이터베이스이다. SAM 파일은 해시 함수를 사용하여 비밀번호를 안전하게 저장하며, 윈도우 커널의 파일 시스템 잠금으로 인해 실행 중에는 복사하거나 옮길 수 없다. 하지만, 메모리 덤프 기법을 통해 SAM의 내용을 추출하여 오프라인에서 비밀번호를 크래킹할 수 있으며, 8자 NTLM 비밀번호 해시를 크래킹하는 데 걸리는 시간은 기술 발전으로 단축되었다. LM 해시는 보안 취약점으로 인해 제거되었으며, 윈도우 NT 구버전에서는 SAM 파일 삭제를 통한 인증 우회 공격이 가능했다. 또한, 윈도우 10 및 11에서는 권한이 낮은 사용자가 SAM 파일에 접근할 수 있는 취약점이 발견되기도 했다.
| 유형 | 윈도우 데이터베이스 |
|---|---|
| 목적 | 사용자 비밀번호 저장 |
-
접근 제어 소프트웨어 -
ReCAPTCHA
reCAPTCHA는 웹사이트에서 봇을 차단하고 사용자가 인간임을 인증하는 CAPTCHA 시스템으로, 초기에는 스캔된 텍스트 디지털화 과정에서 OCR로 인식하기 어려운 단어 식별에 활용되었으나, 이미지 식별, 행동 분석 등 다양한 인증 방식을 도입하며 발전해왔으며, 접근성 및 개인 정보 보호 문제와 사용자들의 무임금 노동 제공과 관련된 비판도 존재한다. -
접근 제어 소프트웨어 -
로컬 보안 인증 하위 시스템 서비스
-
운영 체제 보안 -
NX 비트
NX 비트는 하드웨어 기반 보안 기능으로, 메모리 페이지의 실행 권한을 제어하여 특정 영역에서 코드 실행을 막아 버퍼 오버플로 공격과 같은 보안 위협을 줄이는 데 사용되며, AMD에서 처음 도입 후 다양한 프로세서와 운영체제에서 DEP 등의 이름으로 구현되었다. -
운영 체제 보안 -
슈퍼유저
슈퍼유저는 운영 체제에서 모든 권한을 가진 사용자를 지칭하며, 유닉스 계열에서는 root, 윈도우에서는 관리자 계정이 해당 역할을 수행한다. -
윈도우 소프트웨어 -
마이크로소프트 파워포인트
마이크로소프트 파워포인트는 1987년 포어소트에서 개발되어 마이크로소프트에 인수된 후, 마이크로소프트 오피스 제품군으로 제공되면서 전 세계적으로 널리 사용되는 프레젠테이션 프로그램으로, 슬라이드 쇼 형식을 통해 텍스트, 이미지, 오디오, 비디오 등 다양한 멀티미디어 요소를 활용하여 정보를 시각적으로 전달하는 데 사용된다. -
윈도우 소프트웨어 -
냅스터
냅스터는 1999년부터 2001년까지 운영된 P2P 파일 공유 서비스로, MP3 파일 공유를 용이하게 하여 음악 산업에 큰 영향을 주었으며 저작권 침해 소송으로 서비스가 중단되었으나 현재는 음악 스트리밍 서비스로 운영되고 있다.
2. 암호 해독
해시 함수는 일방향성을 가지므로, 비밀번호를 저장하는 데 보안에 유리하다.
온라인 공격의 경우, SAM 파일을 다른 위치로 복사하는 것은 불가능하다. Windows 커널이 SAM 파일에 대한 독점적인 파일 시스템 잠금을 획득하여 유지하고, 운영 체제가 종료되거나 블루 스크린 예외가 발생할 때까지 해당 잠금을 해제하지 않기 때문이다. 그러나 SAM 내용의 메모리 내 복사본은 다양한 기술(pwdump)을 사용하여 덤프할 수 있으며, 이를 통해 오프라인 무차별 대입 공격에 비밀번호 해시를 사용할 수 있다.
2.1. 비밀번호 크래킹
2012년에는 8자 NTLM 비밀번호 해시 순열을 6시간 이내에 크래킹할 수 있다는 것이 입증되었다. 2019년에는 더 현대적인 하드웨어를 사용하여 이 시간을 약 2.5시간으로 단축했다.
온라인 공격의 경우, SAM 파일을 다른 위치로 복사하는 것은 불가능하다. Windows가 실행되는 동안 SAM 파일을 이동하거나 복사할 수 없다. Windows 커널이 SAM 파일에 대한 독점적인 파일 시스템 잠금을 획득하여 유지하고, 운영 체제가 종료되거나 블루 스크린 예외가 발생할 때까지 해당 잠금을 해제하지 않기 때문이다. 그러나 SAM 내용의 메모리 내 복사본은 다양한 기술(pwdump)을 사용하여 덤프할 수 있으며, 이를 통해 오프라인 무차별 대입 공격에 비밀번호 해시를 사용할 수 있게 된다.
2.2. 온라인 공격의 어려움
윈도우 커널은 SAM 파일에 대한 배타적인 파일시스템 락을 획득하여 유지하며, 운영체제가 종료되거나 블루스크린 예외가 발생하기 전에는 이 락을 놓지 않는다. 따라서 윈도우가 실행 중에는 SAM 파일을 옮기거나 복사할 수 없다. 그러나 pwdump와 같은 도구를 사용하여 SAM의 내용을 메모리에서 덤프하여 비밀번호 해시를 오프라인에서 무차별 대입 공격할 수 있다.
2.3. LM 해시 제거
대부분의 윈도우 버전에서는 사용자가 비밀번호를 변경할 때 유효한 LM 해시의 생성 및 저장을 비활성화하도록 설정할 수 있다. 윈도우 비스타에서는 이 설정이 기본으로 활성화되어 있지만, 이전 버전의 윈도우에서는 비활성화가 기본 설정이었다. 이 설정을 활성화해도 보안 계정 관리자(SAM)에서 LM 해시 값이 즉시 지워지는 것은 아니다. 대신 비밀번호 변경 시 SAM 데이터베이스에 더미 값을 저장하는 추가 검사가 활성화된다. 이 더미 값은 사용자의 비밀번호와 관련이 없으며, 모든 사용자 계정에 동일한 값이 저장된다.
LM 해시는 보안이 취약한 프로토콜이며 NTLM 해시로 대체되었다. 윈도우 비스타 이후 버전에서는 기본적으로 LM 해시가 비활성화되어 있다.
2.4. 관련 공격
해시 함수는 일방향성을 가지므로, 비밀번호를 저장하는 데 보안에 유리하다. 그러나 온라인 공격의 경우, 윈도우 커널이 SAM 파일에 대해 배타적인 파일시스템 잠금을 유지하기 때문에 SAM 파일을 다른 곳으로 복사하는 것은 불가능하다. 그럼에도 불구하고, SAM 내용의 메모리 복사본은 다양한 기법(pwdump)을 통해 덤프될 수 있으며, 이를 통해 비밀번호 해시를 오프라인에서 무차별 대입 공격할 수 있다.
윈도우 NT 3.51, NT 4.0, 2000에서는 SAM 파일이 삭제되면 비밀번호 없이 모든 계정에 로그인할 수 있는 취약점이 존재했다. 이 결함은 윈도우 XP에서 수정되었으나, 특정 소프트웨어 유틸리티를 이용해 비밀번호 해시를 제거하거나 사용자 계정 비밀번호를 변경하는 것은 여전히 가능하다. 이러한 소프트웨어는 윈도우 계정 비밀번호를 분실한 사용자를 위한 복구 도구로 활용될 수 있지만, 악의적인 목적으로 악용될 소지도 있다.
2021년 7월, 윈도우 10 및 윈도우 11에서 권한이 낮은 사용자도 SAM 파일을 포함한 민감한 레지스트리 데이터베이스 파일에 접근할 수 있는 취약점이 발견되었다.