보안 식별자

Security Identifier

Microsoft Windows NT 계열의 운영 체제시스템에서 보안 식별자(일반적으로 생략된 SID)는 사용자, 사용자 그룹 또는 기타 보안 주체 고유의 불변의 식별자입니다.보안 주체에는 수명(특정 도메인 내)에 대한 단일 SID가 있으며 이름을 포함한 주체의 모든 속성이 SID와 연결됩니다.이 설계를 통해 주체를 참조하는 객체의 보안 속성에 영향을 주지 않고 주체의 이름을 변경할 수 있습니다(예: "Jane Smith"에서 "Jane Jones"로).

개요

Windows 에서는, SID 를 사용해 유저와 그 그룹 멤버쉽을 일의로 식별하는 Access Control List(ACL; 액세스컨트롤 리스트)에 근거해 리소스에 액세스와 권한을 허가 또는 거부합니다.사용자가 시스템에 로그인하면 사용자 및 그룹 SID와 사용자 권한 수준을 포함하는 액세스 토큰이 생성됩니다.사용자가 리소스에 대한 액세스를 요청하면 ACL에 대해 접근토큰이 체크되어 특정 오브젝트에 대한 특정 액션을 허용 또는 거부합니다.

SID 는, 시큐러티 감사, Windows 서버, 및 도메인 이행에 관한 문제의 트러블 슈팅에 도움이 됩니다.

SID 의 형식은, 「S-1-5-21-3623811015-3361044348-30300820-1013」의 예를 사용해 나타낼 수 있습니다.

S 1 5 21-3623811015-3361044348-30300820 1013
문자열은 SID입니다. 리비전 레벨(SID 사양 버전). 식별자 권한 값입니다. 하위 권한 값
이 경우 고유 식별자를 가진 도메인(21)입니다.

두 개 이상의 하위 기관이 있을 수 있습니다.

특히 도메인 상에 계정이 존재하는 경우

다른 그룹에 [1]속합니다.

Relative ID(RID; 상대 ID).기본적으로 작성되지 않은 모든 그룹 또는 사용자의 상대 ID는 1000 이상입니다.

식별자 권한 값

식별자 권한 값

알려진 식별 권한 값은 다음과 같습니다.[2][3]

십진수 이름. 표시명 최초 도입 레퍼런스 메모들
0 특수한 권한 예: "Nobody"(S-1-0-0)
1 월드 오소 (표시되지 않음) 예: 「Everyone」등의 잘 알려진 그룹(S-1-0)
2 지방 당국 (표시되지 않음) 예를 들어 "CONSOLE LOGON"과 같은 SID에 플래그를 붙입니다.
3 크리에이터 권한
4 고유하지 않은 권한
5 NT 인증 기관 NT 인증국\ NT 보안 서브시스템에 의해 관리됩니다."BUILTIN"과 같은 하위 기관과 모든 Active Directory 도메인이 있습니다.
7 인터넷$ 인터넷$\ 윈도 7
9 리소스 관리자 권한 Windows Server 2003 [4][5]
11 Microsoft 어카운트 오소리티 Microsoft 어카운트\ 윈도 8 [6]
12 Azure Active Directory AzureAD\ 윈도 10
15 기능 SID 윈도 8

Windows Server 2012

[7][8][9] 모든 기능 SID는 S-1-15-3에서 시작됩니다.

설계상 기능 SID는 알기 쉬운 이름으로 해결되지 않습니다.

가장 일반적으로 사용되는 기능 SID는 다음과 같습니다.

S-1-15-3-1024-1065365936-1281604716-3511738428-1654721687-432734479-332135806-4053264122-3456934681

16 필수 라벨\ 윈도 비스타 필수 무결성 제어의 일부로 사용
18 단언된 아이덴티티

기능 SID 식별:

  • 레지스트리 데이터에서 SID를 찾으면 기능 SID입니다.이 이름은 원래 친숙한 이름으로 해결되지 않습니다.
  • 레지스트리 데이터에서 SID를 찾을 수 없는 경우 알려진 기능 SID가 아닙니다.해결되지 않은 일반 SID로 문제 해결을 계속할 수 있습니다.SID가 서드파티 기능 SID일 가능성이 적으며, 이 경우 SID는 알기 쉬운 이름으로 해결되지 않습니다.

Microsoft [8]지원 기준:중요 - 레지스트리 권한 또는 파일 시스템 권한에서 기능 SIDS를 삭제하지 마십시오.파일 시스템 권한 또는 레지스트리 권한에서 기능 SID를 제거하면 기능 또는 응용 프로그램이 제대로 작동하지 않을 수 있습니다.기능 SID를 제거한 후에는 UI를 사용하여 다시 추가할 수 없습니다.

S-1-5 서브 Authority[7][10][11]

