Core ReactOS
  1. Core ReactOS
  2. CORE-12601

Our secur32.dll misses some authentication providers (e.g. NTLM ...)

    Details

    • Type: Bug Bug
    • Status: Untriaged Untriaged
    • Priority: Major Major
    • Resolution: Unresolved
    • Fix Version/s: None
    • Component/s: Security
    • Labels:
      None

      Description

      Our secur32.dll misses some authentication providers (e.g. NTLM ...). This blocks, in particular, a step in the Word 2010 installation to succeed.
      Cc hater and Eric Kohl.

      <---- In WINE (similar in ROS) ---->
       
      0074:Call KERNEL32.LoadLibraryA(7ec34ee9 "secur32.dll") ret=7ec0d79e
      0074:Ret  KERNEL32.LoadLibraryA() retval=7ed30000 ret=7ec0d79e
      0074:Call KERNEL32.GetProcAddress(7ed30000,7ec3509f "EnumerateSecurityPackagesW") ret=7ec0d771
      0074:Ret  KERNEL32.GetProcAddress() retval=7ed3a2cc ret=7ec0d771
      0074:Call secur32.EnumerateSecurityPackagesW(04e9db40,04e9db44) ret=7ebf92e4
      0074:Call ntdll.RtlAllocateHeap(00110000,00000000,000001ce) ret=7ed45e93
      0074:Ret  ntdll.RtlAllocateHeap() retval=01aaccf8 ret=7ed45e93
      0074:Ret  secur32.EnumerateSecurityPackagesW() retval=00000000 ret=7ebf92e4
       
       
      >---The details in ROS ---<
      Breakpoint 7 hit
      Secur32!EnumerateSecurityPackagesW+0x69:
      001b:7ae32cf9 8b5508          mov     edx,dword ptr [ebp+8]
      kd> p
      Secur32!EnumerateSecurityPackagesW+0x1bb:
      001b:7ae32e4b 8b0db0a1e37a    mov     ecx,dword ptr [Secur32!__wine_dbch___default (7ae3a1b0)]
      kd> ?? package->infoW.Name
      unsigned short * 0x02a684f8
       "Microsoft Unified Security Protocol Provider"
      kd> p
      Secur32!EnumerateSecurityPackagesW+0x25b:
      001b:7ae32eeb 8b15b0a1e37a    mov     edx,dword ptr [Secur32!__wine_dbch___default (7ae3a1b0)]
      kd> ?? package->infoW.Comment
      unsigned short * 0x029f37a8
       "Microsoft Unified Security Protocol Provider"
      kd> p
      Secur32!EnumerateSecurityPackagesW+0x1ae:
      001b:7ae32e3e 8b45f4          mov     eax,dword ptr [ebp-0Ch]
      kd> ?? package->infoW.Name
      unsigned short * 0x02a68588
       "Schannel"
      kd> p
      Secur32!EnumerateSecurityPackagesW+0x25b:
      001b:7ae32eeb 8b15b0a1e37a    mov     edx,dword ptr [Secur32!__wine_dbch___default (7ae3a1b0)]
      kd> ?? package->infoW.Comment
      unsigned short * 0x029f3810
       "Schannel Security Package"
      kd> p
       
      (Note that in the enumeration, NTLM is absent).
       
       
      But then we get in ROS:
       
      kd> g
      Failed to set breakpoint at address 0x7AE356BF, adding deferred breakpoint.
      fixme:(H:\trunk\reactos_clean\dll\win32\rpcrt4\rpc_binding.c:1865) unsupported AuthnSvc 10     <--- RPC_C_AUTHN_WINNT
       
      And installation failure!
       
      While in Wine, execution continues with:
       
      0074:Call KERNEL32.GetProcAddress(7ed30000,7ec35024 "AcquireCredentialsHandleW") ret=7ec0d771
      0074:Ret  KERNEL32.GetProcAddress() retval=7ed3a1f4 ret=7ec0d771
      0074:Call secur32.AcquireCredentialsHandleW(00000000,01aace42 L"NTLM",00000002,00000000,00000000,00000000,00000000,04e9db4c,04e9db54) ret=7ebf94ed
      0074:Call KERNEL32.lstrcmpiW(00127780 L"Microsoft Unified Security Protocol Provider",01aace42 L"NTLM") ret=7ed471c2
      0074:Ret  KERNEL32.lstrcmpiW() retval=ffffffff ret=7ed471c2
      0074:Call KERNEL32.lstrcmpiW(00127878 L"Schannel",01aace42 L"NTLM") ret=7ed471c2
      0074:Ret  KERNEL32.lstrcmpiW() retval=00000001 ret=7ed471c2
      0074:Call KERNEL32.lstrcmpiW(00127a60 L"NTLM",01aace42 L"NTLM") ret=7ed471c2
      0074:Ret  KERNEL32.lstrcmpiW() retval=00000000 ret=7ed471c2
      0074:Call ntdll.RtlAllocateHeap(00110000,00000000,00000018) ret=7ed3dc88
      0074:Ret  ntdll.RtlAllocateHeap() retval=01a2be80 ret=7ed3dc88
      0074:Call ntdll.RtlAllocateHeap(00110000,00000000,00000008) ret=7ed4979b
      0074:Ret  ntdll.RtlAllocateHeap() retval=01a2bea0 ret=7ed4979b
      0074:Ret  secur32.AcquireCredentialsHandleW() retval=00000000 ret=7ebf94ed
      0074:Call KERNEL32.GetProcAddress(7ed30000,7ec350ba "FreeContextBuffer") ret=7ec0d771
      0074:Ret  KERNEL32.GetProcAddress() retval=7ed3a2fc ret=7ec0d771
      0074:Call secur32.FreeContextBuffer(01aaccf8) ret=7ebf94fd
      

        Issue Links

          Activity

          HBelusca
          made changes -
          Field Original Value New Value
          Link This issue blocks CORE-11520 [ CORE-11520 ]
          HBelusca
          made changes -
          Epic Link CORE-12279 [ 28165 ]
          HBelusca
          made changes -
          Module secur32
          Component/s Security [ 10210 ]

            People

            • Assignee:
              Bug Zilla
              Reporter:
              HBelusca
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated: