Windows子身份验证程序包未调用

时间:2019-04-01 14:01:13

标签: windows authentication credential-providers

我开发了定制凭据提供程序,我的目标是定制CP将使用定制身份验证提供程序进行身份验证。

我知道实现子身份验证提供程序就足够了。

我拿了https://github.com/Microsoft/Windows-classic-samples/tree/master/Samples/Win7Samples/security/authentication/msvsubauth并将其与c ++项目一起编译。

我所做的步骤:

  1. 添加表明dll被称为

  2. 的日志
  3. 将dll复制到system32

  4. 在hklm \ system \ currentcontrolset \ control \ lsa \ msv1_0 \ auth0中写入dll名称(不带.dll)

  5. 重新启动计算机

但是我仍然看不到该dll被调用的任何迹象。

2 个答案:

答案 0 :(得分:0)

仅当dll未在注册表中正确注册时,子身份验证程序包才起作用。该dll应该注册为Auth0。这是示例注册表格式。您可以将其另存为.reg文件并执行。

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0]
"Auth0"="your-dll-name"

除此之外,我认为,根据您的情况,一切都应该很好。

答案 1 :(得分:0)

您可以尝试使用8个字符以内的dll名称,并将该DLL名称以大写形式放在注册表中(无扩展名)。

可以从Mimikatz的一位作者那里找到一个简单的工作示例: https://github.com/vletoux/SubAuth

注意.reg文件:

Windows注册表编辑器5.00版

[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Lsa \ Kerberos] “ Auth0” =“ SUBAUTH”

[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Lsa \ MSV1_0] “ Auth0” =“ SUBAUTH”