십진수 이름. 표시명 최초 도입 레퍼런스 메모들
18 로컬 시스템 로컬 시스템 윈도 7 예: S-1-5-18은 Local System의 유명한 sid입니다.
21 도메인
32 사용자 윈도 7 예: S-1-5-32-568은 IIS_의 그룹 ID입니다.IUSRS
64 인증 10 - NTLM

14 - 스칸넬

21 - 다이제스트

80 NT 서비스 NT 서비스\ 윈도 비스타 SQL Server 설치 등 "가상 계정 NT 서비스"일 수 있습니다.

S-1-5-80-0은 "NT SERVICE\ALL SERVICES"에 대응합니다.

82 IIS AppPool App Pool Identity \ 윈도 7
83 가상 머신 NT 가상 머신\ 윈도 7 "NT 가상 시스템\{guid}" {guid}은(는) Hyper-V VM의 GUID입니다.

S-1-5-83-0은 'NT Virtual Machine\Virtual Machine' 그룹 ID입니다.

90 창 관리자 Windows Manager 그룹(DWM) 윈도 7 창 관리자 클래스
96 폰트 드라이버 윈도 7 글꼴 드라이버 호스트\UMFD-1

가상 계정은 고정된 클래스 이름 집합에 대해 정의되지만 계정 이름은 정의되지 않았습니다.가상 계정 내에서 사용할 수 있는 계정은 거의 무제한입니다.이름은 "Account Class\Account Name"이므로 "AppPoolIdentity\Default App Pool"과 같이 작동합니다.SID는 소문자 이름의 SHA-1 해시를 기반으로 합니다.가상 계정은 각각 개별 SID에 매핑되므로 개별적으로 권한을 부여할 수 있습니다.이것에 의해, 각 서비스가 같은 NT AUTHORITY 클래스( 「NT AUTHORITY\Network Service」등)에 할당되는 「크로스 쉐어링 권한」의 문제가 회피됩니다.

기계 SID

머신 SID(S-1-5-21)는 SECURITY\SAM\Domains\에 있는 SECURITY 레지스트리 하이브에 저장됩니다.계정, 이 키에는 두 의 값 F와 V가 있습니다.V 값은 데이터 끝(마지막 96비트)[12]에 시스템 SID가 포함된 이진 값입니다.(일부 송신원에서는, 대신에 SAM 하이브에 격납되어 있는 것을 나타내고 있습니다).백업은 SECURITY\Policy\에 있습니다.PolAcDmS\@.

NewSID는 이 SID가 표준 NT 4.0 형식(32비트 하위 권한 앞에 3개의 32비트 권한 필드가 있음)임을 보증합니다.그런 다음 NewSID는 시스템에 대해 새로운 랜덤 SID를 생성합니다.NewSID 세대는 컴퓨터 SID를 구성하는 3개의 하위 권한 값 중 96비트를 대체하는 진정한 랜덤 96비트 값을 만드는 데 많은 노력을 들입니다.

--

시스템 SID 하위 권한 형식은 도메인 SID에도 사용됩니다.이 경우 머신은 자신의 로컬 도메인으로 간주됩니다.

디코딩 머신 SID

시스템 SID는 레지스트리에 원시 바이트 형식으로 저장됩니다.이를 보다 일반적인 수치 형식으로 변환하기 위해 3개의 작은 엔디언 32비트 정수로 해석하여 10진수로 변환하고 그 사이에 하이픈을 추가합니다.

2E, 43, AC, 40, C0, 85, 38, 5D, 07, E5, 3B, 2B
1) 바이트를 3개의 섹션으로 나눕니다.
2E, 43, AC, 40 - C0, 85, 38, 5D - 07, E5, 3B, 2B
2) 각 섹션의 바이트 순서를 바꿉니다.
40, AC, 43, 2E - 5D, 38, 85, C0 - 2B, 3B, E5,07
3) 각 섹션을 10진수로 변환:
1085031214 - 1563985344 - 725345543
4) 기계 SID 프레픽스를 추가합니다.
S-1-5-21-1085031214-1563985344-725345543

기타 용도

또한 시스템 SID는 Start8과 같은 일부 무료 평가판 프로그램에서 평가판을 [citation needed]다시 시작할 수 없도록 컴퓨터를 식별하는 데 사용됩니다.

서비스 SID

서비스 SID는 Windows VistaWindows Server [13]2008에서 도입된 서비스 격리 기능입니다."제한되지 않은" SID 유형 속성을 가진 서비스에는 서비스 호스트 프로세스의 액세스 토큰에 서비스 고유의 SID가 추가됩니다.서비스 SID의 목적은 관리 오버헤드인 서비스 계정을 생성하지 않고도 단일 서비스에 대한 권한을 관리할 수 있도록 하는 것입니다.

각 서비스 SID는 다음 수식을 사용하여 서비스 이름에서 생성된 로컬 시스템 수준 SID입니다.

S-1-5-80-{SHA-1(service name in upper case encoded as UTF-16)}

