【发布时间】:2011-11-30 14:19:43
【问题描述】:
如果我创建了一个 powershell 运行空间,可以使用 .NET 以编程方式或仅通过启动 powershell 控制台;运行的脚本/命令有多安全?
我说的不是脚本签名,而是脚本运行的实际内存空间。
我担心如果敏感信息被收集为脚本的一部分(例如,对薪水数据库的 sql 查询),那么有人可能会破解这些数据。
我知道此时大多数人都在考虑 SecureString,我知道 SecureString.... 我想具体了解 powershell 运行空间,而不是如何在运行空间中安全地存储字符串(希望最后一句话不只是回答我自己的问题)。
具体: 其他应用程序/脚本/任何东西是否能够窥视运行空间并查看我正在运行的命令?
【问题讨论】:
-
我不是专家,但我认为 PowerShell 遵循与其他进程相同的规则。每个进程都有特定的权限,具体取决于它运行的用户,以及一些have access to the memory of other processes。我认为你是对的,如果你偏执,你必须在内存中加密信息。我认为开源程序KeePass 就是这样做的。它可能不是 .NET,但它的代码可能具有教育意义。不过请注意,我不是安全或操作系统专家。希望这会有所帮助。
标签: powershell