mirror of
https://github.com/MicrosoftDocs/windows-itpro-docs.git
synced 2025-06-20 21:03:42 +00:00
Updated existing pages and merged others
1. Added missing event tags from event-tag-explanations. 2. Corrected MD errors in event-tags and event-id files. 3. Added missing event tag to combined event-id-and-tag file and ensured there are no MD errors. 4. Edited WDAC and AppLocker overview file for grammar. 5. Combined audit WDAC policies file with enforce WDAC policies file. 6. Updated TOC2, which will replace the main TOC.
This commit is contained in:
@ -106,8 +106,8 @@ landingContent:
|
||||
- linkListType: how-to-guide
|
||||
links:
|
||||
- text: Querying using advanced hunting
|
||||
url: querying-application-control-events-centrally-using-advanced-hunting.md #same as above
|
||||
url: querying-application-control-events-centrally-using-advanced-hunting.md
|
||||
- linkListType: tutorial
|
||||
links:
|
||||
- text: Creating a policy from event logs (video)
|
||||
url: querying-application-control-events-centrally-using-advanced-hunting.md #Jordan will create a video for this
|
||||
url: #Jordan will create a video for this
|
@ -19,7 +19,7 @@ ms.date: 05/03/2021
|
||||
ms.technology: mde
|
||||
---
|
||||
|
||||
# Use audit events to create WDAC policy rules
|
||||
## Use audit events to create WDAC policy rules and Convert **base** policy from audits to enforced
|
||||
|
||||
**Applies to:**
|
||||
|
||||
@ -75,8 +75,6 @@ To familiarize yourself with creating WDAC rules from audit events, follow these
|
||||
|
||||
8. Convert the Base or Supplemental policy to binary and deploy using your preferred method.
|
||||
|
||||
|
||||
|
||||
## Convert WDAC **base** policy from audit to enforced
|
||||
|
||||
As described in [common WDAC deployment scenarios](types-of-devices.md), we'll use the example of **Lamna Healthcare Company (Lamna)** to illustrate this scenario. Lamna is attempting to adopt stronger application policies, including the use of application control to prevent unwanted or unauthorized applications from running on their managed devices.
|
||||
@ -155,9 +153,9 @@ Since the enforced policy was given a unique PolicyID in the previous procedure,
|
||||
$EnforcedSuppPolicyBinary = $env:USERPROFILE+"\Desktop\"+$SupplementalPolicyName+"_"+$SupplementalPolicyID+".xml"
|
||||
ConvertFrom-CIPolicy $EnforcedSupplementalPolicy $EnforcedSuppPolicyBinary
|
||||
```
|
||||
|
||||
4. Repeat the steps above if you have other supplemental policies to update.
|
||||
|
||||
## Deploy your enforced policy and supplemental policies
|
||||
|
||||
Now that your base policy is in enforced mode, you can begin to deploy it to your managed endpoints. For information about deploying policies, see [Deploying Windows Defender Application Control (WDAC) policies](windows-defender-application-control-deployment-guide.md).
|
||||
|
||||
|
@ -19,15 +19,15 @@ ms.date: 5/7/2021
|
||||
ms.technology: mde
|
||||
---
|
||||
|
||||
# Understanding Application Control event IDs and tags
|
||||
## Understanding Application Control event IDs and tags
|
||||
|
||||
A Windows Defender Application Control (WDAC) policy logs events locally in Windows Event Viewer in either enforced or audit mode. These events include a number of fields, which provide helpful troubleshooting information to figure out exactly what an event means.
|
||||
|
||||
These events are generated under two locations:
|
||||
|
||||
- Event IDs beginning with 30 appear in Applications and Services logs – Microsoft – Windows – CodeIntegrity – Operational
|
||||
- Event IDs beginning with 30 appear in Applications and Services logs | Microsoft | Windows | CodeIntegrity | Operational
|
||||
|
||||
- Event IDs beginning with 80 appear in Applications and Services logs – Microsoft – Windows – AppLocker – MSI and Script
|
||||
- Event IDs beginning with 80 appear in Applications and Services logs | Microsoft | Windows | AppLocker | MSI and Script
|
||||
|
||||
## Microsoft Windows CodeIntegrity Operational log event IDs
|
||||
|
||||
@ -35,7 +35,7 @@ These events are generated under two locations:
|
||||
|----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| 3076 | Audit executable/dll file |
|
||||
| 3077 | Block executable/dll file |
|
||||
| 3089 | Signing information event correlated with either a 3076 or 3077 event. One 3089 event is generated for each signature of a file. Contains the total number of signatures on a file and an index as to which signature it is.<br>Unsigned files will generate a single 3089 event with TotalSignatureCount 0. Correlated in the "System" portion of the event data under "Correlation ActivityID". |
|
||||
| 3089 | Signing information event correlated with either a 3076 or 3077 event. One 3089 event is generated for each signature of a file. Contains the total number of signatures on a file and an index as to which signature it is. Unsigned files will generate a single 3089 event with TotalSignatureCount 0. Correlated in the "System" portion of the event data under "Correlation ActivityID". |
|
||||
| 3099 | Indicates that a policy has been loaded |
|
||||
|
||||
## Microsoft Windows Applocker MSI and Script log event IDs
|
||||
@ -48,7 +48,7 @@ These events are generated under two locations:
|
||||
|
||||
## Optional Intelligent Security Graph (ISG) or Managed Installer (MI) diagnostic events
|
||||
|
||||
If either the ISG or MI is enabled in a WDAC policy, you can optionally choose to enable 3090, 3091, and 3092 events to provide additional diagnostic information.
|
||||
If either the ISG or MI is enabled in a WDAC policy, you can optionally choose to enable 3090, 3091, and 3092 events to provide additional diagnostic information.
|
||||
|
||||
| Event ID | Explanation |
|
||||
|----------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
@ -84,9 +84,7 @@ In order to enable 3090 allow events as well as 3091 and 3092 events, you must i
|
||||
```powershell
|
||||
reg add hklm\system\currentcontrolset\control\ci -v TestFlags -t REG_DWORD -d 0x300
|
||||
```
|
||||
|
||||
<br />
|
||||
|
||||
|
||||
## Event Tags
|
||||
|
||||
Below, we have documented the values and meanings for a few useful event tags.
|
||||
@ -100,6 +98,7 @@ Represents the type of signature which verified the image.
|
||||
| 0 | Unsigned or verification has not been attempted |
|
||||
| 1 | Embedded signature |
|
||||
| 2 | Cached signature; presence of CI EA shows that file had been previously verified |
|
||||
| 3 | Cached catalog verified via Catalog Database or searching catalog directly |
|
||||
| 4 | Un-cached catalog verified via Catalog Database or searching catalog directly |
|
||||
| 5 | Successfully verified using an EA that informs CI which catalog to try first |
|
||||
|6 | AppX / MSIX package catalog verified |
|
||||
@ -131,14 +130,20 @@ Represents why verification failed, or if it succeeded.
|
||||
| VerificationError Value | Explanation |
|
||||
|----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| 0 | Successfully verified signature |
|
||||
| 1 | File has an invalid hash |
|
||||
| 2 | File contains shared writable sections |
|
||||
| 3 | File is not signed|
|
||||
| 4 | Revoked signature |
|
||||
| 5 | Expired signature |
|
||||
| 6 | File is signed using a weak hashing algorithm which does not meet the minimum policy |
|
||||
| 7 | Invalid root certificate |
|
||||
| 8 | Signature was unable to be validated; generic error |
|
||||
| 9 | Signing time not trusted |
|
||||
| 10 | The file must be signed using page hashes for this scenario |
|
||||
| 11 | Page hash mismatch |
|
||||
| 12 | Not valid for a PPL (Protected Process Light) |
|
||||
| 13 | Not valid for a PP (Protected Process) |
|
||||
| 14 | The signature is missing the required ARM EKU |
|
||||
| 15 | Failed WHQL check |
|
||||
| 16 | Default policy signing level not met |
|
||||
| 17 | Custom policy signing level not met; returned when signature doesn't validate against an SBCP-defined set of certs |
|
||||
@ -149,5 +154,7 @@ Represents why verification failed, or if it succeeded.
|
||||
| 22 | Not IUM (Isolated User Mode) signed; indicates trying to load a non-trustlet binary into a trustlet |
|
||||
| 23 | Invalid image hash |
|
||||
| 24 | Flight root not allowed; indicates trying to run flight-signed code on production OS |
|
||||
| 25 | Anti-cheat policy violation |
|
||||
| 26 | Explicitly denied by WADC policy |
|
||||
| 27 | The signing chain appears to be tampered/invalid |
|
||||
| 28 | Resource page hash mismatch |
|
||||
|
@ -18,13 +18,13 @@ ms.date: 3/17/2020
|
||||
ms.technology: mde
|
||||
---
|
||||
|
||||
# Understanding Application Control events
|
||||
## Understanding Application Control events
|
||||
|
||||
A Windows Defender Application Control (WDAC) policy logs events locally in Windows Event Viewer in either enforced or audit mode. These events are generated under two locations:
|
||||
|
||||
- Event IDs beginning with 30 appear in Applications and Services logs – Microsoft – Windows – CodeIntegrity – Operational
|
||||
- Event IDs beginning with 30 appear in Applications and Services logs | Microsoft | Windows | CodeIntegrity | Operational
|
||||
|
||||
- Event IDs beginning with 80 appear in Applications and Services logs – Microsoft – Windows – AppLocker – MSI and Script
|
||||
- Event IDs beginning with 80 appear in Applications and Services logs | Microsoft | Windows | AppLocker | MSI and Script
|
||||
|
||||
## Microsoft Windows CodeIntegrity Operational log event IDs
|
||||
|
||||
@ -32,7 +32,7 @@ A Windows Defender Application Control (WDAC) policy logs events locally in Wind
|
||||
|----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| 3076 | Audit executable/dll file |
|
||||
| 3077 | Block executable/dll file |
|
||||
| 3089 | Signing information event correlated with either a 3076 or 3077 event. One 3089 event is generated for each signature of a file. Contains the total number of signatures on a file and an index as to which signature it is.<br>Unsigned files will generate a single 3089 event with TotalSignatureCount 0. Correlated in the "System" portion of the event data under "Correlation ActivityID". |
|
||||
| 3089 | Signing information event correlated with either a 3076 or 3077 event. One 3089 event is generated for each signature of a file. Contains the total number of signatures on a file and an index as to which signature it is. Unsigned files will generate a single 3089 event with TotalSignatureCount 0. Correlated in the "System" portion of the event data under "Correlation ActivityID". |
|
||||
| 3099 | Indicates that a policy has been loaded |
|
||||
|
||||
## Microsoft Windows Applocker MSI and Script log event IDs
|
||||
@ -45,7 +45,7 @@ A Windows Defender Application Control (WDAC) policy logs events locally in Wind
|
||||
|
||||
## Optional Intelligent Security Graph (ISG) or Managed Installer (MI) diagnostic events
|
||||
|
||||
If either the ISG or MI is enabled in a WDAC policy, you can optionally choose to enable 3090, 3091, and 3092 events to provide additional diagnostic information.
|
||||
If either the ISG or MI is enabled in a WDAC policy, you can optionally choose to enable 3090, 3091, and 3092 events to provide additional diagnostic information.
|
||||
|
||||
| Event ID | Explanation |
|
||||
|----------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
@ -75,7 +75,7 @@ In order to enable 3091 audit events and 3092 block events, you must create a Te
|
||||
```powershell
|
||||
reg add hklm\system\currentcontrolset\control\ci -v TestFlags -t REG_DWORD -d 0x100
|
||||
```
|
||||
|
||||
|
||||
In order to enable 3090 allow events as well as 3091 and 3092 events, you must instead create a TestFlags regkey with a value of 0x300. You can do so using the following PowerShell command:
|
||||
|
||||
```powershell
|
||||
|
@ -18,7 +18,7 @@ ms.date: 8/27/2020
|
||||
ms.technology: mde
|
||||
---
|
||||
|
||||
# Understanding Application Control event tags
|
||||
## Understanding Application Control event tags
|
||||
|
||||
Windows Defender Application Control (WDAC) events include a number of fields which provide helpful troubleshooting information to figure out exactly what an event means. Below, we have documented the values and meanings for a few useful event tags.
|
||||
|
||||
@ -31,9 +31,10 @@ Represents the type of signature which verified the image.
|
||||
| 0 | Unsigned or verification has not been attempted |
|
||||
| 1 | Embedded signature |
|
||||
| 2 | Cached signature; presence of CI EA shows that file had been previously verified |
|
||||
| 3 | Cached catalog verified via Catalog Database or searching catalog directly |
|
||||
| 4 | Un-cached catalog verified via Catalog Database or searching catalog directly |
|
||||
| 5 | Successfully verified using an EA that informs CI which catalog to try first |
|
||||
|6 | AppX / MSIX package catalog verified |
|
||||
| 6 | AppX / MSIX package catalog verified |
|
||||
| 7 | File was verified |
|
||||
|
||||
## ValidatedSigningLevel
|
||||
@ -62,14 +63,20 @@ Represents why verification failed, or if it succeeded.
|
||||
| VerificationError Value | Explanation |
|
||||
|----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| 0 | Successfully verified signature |
|
||||
| 1 | File has an invalid hash |
|
||||
| 2 | File contains shared writable sections |
|
||||
| 3 | File is not signed|
|
||||
| 4 | Revoked signature |
|
||||
| 5 | Expired signature |
|
||||
| 6 | File is signed using a weak hashing algorithm which does not meet the minimum policy |
|
||||
| 7 | Invalid root certificate |
|
||||
| 8 | Signature was unable to be validated; generic error |
|
||||
| 9 | Signing time not trusted |
|
||||
| 10 | The file must be signed using page hashes for this scenario |
|
||||
| 11 | Page hash mismatch |
|
||||
| 12 | Not valid for a PPL (Protected Process Light) |
|
||||
| 13 | Not valid for a PP (Protected Process) |
|
||||
| 14 | The signature is missing the required ARM EKU |
|
||||
| 15 | Failed WHQL check |
|
||||
| 16 | Default policy signing level not met |
|
||||
| 17 | Custom policy signing level not met; returned when signature doesn't validate against an SBCP-defined set of certs |
|
||||
@ -80,5 +87,7 @@ Represents why verification failed, or if it succeeded.
|
||||
| 22 | Not IUM (Isolated User Mode) signed; indicates trying to load a non-trustlet binary into a trustlet |
|
||||
| 23 | Invalid image hash |
|
||||
| 24 | Flight root not allowed; indicates trying to run flight-signed code on production OS |
|
||||
| 25 | Anti-cheat policy violation |
|
||||
| 26 | Explicitly denied by WADC policy |
|
||||
| 27 | The signing chain appears to be tampered/invalid |
|
||||
| 28 | Resource page hash mismatch |
|
||||
|
@ -19,18 +19,18 @@ ms.custom: asr
|
||||
ms.technology: mde
|
||||
---
|
||||
|
||||
# Windows Defender Application Control and AppLocker Overview
|
||||
## Windows Defender Application Control and AppLocker Overview
|
||||
|
||||
**Applies to:**
|
||||
|
||||
- Windows 10
|
||||
- Windows Server 2016 and above
|
||||
|
||||
Windows 10 includes two technologies that can be used for application control depending on your organization's specific scenarios and requirements: Windows Defender Application Control (WDAC) and AppLocker.
|
||||
Windows 10 includes two technologies that can be used for application control, depending on your organization's specific scenarios and requirements: Windows Defender Application Control (WDAC) and AppLocker.
|
||||
|
||||
## Windows Defender Application Control
|
||||
|
||||
WDAC was introduced with Windows 10 and allows organizations to control which drivers and applications are allowed to run on their Windows 10 clients. WDAC was designed as a security feature under the [servicing criteria](https://www.microsoft.com/msrc/windows-security-servicing-criteria) defined by the Microsoft Security Response Center (MSRC).
|
||||
WDAC was introduced with Windows 10 and allows organizations to control which drivers and applications are allowed to run on their Windows 10 clients. It was designed as a security feature under the [servicing criteria](https://www.microsoft.com/msrc/windows-security-servicing-criteria), defined by the Microsoft Security Response Center (MSRC).
|
||||
|
||||
WDAC policies apply to the managed computer as a whole and affects all users of the device. WDAC rules can be defined based on:
|
||||
|
||||
@ -41,21 +41,21 @@ WDAC policies apply to the managed computer as a whole and affects all users of
|
||||
- The [path from which the app or file is launched](select-types-of-rules-to-create.md#more-information-about-filepath-rules) (beginning with Windows 10 version 1903)
|
||||
- The process that launched the app or binary
|
||||
|
||||
Note that prior to Windows 10, version 1709, Windows Defender Application Control was known as configurable code integrity (CCI). WDAC was also one of the features which comprised the now-defunct term 'Device Guard'.
|
||||
Note that prior to Windows 10 version 1709, Windows Defender Application Control was known as configurable code integrity (CCI). WDAC was also one of the features that comprised the now-defunct term "Device Guard."
|
||||
|
||||
### WDAC System Requirements
|
||||
|
||||
WDAC policies can be created on any client edition of Windows 10 build 1903+ or on Windows Server 2016 and above.
|
||||
WDAC policies can be created on any client edition of Windows 10 build 1903+, or on Windows Server 2016 and above.
|
||||
|
||||
WDAC policies can be applied to devices running any edition of Windows 10 or Windows Server 2016 and above via a Mobile Device Management (MDM) solution like Intune, a management interface like Configuration Manager, or a script host like PowerShell. Group Policy can also be used to deploy WDAC policies to Windows 10 Enterprise edition or Windows Server 2016 and above, but cannot deploy policies to devices running non-Enterprise SKUs of Windows 10.
|
||||
WDAC policies can be applied to devices running any edition of Windows 10, or Windows Server 2016 and above, via a Mobile Device Management (MDM) solution, e.g. Intune; a management interface, e.g. Configuration Manager; or a script host, e.g. PowerShell. Group Policy can also be used to deploy WDAC policies to Windows 10 Enterprise edition, or Windows Server 2016 and above, but cannot deploy policies to devices running non-Enterprise SKUs of Windows 10.
|
||||
|
||||
For more information on which individual WDAC features are available on which WDAC builds, see [WDAC feature availability](feature-availability.md).
|
||||
For more information on which individual WDAC features are available on specific WDAC builds, see [WDAC feature availability](feature-availability.md).
|
||||
|
||||
## AppLocker
|
||||
|
||||
AppLocker was introduced with Windows 7 and allows organizations to control which applications are allowed to run on their Windows clients. AppLocker helps to prevent end users from running unapproved software on their computers, but it does not meet the servicing criteria for being a security feature.
|
||||
AppLocker was introduced with Windows 7, and allows organizations to control which applications are allowed to run on their Windows clients. AppLocker helps to prevent end-users from running unapproved software on their computers but does not meet the servicing criteria for being a security feature.
|
||||
|
||||
AppLocker policies can apply to all users on a computer or to individual users and groups. AppLocker rules can be defined based on:
|
||||
AppLocker policies can apply to all users on a computer, or to individual users and groups. AppLocker rules can be defined based on:
|
||||
|
||||
- Attributes of the codesigning certificate(s) used to sign an app and its binaries
|
||||
- Attributes of the app's binaries that come from the signed metadata for the files, such as Original Filename and version, or the hash of the file
|
||||
@ -68,13 +68,13 @@ AppLocker policies can be deployed using Group Policy or MDM.
|
||||
|
||||
## Choose when to use WDAC or AppLocker
|
||||
|
||||
Generally, it is recommended that customers who are able to implement application control using WDAC rather than AppLocker do so. WDAC is undergoing continual improvements and will be getting added support from Microsoft management platforms. Although AppLocker will continue to receive security fixes, it will not undergo new feature improvements.
|
||||
Generally, it is recommended that customers, who are able to implement application control using WDAC rather than AppLocker, do so. WDAC is undergoing continual improvements, and will be getting added support from Microsoft management platforms. Although AppLocker will continue to receive security fixes, it will not undergo new feature improvements.
|
||||
|
||||
In some cases, however, AppLocker may be the more appropriate technology for your organization. AppLocker is best when:
|
||||
However, in some cases, AppLocker may be the more appropriate technology for your organization. AppLocker is best when:
|
||||
|
||||
- You have a mixed Windows operating system (OS) environment and need to apply the same policy controls to Windows 10 and earlier versions of the OS.
|
||||
- You need to apply different policies for different users or groups on shared computers.
|
||||
- You do not want to enforce application control on application files such as DLLs or drivers.
|
||||
|
||||
AppLocker can also be deployed as a complement to WDAC to add user- or group-specific rules for shared device scenarios where it is important to prevent some users from running specific apps.
|
||||
AppLocker can also be deployed as a complement to WDAC to add user or group-specific rules for shared device scenarios, where it is important to prevent some users from running specific apps.
|
||||
As a best practice, you should enforce WDAC at the most restrictive level possible for your organization, and then you can use AppLocker to further fine-tune the restrictions.
|
||||
|
Reference in New Issue
Block a user