특정 응용 프로그램이 관리자로 실행되지 않도록 방지


13

배경

대부분의 설치 툴킷은 설치 후 외부 프로그램을 자동 또는 다른 방식으로 실행할 수 있습니다. 이것은 종종 "Show readme"또는 "프로그램 시작"과 같은 옵션을 통해 설치 프로그램에 나타납니다.

발행물

문제는 이러한 많은 설치 프로그램이 잘못 코딩되어 있으며 권한을 적절하게 삭제하지 않는다는 것입니다. 예를 들어 응용 프로그램을 자동으로 시작하거나 브라우저에서 응용 프로그램 홈페이지를 열면 설치 관리자의 관리 권한 또는 "높은"UAC 무결성 수준으로 응용 프로그램이나 브라우저가 시작되는 경우가 종종 있습니다!

이로 인해 설치된 응용 프로그램이나 웹 페이지 (및 브라우저 추가 기능)를 열어서 보안 위반을 일으킬 가능성이 있습니다.

(소프트웨어를 설치할 때 자동 실행 옵션을 선택하지 않는 것이 좋습니다.)

질문

할 수있는 방법이 있나요 방지 에서 (예 : 웹 브라우저와 같은) 특정 응용 프로그램을 이제까지 즉, 관리자 권한, 프로세스 이름을 기반으로 자동 드롭 권한으로 시작 되는?

windows  uac 

2
나는이 질문을 정말로 좋아한다. 경로, 해시 등을 기반으로 프로세스에 대한 권한을 올리는 제품이 있습니다. iexplore.exe, firefox.exe, chrome.exe 등과 같은 권한이 자동으로 떨어지는 것을보고 싶습니다.
Patrick Seymour

1
스폰 프로그램에 관리자 권한이 있다면, 당신이 생각 해낸 것을 취소하고 어쨌든 실행할 수 없었습니까? :)
Ƭᴇcʜιᴇ007

1
설치 프로그램이 "이봐, 당신은 관리자, 친구로서 우리의 홈페이지를 탐색 할 것입니다!" 이러한 권한을 지속적으로 시행했습니다. 나는 그것에 대해 알 수 있다면 그런 회사에서 소프트웨어를 구입할 것이라고 생각하지 않습니다.
패트릭 시모어

답변:


2

원칙적으로 "RUNAS"답변에 동의합니다.

하위 프로세스 인스턴스가 관리자로 실행중인 경우 자동으로 제한되는 것이 원하는 것 같습니다.

몇 가지 접근 방식이 있습니다. 그러나 오버 헤드가 성가시기 때문에 과감하고 겁 많은 관리자에게는 적합하지 않습니다. 그러나 그들은 일을 할 것입니다.

추가 요청이없는 한 접근 방식 만 표시 :

제한하려는 각 응용 프로그램에 대해 :

right click the executable and go to **PROPERTIES**
go to the **SECURITY** tab
click **ADVANCED** at the bottom
click **ADD** at the bottom
type **ADMINISTRATORS** for the name. if you have a domain then adjust appropriately
press **OK** to get the custom settings for the administrator's group
check the **DENY** checkbox next to "TRAVERSE FOLDER/ EXECUTE FILE" permission (2nd on the list)
hit OK and so-on until you've closed the properties entry for that file.

이제 관리자 그룹의 구성원은 해당 파일을 실행할 수 없습니다. 다시 돌아가서 권한을 변경하여 체크를 해제하여 실행할 수는 있지만 의도적으로 그렇게해야합니다.

