VirtualBox

Ignore:
Timestamp:
May 20, 2020 12:59:16 PM (5 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
138094
Message:

SUPHardNt: FNRTCRPKCS7VERIFYCERTCALLBACK changed behaviour with r138008, adjusted code accordingly. bugref:9699

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/HostDrivers/Support/win/SUPHardenedVerifyImage-win.cpp

    r82968 r84398  
    966966     * build certificate without any second thoughts.
    967967     */
    968     if (hCertPaths == NIL_RTCRX509CERTPATHS)
    969     {
    970         if (RTCrX509Certificate_Compare(pCert, &g_BuildX509Cert) == 0) /* healthy paranoia */
    971             return VINF_SUCCESS;
    972         int rc = RTErrInfoSetF(pErrInfo, VERR_SUP_VP_NOT_BUILD_CERT_IPE, "Not valid kernel code signature (fFlags=%#x).", fFlags);
    973         if (pErrInfo)
    974         {
    975             RTErrInfoAdd(pErrInfo, rc, "\n\nExe cert:\n");
    976             RTAsn1Dump(&pCert->SeqCore.Asn1Core, 0 /*fFlags*/, 0 /*uLevel*/, supHardNtViAsn1DumpToErrInfo, pErrInfo);
    977             RTErrInfoAdd(pErrInfo, rc, "\n\nBuild cert:\n");
    978             RTAsn1Dump(&g_BuildX509Cert.SeqCore.Asn1Core, 0 /*fFlags*/, 0 /*uLevel*/, supHardNtViAsn1DumpToErrInfo, pErrInfo);
    979         }
    980         return rc;
     968    if (RTCrX509Certificate_Compare(pCert, &g_BuildX509Cert) == 0)
     969    {
     970#ifdef VBOX_STRICT
     971        Assert(RTCrX509CertPathsGetPathCount(hCertPaths) == 1);
     972        bool     fTrusted = false;
     973        uint32_t cNodes = UINT32_MAX;
     974        int      rcVerify = -1;
     975        int rc = RTCrX509CertPathsQueryPathInfo(hCertPaths, 0, &fTrusted, &cNodes, NULL, NULL, NULL, NULL, &rcVerify);
     976        AssertRC(rc); AssertRC(rcVerify); Assert(fTrusted); Assert(cNodes == 1);
     977#endif
     978        return VINF_SUCCESS;
    981979    }
    982980
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette