Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 1개 있습니다.)

Windows - AppLocker의 "DLL Rules"를 이용해 임의 경로에 설치한 DLL의 로딩을 막는 방법

대개의 경우 기본 설치한 시스템에서는 "Local Security Policy"의 "Security Settings" / "Application Control Policies" / "AppLocker"가 비활성화 상태입니다.

app_locker_dll_rules_1.png

그중에서도 특히 DLL의 로딩을 제어하는 "DLL Rules"는 고급 옵션으로 분리돼 "Advanced" 탭에서 별도로 활성화시켜야 하는데요.

app_locker_dll_rules_2.png

일단 활성화시키면, 다음과 같이 "AppLocker" 하위에 "DLL Rules" 노드가 보이고,

app_locker_dll_rules_3.png

"Create Default Rules" 메뉴를 통해 다음과 같이 3개의 기본 정책을 생성할 수 있습니다.

app_locker_dll_rules_4.png

또한 이런 구성으로 적용하겠다는 것을 다시 속성 창을 통해 "Enforce rules"로 설정하고,

app_locker_dll_rules_5.png

마지막으로, AppIDSvc(Application Identity) 서비스를,

Configure the Application Identity service
; https://docs.microsoft.com/en-us/windows/security/threat-protection/windows-defender-application-control/applocker/configure-the-application-identity-service

시작해 두어야 합니다.

sc.exe config AppIDSvc start= auto
net start AppIDSvc




기본 정책에 따르면, 다음의 경로 하위에 있는 DLL은 모든 사용자 계정에서 접근할 수 있지만,

  • %WINDIR%\*
  • %PROGRAMFILES%\*

그 외의 폴더에 위치한 DLL은 "Administrators" 그룹에 속한 계정만이 로딩을 할 수 있습니다. 또한, Administrators 그룹이라도 권한 상승한 경우에만 로딩할 수 있으므로 일반 사용자 계정으로는 %WINDIR%, %PROGRAMFIELS% 이외의 디렉터리에 있는 DLL은 로딩할 수가 없게 되는 것입니다.

개인적인 생각으로, 일반 사용자 시스템이 아닌, Web/DB/App 서버 등의 경우에는 안전을 위해 저 정도의 lock-down은 크게 무리가 없어 보입니다. ^^




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]






[최초 등록일: ]
[최종 수정일: 12/15/2020]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 



2021-06-21 10시14분
Case of the Application Guard Code Integrity / Windows Lockdown Policy Crash
; https://chentiangemalc.wordpress.com/2021/06/09/4163/

Get-WinEvent -LogName "Microsoft-Windows-CodeIntegrity/Operational" | Out-GridView

Looking up function documentation WldpQueryDynamicCodeTrust function (Wldp.h) – Win32 apps | Microsoft Docs we can see it states the following:
; https://docs.microsoft.com/en-us/windows/win32/devnotes/wldpquerydynamiccodetrust

WldpIsDynamicCodePolicyEnabled function
; https://docs.microsoft.com/gl-es/windows/win32/devnotes/wldpisdynamiccodepolicyenabled

Group Policy Editor or by using the Device Guard and Credential Guard hardware readiness tool
; https://www.microsoft.com/en-us/download/details.aspx?id=53337
정성태

... 166  167  168  169  170  171  172  173  174  [175]  176  177  178  179  180  ...
NoWriterDateCnt.TitleFile(s)
627정성태12/6/200823363VS.NET IDE: 58. VS.NET IDE 팁 - 커서 위치 이동 [1]
626정성태12/6/200823627오류 유형: 65. TF53018: The application tier XXXXXXX is attempting to connect to a data tier with an incompatible version
625정성태12/6/200823821오류 유형: 64. TFS 2008 SP1 설치 - MsiApplyMultiplePatches returned 0x643
624정성태12/5/200824740.NET Framework: 114. WPF 이벤트에 속한 핸들러 확인 [2]파일 다운로드1
623정성태12/4/200829103디버깅 기술: 22. VS.NET SP1 + .NET Framework 소스 코드 디버깅 [2]파일 다운로드1
622정성태12/1/200831386오류 유형: 63. WPF - XamlParseException 대응 방법 [2]
621정성태11/30/200823559Team Foundation Server: 27. TeamBuild + VDPROJ 셋업 프로젝트 [1]
620정성태11/30/200822416디버깅 기술: 21. 올바른 이벤트 예외 정보 출력
619정성태11/30/200822526디버깅 기술: 20. 예외 처리를 방해하는 WPF Modal 대화창파일 다운로드1
618정성태11/29/200822930.NET Framework: 113. 이벤트에 속한 이벤트 핸들러 확인파일 다운로드1
617정성태11/26/200828534.NET Framework: 112. How to Interop DISPPARAMS [2]파일 다운로드2
616정성태11/26/200822288디버깅 기술: 19. C++/CLI - F11 디버깅 시의 변수 초기화파일 다운로드1
615정성태11/9/200831998.NET Framework: 111. WPF - Window, UserControl 클래스 상속 [1]
614정성태11/9/200831954.NET Framework: 110. WPF - 전역 예외 처리 [4]파일 다운로드1
613정성태11/8/200821571.NET Framework: 109. WPF - SystemColors 색상표파일 다운로드1
612정성태11/1/200826826.NET Framework: 108. WPF + WCF 환경에서는 DataContract를 권장 [1]
611정성태10/31/200821151오류 유형: 62. WPF - Visual Studio 2008 비정상 종료
610정성태10/24/200823325Team Foundation Server: 26. TFS 2008 SP1 + SQL Server 2008 설치
609정성태10/24/200827051.NET Framework: 107. WPF - RadioButton 데이터 바인딩 해제 현상파일 다운로드2
608정성태10/23/200821765오류 유형: 61. TFS 연결 오류: TF31003, TF30331 오류
607정성태10/18/200819730Windows: 32. 자동 실행 경로에 ".." 가 포함된 경우
606정성태10/18/200821727.NET Framework: 106. WCF - 다중 서비스 호스트파일 다운로드1
605정성태10/18/200825179.NET Framework: 105. WPF - 닫기 버튼을 없애려면.
604정성태10/18/200825706오류 유형: 60. System.Management.ManagementException - Generic failure [1]
602정성태10/15/200827687오류 유형: 59. WPF - XAML 로딩 시 Visual Studio 비정상 종료 [1]
600정성태10/9/200832316디버깅 기술: 18. TFS Team Build + Source Server = 소스 코드 디버깅 [3]
... 166  167  168  169  170  171  172  173  174  [175]  176  177  178  179  180  ...