sc.exe 명령어를 사용하여 임의의 서비스 SID를 생성할 수 있습니다.

이 서비스는 NT SERVICE\<service_name>(예: "NT SERVICE\dnscache")라고도 불립니다.

중복된 SID

Windows NT/2K/XP 를 실행하고 있는 컴퓨터의 워크그룹에서는, 유저가 리무버블 스토리지에 보존되어 있는 공유 파일 또는 파일에 예기치 않게 액세스 할 수 있습니다.이는 사용자 SID에 의해 유효한 권한이 결정되도록 취약한 파일에 액세스 제어 목록을 설정하여 방지할 수 있습니다.이 사용자 SID가 다른 시스템에서 복제되는 경우 동일한 SID를 가진 두 번째 시스템의 사용자가 첫 번째 시스템의 사용자가 보호한 파일에 액세스할 수 있습니다.이는 불법 복제에 일반적으로 사용되는 디스크 복제에 의해 시스템 SID가 복제될 때 자주 발생할 수 있습니다.사용자 SID는 기계 SID 및 순차적 상대 ID를 기반으로 구축됩니다.

컴퓨터가 도메인(예: Active Directory 또는 NT 도메인)에 가입되면 각 시스템에는 고유한 도메인 SID가 제공되며, 이 SID는 컴퓨터가 도메인에 들어갈 때마다 재계산됩니다.이 SID는 시스템 SID와 유사합니다.따라서 시스템이 도메인의 구성원인 경우(특히 로컬 사용자 계정이 사용되지 않는 경우) 일반적으로 SID 복제에 큰 문제가 없습니다.로컬 사용자 계정을 사용할 경우 위에서 설명한 것과 유사한 보안 문제가 발생할 수 있지만 이 문제는 도메인 사용자가 아닌 로컬 사용자가 보호하는 파일 및 리소스로 제한됩니다.

SID를 탐지하는 다른 프로그램에서는 보안에 문제가 있을 수 있지만 일반적으로 Microsoft Windows 시스템에서는 SID가 복제되어도 문제가 되지 않습니다.

마이크로소프트는 시스템 [14]SID를 변경하기 위해 Sysinternals의 일부로 Mark Russinovich의 "NewSID" 유틸리티를 제공하곤 했습니다.이 파일은 2009년 11월 2일에 폐기되어 다운로드에서 삭제되었습니다.Russinovich의 설명에 따르면 머신 SID는 네트워크 [15]액세스 게이트에 대한 책임이 없기 때문에 자신과 Windows 보안 팀 모두 중복 SID로 인해 문제가 발생할 수 있는 상황을 전혀 생각할 수 없었습니다.

현재 윈도우즈 운영 체제용 디스크 복제에 지원되는 유일한 메커니즘은 새로운 SID를 생성하는 SysPrep을 사용하는 것입니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ "In Windows, what is the SID (security identifier)?". kb.iu.edu. Retrieved 2020-09-02.
  2. ^ "Well-known security identifiers in Windows operating systems". support.microsoft.com. Retrieved 12 December 2019.
  3. ^ openspecs-office. "[MS-DTYP]: Well-Known SID Structures". docs.microsoft.com. Retrieved 2020-09-03.
  4. ^ https://msdn.microsoft.com/en-us/library/aa480244.aspx 의 「커스텀 프린서펄」섹션을 참조해 주세요.
  5. ^ "Larry Osterman's WebLog".
  6. ^ "Example impact of Microsoft Accounts on Windows APIs in Windows 8/8.1 – Windows SDK Support Team Blog". blogs.msdn.microsoft.com.
  7. ^ a b "Security identifiers". support.microsoft.com. 28 August 2021. Retrieved 2020-09-02.
  8. ^ a b "Some SIDs do not resolve into friendly names". support.microsoft.com. 24 September 2021. Retrieved 2020-09-02.
  9. ^ lastnameholiu. "Capability SID Constants (Winnt.h) - Win32 apps". docs.microsoft.com. Retrieved 2020-09-02.
  10. ^ "Accounts Everywhere: part 1, Virtual Accounts". 1E. 2017-11-24. Retrieved 2020-09-02.
  11. ^ "IIS AppPool Identity SIDs". winterdom. 2020-09-02.{{cite web}}: CS1 maint :url-status (링크)
  12. ^ "MS TechNet NewSID Utility - How It Works". Knowledge Base. Microsoft. November 1, 2006. Retrieved 2008-08-05.
  13. ^ "Windows Service Isolation Feature". Article. Windows IT Pro. June 6, 2012. Retrieved December 7, 2012.
  14. ^ "NewSID v4.10". Windows Sysinternals. Microsoft. 2006-11-01.
  15. ^ Russinovich, Mark (2009-11-03). "The Machine SID Duplication Myth". TechNet Blogs. Microsoft.

외부 링크