또한 설치하는 동안이 문제가 걱정되므로 SYSTEM "사용자"에 대해 동일한 절차를 수행해야합니다.이 절차는 일부 설치 중에이 계정을 사용할 수 있기 때문에 관리자로도 효과적으로 실행됩니다 ( Windows "ADMIN"계정 자격 증명을 사용하여 SYSTEM 자격 증명 토큰을 얻을 수 있지만이 질문이 목표로하는 것 이상의 방법입니다.

다음은 Windows 7 에서이 작업을 수행하는 그림입니다.

여기에 이미지 설명을 입력하십시오 여기에 이미지 설명을 입력하십시오 여기에 이미지 설명을 입력하십시오 여기에 이미지 설명을 입력하십시오 여기에 이미지 설명을 입력하십시오


1

dropmyrights 또는 psexec를 사용하여 낮은 권한 수준을 달성 할 수 있어야합니다.

까다로운 부분은 설치 관리자가 응용 프로그램의 새 인스턴스를 생성 할 때 자동으로 발생하는 것 같습니다.

이를 위해서는 최소한 psexec 명령과 함께 기존 명령 앞에 모든 관련 파일 형식과 URL에 대한 파일 연결을 조정해야 할 것으로 생각됩니다.

설치 프로그램이 실행할 실행 파일을 지정하지 않고 관련 응용 프로그램으로 파일 / URL을 열려고 시도하는 한 작동합니다. 실행 파일 경로가 명시 적으로 지정되면 표준 실행 파일을 원하는 명령을 실행하는 shim 실행 파일로 바꿔야한다고 생각합니다.


1

여기서 놓친 한 가지는 Internet Explorer 및 Windows 탐색기가 레지스트리 해킹을 수행하지 않는 한 권한을 높일 수 없다는 것입니다. Firefox, Chrome 등에 대해서는 잘 모르지만 Internet Explorer를 관리자 권한으로 실행하려고하면 자격 증명을 기꺼이 수락하지만 실제로 권한을 상승 시키지는 않습니다. 이것은 Windows Vista 이상의 보안 기능입니다. 그 외에도 UAC가 적용되지 않는 유일한 방법은 사용자가 기본 제공 관리자 계정으로 로그인 한 경우입니다. 상승 된 권한으로 무언가가 설치되었다고해서 설치 프로그램이 해당 프로그램에 상승 된 권한을 부여 할 수있는 것은 아닙니다. 권한은 프로그램이 실행 된 계정에 따라 결정됩니다. 프로그램을 몰라도 높은 권한으로 프로그램을 실행할 수있는 유일한 방법은


1
RUNAS /trustlevel:<TrustLevel> program

/trustlevel       <Level> should be one of levels enumerated
                  in /showtrustlevels.
/showtrustlevels  displays the trust levels that can be used
                  as arguments to /trustlevel.

This requires an elevated command prompt.

설명 / 단계별

  1. 시작 메뉴를 열고 검색 창에 cmd를 입력하십시오.
  2. 명령 프롬프트를 마우스 오른쪽 단추로 클릭하고 관리자 권한으로 실행을 선택하십시오.

    RUNAS /showtrustlevels
    
  3. X사용하려는 신뢰 수준이 어디에서 응용 프로그램을 실행하기에 적합한 신뢰 수준을 선택하고 다음을 입력하십시오.

    RUNAS /trustlevel:X "Application target"
    

나는 이것이 효과가 없을 것이라고 생각한다. RunAs를 사용하여 결과 브라우저 창을 낮은 권한으로 실행하려면 낮은 권한으로 설치 프로그램을 실행해야합니다 (RunAs를 통해). 그렇게하면 설치 관리자가 작동하지 않을 수 있습니다.
패트릭 시모어

RUNAS / trustlevel 명령을 포함하도록 브라우저의 환경 변수를 변경하는 방식으로 수행하려는 경우 브라우저는 항상 선택한 신뢰 수준에서 시작됩니다. 높은 상황 ... 생각할 가치가있는
David McGowan

환경 변수를 변경하는 것은 약간의 미션으로, RUNAS 명령이 포함 된 실제 실행 파일에 대한 간단한 호출이 포함 된 원본을 바꾸려면 간단한 exe를 작성해야합니다. 내가 말했듯이, 약간의 임무는 브라우저 창이 시작되는 주소를 복사 한 다음 브라우저를 닫았다가 다시 시작하고 주소를 입력하는 것입니다.
David McGowan

0

나는 다른 솔루션을 조사했으며 이미 응용 프로그램 매니페스트 또는 appcompat 플래그가 작동하지 않는다고 말할 수 있습니다 (예, 실제 답변은 없지만 여전히 이것을 공유하고 싶었습니다.)

당신이 찾고있는 것에 가장 가까운 것은 소위 무결성 레벨 이며, 파일 시스템 (ACL) 내에서 설정 가능하며 프로세스가 보유하고있는 토큰에 영향을 미칩니다

문서에서는 exe가 항상 "낮은 무결성 수준"으로 실행되도록하는 방법에 대해 설명합니다.

또 다른 접근 방법은 바이러스 스캐너 또는 응용 프로그램 방화벽이 사용하는 실시간 프로세스 모니터와 같은 타사 도구 일 수는 있지만 그 방법으로 구성 할 수있는 도구는 없습니다.


2
당신은 내 대답을 무시할 수 있습니다, 방금 그 방법을 시도했지만 작동하지 않았습니다 :(
weberik

0

AppLocker를 사용할 수 있습니다.

나는 이것이 Windows 7 Enterprise, Ultimate 및 Server 2K8 이상에서 사용할 수 있다고 생각합니다. Windows 8에 대해서는 확실하지 않지만 동일한 것으로 간주합니다 (Enterprise 및 Ultimate).

그룹 정책으로 이동하여 AppLocker를 설정할 수 있습니다.

컴퓨터 구성-> Windows 설정-> 보안 설정-> 응용 프로그램 제어 정책-> AppLocker-> 실행 가능한 규칙.

마우스 오른쪽 버튼을 클릭하고 "새 규칙 만들기 ..."

여기서 선택한 사용자 또는 그룹이 특정 실행 파일을 실행하지 못하도록 차단할 수 있습니다. 예를 들어, 관리자 그룹 별 Internet Explorer 실행을 거부하도록 선택할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.