아무도 로그인하지 않은 경우 어떤 Windows 계정이 사용됩니까?


25

Windows에 아무도 로그인하지 않은 경우 (로그인 화면이 표시됨) 현재 프로세스를 실행중인 사용자는 누구입니까? (비디오 / 사운드 드라이버, 로그인 세션, 모든 서버 소프트웨어, 접근성 제어 등. 아무도 로그인하지 않았기 때문에 사용자 또는 이전 사용자가 될 수 없습니다. 사용자가 시작했지만 계속 진행하는 프로세스는 어떻습니까? 로그 오프 후 실행 (예 : HTTP, FTP 서버 및 기타 네트워킹 관련 항목) SYSTEM 계정으로 전환합니까 사용자가 시작한 프로세스가 SYSTEM으로 전환되면 이는 매우 심각한 취약점을 나타냅니다. 로그 오프 한 후에도 해당 사용자로 계속 실행 하시겠습니까?

이것이 SETHC 해킹을 통해 CMD를 SYSTEM으로 사용할 수있는 이유는 무엇입니까?


"사용자 전환"은 실제로 Windows에서 흑백 작업이 아닙니다. 서비스는 여러 사용자를 동시에 가장 할 수 있으며 원래 계정도 계속 사용할 수 있습니다. 인증 된 웹 사이트 방문자와 같이 특정 사용자를 대신하여 행동해야하는 서비스에 유용합니다.
MSalters

3
Windows는 다중 사용자 운영 체제이므로 서로 다른 프로세스가 동시에 다른 사용자에게 속할 수 있습니다 . 전체 컴퓨터에 로그인하면 계정에 "전환"되지 않습니다.
el.pescado

답변:


40

Windows에 아무도 로그인하지 않은 경우 (로그인 화면이 표시됨) 현재 프로세스를 실행중인 사용자는 누구입니까? (비디오 / 사운드 드라이버, 로그인 세션, 모든 서버 소프트웨어, 접근성 제어 등

거의 모든 드라이버가 커널 모드 에서 실행 됩니다. 사용자 공간 프로세스를 시작하지 않으면 계정이 필요하지 않습니다. 소수의 사용자 공간 드라이버는 SYSTEM에서 실행됩니다.

로그인 세션, 지금 확인할 수는 없지만 SYSTEM도 사용하고 있다고 확신합니다. Processn Hacker 또는 SysInternals ProcExp 에서 logonui.exe를 볼 수 있습니다 . 사실, 모든 것을 그렇게 볼 수 있습니다 .

"서버 소프트웨어"는 아래의 Windows 서비스를 참조하십시오.

사용자가 시작했지만 로그 오프 후에도 계속 실행되는 프로세스는 어떻습니까? (예 : HTTP, FTP 서버 및 기타 네트워킹) 그들은 SYSTEM 계정으로 전환합니까?

여기에는 세 가지 종류가 있습니다.

  1. 평범한 오래된 "배경"프로세스. 이들은 시작한 사람과 동일한 계정으로 실행되며 로그 오프 후에 실행 되지 않습니다 . 로그 오프 프로세스는 모두 종료합니다.

    "HTTP, FTP 서버 및 기타 네트워킹 항목" 일반적인 백그라운드 프로세스로 실행 되지 않습니다 . 그들은 서비스로 운영됩니다.

  2. Windows "서비스"프로세스. 직접 시작하지 않고 Service Manager를 통해 시작합니다. 기본적으로 서비스는 전용 계정을 구성 할 수 있지만 LocalSystem (isanae는 SYSTEM이라고 함)으로 실행됩니다.

    (물론, 실제로 아무도 귀찮게하지 않습니다. XAMPP 또는 WampServer 또는 다른 쓰레기를 설치하고 영원히 패치되지 않은 SYSTEM으로 실행하게합니다.)

    최근 Windows 시스템에서는 서비스에 자체 SID 가있을 수 있다고 생각 하지만 아직까지는 많이 연구하지 않았습니다.

  3. 예약 된 일들. 이들은 "배경에서" "작업 스케줄러"서비스에 의해 시작되며 항상 작업에 구성된 계정 (보통 작업을 만든 사람)에서 실행됩니다.

사용자가 시작한 프로세스가 SYSTEM으로 전환되면 이는 매우 심각한 취약점을 나타냅니다

서비스를 설치 하려면 이미 관리자 권한 이 있어야하므로 취약점이 아닙니다 . 관리자 권한이 있으면 실제로 모든 것을 할 수 있습니다.

( 같은 종류의 다른 여러 가지 비 취약성 참조 )



2
IIS 프로세스 대부분은 IIS 프로세스를 위해 특별히 만들어진 낮은 권한의 계정으로 실행된다는 점에 주목할 가치가 있습니다. (여기에는 많은 Windows HTTP, FTP 등 서버가 포함됩니다.) 자세한 내용은 여기 를 참조 하십시오 . 따라서 종종 사용중인 프로그램의 기본값에 따라 다릅니다.
jpmc26

1
SYSTEM과 로컬 관리자는 기본적으로 하나이며 동일합니다. 하나가 있으면 다른 하나를 얻을 수 있으며 OS는 주로 실수를 방지하기위한로드 블록 만 설치합니다. (참고 : Old New Thing 은 공식 Microsoft 문서가 아닙니다.)
CVn

3
요즘 많은 서비스가 LocalSystem이 아닌 NetworkService 또는 LocalService로 실행됩니다.
벤 Voigt

2
Windows 7 및 2008 R2부터는 관리 서비스 계정 및 가상 계정을 통해 고유 한 ID로 서비스를 실행할 수 있으므로 LocalService / NetworkService / LocalSystem을 공유하는 서비스가 많지 않으므로 하나의 서비스에 취약점이있는 경우 액세스가 제한됩니다.
afrazier

2

로그인 및 사전 로그인 프로세스는 모두 SYSTEM (LocalSystem이라고도 함)으로 실행됩니다. 실제로 일부 Windows 버전에서 SYSTEM으로 실행되는 셸 (CMD 프롬프트 등)을 얻는 한 가지 방법은 스크린 리더, 돋보기 또는 온 스크린 키보드와 같은 접근성 프로그램을 link to) CMD.EXE을 입력 한 다음 바로 가기를 사용하여 로그인하기 전에 해당 내게 필요한 옵션 기능을 활성화하십시오. 로그인 한 사용자가없고 CMDSYSTEM으로 실행중인 경우에도 명령 프롬프트 가 표시됩니다.

(참고 : 사람들은 Windows 로그인 프로세스를 무시할 수 있으므로 위험합니다. 컴퓨터를 이런 식으로 구성한 다음 그대로두면 안됩니다.)


1
\ WINDOWS \ SYSTEM32 \ : 윈도우 7 작품, C에서 cmd.exe를 가진 sethc.exe 교체

1

그들은 아무것도 "전환"하지 않습니다; 이러한 프로세스 는 현재 사용자 컨텍스트에서 실행 되지 않습니다 .
이들은 SYSTEM사용자 가 소유합니다 .

개별 사용자가 소유 한 모든 프로세스 및 서비스는 로그 아웃시 종료됩니다.
이것이 로그 아웃이 의미 하는 바입니다 .


확실하지 않습니다 ... 첫째, 직원이 응답을 수락 한 MS Technet 게시물이 로그 아웃시 서비스가 종료되지 않았다고 답변했습니다. 이것이 더 일반적으로 로그 아웃에 대한 정확한 정의인지 확실하지 않습니다. 한 사용자를 로그 아웃 한 후 ps다른 사용자로 로그 아웃 한 후에 Linux의 여러 데몬이 유지되는 것을 보았습니다.
underscore_d

1
맞지 않습니다. 서비스는 다른 사용자로 시작될 수 있으며 해당 사용자가 "로그인"하지 않고 시작되고 계속 실행됩니다. 그들은 사용자 자격 증명으로 자체 세션을 시작하므로 실제로 서비스가 실행되는 동안 사용자는 로그인되지만 데스크톱 / 자동 시작 프로그램 등은 실행되지 않으며 이는 일반 사용자가 "로그인"한 것으로 이해합니다. 여전히 서비스는 해당 사용자 자격 증명으로 실행되며 해당 사용자 파일에 액세스 할 수 있습니다.
Josef

@Josef : 당신의 주장은 "일부 사람들은 '로그인 된'이라는 용어를 잘못 사용합니다"로 요약됩니다. 귀하의 의견의 실제 내용은 본인의 답변에 동의합니다. 해당 사용자는 자신의 계정에 대해 서비스 / 프로세스가 실행 되는 한 로그인 된 것으로 간주 됩니다.
Monica와의 가벼움 경주

@LightnessRacesinOrbit 아니오, 실제 차이가 있습니다. 계정으로 서비스를 생성하고 부팅시 실행되는 경우 데스크탑을 표시하기위한 프로세스가 시작되지 않으므로 (dwm.exe 또는 explorer.exe가 실행되지 않음) 모든 자동 시작 프로그램이 작동하지 않습니다 대화식 로그인 세션이있는 경우 서비스 세션 만 실행하는 것보다 훨씬 많은 작업이 활성화됩니다. 정확히 "로그인"된 것은 토론의 여지가 있습니다. 자격 증명으로 서비스를 실행하더라도 Windows를 직접 사용하려면 로그인해야합니다!
Josef

1
"이러한 프로세스는 현재 사용자 컨텍스트에서 실행되지 않습니다"는 여전히 잘못된 것입니다. 서비스는 설정된 사용자 컨텍스트에서 실행됩니다. 기본 제공 Windows 서비스의 경우 시스템 계정 중 하나입니다. 다른 서비스의 경우 모든 계정이 될 수 있습니다. 특히 서버 소프트웨어는 새로운 사용자 계정을 생성하고 해당 자격 증명으로 실행해야합니다.
Josef
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.