我是否应采取措施防止从对CreateProcessWithLogonW的调用中读取密码?

时间:2016-08-30 21:45:01

标签: security password-protection plaintext createprocesswithlogonw

Windows上的runas和* nix上的su等许多程序采取措施确保用户不会通过确保密码可以&而在批处理文件中写密码等愚蠢的事情#39;用管道传送或作为参数提供。

在工作中,有一项任务需要由另一名员工重复完成,该员工需要以域管理员帐户登录。我正在编写一个调用CreateProcessWithLogonW的存根应用程序来完成这项工作,而不会让他们看到明文密码,也不必向他们提供管理员密码。

我担心的是,如果用十六进制编辑器(甚至纯文本编辑器)打开密码,密码可能会在可执行文件中显示为纯文本。我是否应该采取措施确保在此应用程序中以模糊方式生成密码?

例如,从这样的结构开始:

typedef struct _MYPASS
{
    unsigned int first4;
    unsigned int next4;
    unsigned short next2;
    unsigned char last1;
} MYPASS;

然后对这些位执行算术运算,以生成与登录密码对应的ASCII。

内部申请是否过度杀伤?

1 个答案:

答案 0 :(得分:1)

如何使用密码存储库分离exe和密码? - > How do I store and retrieve credentials from the Windows Vault credential manager?

对内部工作没有帮助,但是如果exe进入野外。