Skip to content

Commit ad49542

Browse files
committed
remove image that has security issues, some minor edits
1 parent 2bc0d19 commit ad49542

File tree

2 files changed

+11
-15
lines changed

2 files changed

+11
-15
lines changed

docs/windows/media/windows-events.png

-355 KB
Binary file not shown.

docs/windows/redist-version-auditing.md

Lines changed: 11 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: "How to audit Visual C++ Runtime version usage"
33
description: "A detailed guide for auditing Visual C++ Runtime file usage."
4-
ms.date: 12/2/2024
4+
ms.date: 1/27/2025
55
helpviewer_keywords:
66
[
77
"find redist version installed",
@@ -19,18 +19,16 @@ For more information about the versions of VC Runtime that are no longer support
1919

2020
## Enable NTFS file auditing to determine VC Runtime usage
2121

22-
You can use NTFS file auditing to determine which applications are calling the unsupported versions of the VC Runtime.
23-
24-
This guide provides the steps to manually enable NTFS file auditing and review audit events. Because there are several files that can be used by an application, this guide also shows how to use PowerShell's [`Get-Acl`](/powershell/module/microsoft.powershell.security/get-acl) and [`Set-Acl`](/powershell/module/microsoft.powershell.security/set-acl) cmdlets to update auditing permissions. For more information about how to configure audit policies for a file, see [Apply a basic audit policy on a file or folder](/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/apply-a-basic-audit-policy-on-a-file-or-folder).
22+
This guide provides the steps to manually enable NTFS file auditing and review audit events to determine which applications are calling the unsupported versions of the VC Runtime. Because there are several files that can be used by an application, this guide also shows how to use PowerShell's [`Get-Acl`](/powershell/module/microsoft.powershell.security/get-acl) and [`Set-Acl`](/powershell/module/microsoft.powershell.security/set-acl) cmdlets to update auditing permissions. For more information about how to configure audit policies for a file, see [Apply a basic audit policy on a file or folder](/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/apply-a-basic-audit-policy-on-a-file-or-folder).
2523

2624
### Manually enable object access auditing on the system
2725

2826
Object access must be enabled before you enable file level auditing:
2927

30-
1. Open the Local Group Policy Editor by pressing Windows + R to open the **Run** dialog, then type `gpedit.msc`, and press Enter.
28+
1. Open the **Local Group Policy Editor** by pressing `Windows` + `R` to open the **Run** dialog. Then type `gpedit.msc` and press **Enter**.
3129
1. Navigate to **Computer Configuration** > **Windows Settings** > **Security Settings** > **Advanced Audit Policy Configuration** > **System Audit Policies** > **Object Access**.
3230
1. Double-click **Audit File System**. In the **Audit File System Properties** dialog, select **Configure the following audit events** > **Success** > **OK**.
33-
1. Close the Group Policy Editor.
31+
1. Close the **Local Group Policy Editor**.
3432

3533
Alternatively, you may use `auditpol.exe` to enable object access:
3634

@@ -39,7 +37,7 @@ Alternatively, you may use `auditpol.exe` to enable object access:
3937

4038
### Manually enable auditing on a file
4139

42-
To monitor which process accesses a VC Runtime file, enable auditing on the file:
40+
To monitor which process accesses a VC Runtime file, enable auditing on the VC Runtime file:
4341

4442
1. Right-click the file that you want to audit, select **Properties**, and then select the **Security** tab. For more information about finding installed VC Runtime files, see [VC Runtime installed locations](#vcruntime_install_location).
4543
1. Select **Advanced**.
@@ -54,19 +52,17 @@ The audit rule is now enabled for the file.
5452

5553
### Manually review audit logs
5654

57-
NTFS file auditing generates ["Event 4663: An attempt was made to access an object"](/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/event-4663) for each file that includes the audit permission and that is accessed by a process.
55+
NTFS file auditing generates ["Event 4663: An attempt was made to access an object"](/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/event-4663) for each file that includes the audit permission and is accessed by a process.
5856

59-
1. Open the Event Viewer by pressing `Windows` + `R` to open the **Run** dialog. Then type `eventvwr.msc`, and press Enter.
60-
1. Navigate to the **Security** logs in the Event Viewer by expanding **Windows Logs** > **Security**. The results pane lists security events.
57+
1. Open the **Event Viewer** by pressing `Windows` + `R` to open the **Run** dialog. Then type `eventvwr.msc`, and press **Enter**.
58+
1. Navigate to the **Security** logs in the **Event Viewer** by expanding **Windows Logs** > **Security**. The results pane lists security events.
6159
1. Find the audit events by choosing **Filter Current Log...** in the **Actions** pane. Narrow down the events to **Event ID 4663 (Audit Success for the File System Category)** by entering **4663 into the Includes/Excludes Event IDs** text box.
6260

6361
For an example of a File Access Auditing Event 4663, see ["4663(S): An attempt was made to access an object."](/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/event-4663)
6462

65-
![Event Viewer showing security logs](media/windows-events.png)
66-
6763
### Use PowerShell to audit VC Runtime usage
6864

69-
To update File Auditing Permissions with PowerShell:
65+
As an overview, updating File Auditing Permissions with PowerShell follows these steps:
7066

7167
1. Define the [file system audit rule](/dotnet/api/system.security.accesscontrol.filesystemauditrule.-ctor) to apply to the file(s).
7268
1. Obtain a file's security descriptor with [`Get-Acl`](/powershell/module/microsoft.powershell.security/get-acl).
@@ -125,7 +121,7 @@ ForEach-Object {
125121

126122
### PowerShell: View file audit events
127123

128-
PowerShell provides `Get-WinEvent` to obtain event records for various event logs as shown in the following PowerShell code which lists all of the Auditing Event 4663 records over the past 24 hours:
124+
PowerShell provides `Get-WinEvent` to get event records for various event logs as shown in the following PowerShell code that lists all of the Auditing Event 4663 records over the past 24 hours:
129125

130126
```powershell
131127
function Get-AuditEntries {
@@ -182,7 +178,7 @@ Some Microsoft applications require legacy versions of the VC Runtime. For detai
182178

183179
## VC Runtime installation locations
184180

185-
The following is where each version of the VC Runtime is installed.
181+
Here is where each version of the VC Runtime is installed:
186182

187183
| **Visual Studio Version**| **Installed Location(s)**|
188184
| ------------- | ------------- |

0 commit comments

Comments
 (0)