The CVE-2023-5174 vulnerability has been identified as a potentially dangerous bug affecting Mozilla's Firefox browser running on Windows under non-standard configurations (such as using runas). The issue arises from an error in the handle duplication process during process creation, leading to a double-free situation and a potential use-after-free, resulting in a potentially exploitable crash. This post will discuss the vulnerability, offer a code snippet demonstrating the issue, and provide links to original references and resources exploring the exploit's details.

Understanding CVE-2023-5174

The CVE-2023-5174 vulnerability occurs when creating a sandbox for Firefox on Windows operating systems. During the creation process, due to a failure in duplicating a handle, a pointer is freed twice, resulting in a use-after-free scenario. This bug has a high potential for causing an exploitable crash, compromising the integrity of the system and opening gates for malicious users to execute arbitrary code.

Code Snippet

The following code snippet demonstrates a simplified version of the handle duplication process, in which the issue may arise:

#include <windows.h>
#include <stdio.h>

int main() {
  HANDLE hProcess = GetCurrentProcess();
  HANDLE hDestinationProcess = ...;
  HANDLE hNewHandle;
  
  BOOL bResult = DuplicateHandle(hProcess, hProcess, hDestinationProcess, &hNewHandle, , FALSE, DUPLICATE_SAME_ACCESS);
  
  if (bResult == ) {
    // Error occurred during duplication
    printf("Unable to duplicate handle\n");
    CloseHandle(hDestinationProcess);
    CloseHandle(hNewHandle);
    
    // Free the pointer twice, leading to double-free vulnerability
    free(hNewHandle);
    free(hNewHandle);
    
    return 1;
  } else {
    printf("Handle duplication successful.\n");
    return ;
  }
}

Affected Versions

The vulnerability affects Firefox versions earlier than 118, Firefox ESR versions earlier than 115.3, and Thunderbird versions earlier than 115.3. Users running these affected versions on Windows should update their software to the latest versions to prevent exploitation of this vulnerability.

1. Mozilla Foundation Security Advisory 2023-06 – Provides information about the vulnerability, affected software, and the versions containing the fix.
2. CVE-2023-5174 Details – Comprehensive information on the Common Vulnerabilities and Exposures (CVE) entry for this vulnerability.
3. Mozilla Developer Network: Firefox 118 Release Notes – Offers information about the updates in Firefox, including the fix for this vulnerability.

Conclusion

The CVE-2023-5174 vulnerability poses a potential risk to the security and stability of systems running Firefox on Windows with non-standard configurations. By understanding the issue and applying the necessary updates, users can mitigate the risk of exploitation and ensure a safer browsing experience.

Timeline

Published on: 09/27/2023 15:19:42 UTC
Last modified on: 09/29/2023 14:19:44 UTC