假设我们有一个可以接受密码(或其他敏感信息)参数的程序或脚本:>program.exe/password:secret对于Linux,最佳实践通常建议反对直接在命令行上指定密码,因为存在潜在的安全问题(密码可能出现在shell的历史文件和系统的进程表中):$./program.sh--password'secret'&[1]4152$cat/proc/4152/cmdline/bin/sh./program.sh--passwordsecret但是,在四处搜索时,我没有看到针对Windows的同样强烈的推荐。在为Windows编写程序和脚本时,除了命令行选项的参数之外,我们是否应该提供
我问这个问题,因为我试图搜索所有Windows操作系统(从9x到Windows8,包括WindowsCE/Embedded)的信息,但没有成功,我没有得到准确的计数不同版本的铃声,关于内存范围等。MSDN中有一些关于native开发(KMDF)的信息,但仅适用于比Win32更低级别的工作,并且没有关于所有环和访问每个环的完整信息。你能帮我回答这个问题吗? 最佳答案 现在没有主要操作系统(至少在桌面上没有)使用超过2个环,原因很简单,在一个主要体系结构上,进行系统调用的现代高效方式(例如SYSENTER)专门支持从ring-3到rin
以下内容引自此article的“安全改进”部分.“为了回应我们关于缺少Windows休眠文件加密API的公众投诉,Microsoft开始提供用于在WindowsVista和更高版本的Windows上加密休眠文件的公共(public)API..."但是,谷歌搜索未能显示更多信息,例如API的名称。也许我在谷歌上搜索了错误的术语……有人有什么想法吗? 最佳答案 来自IRP_MN_DEVICE_USAGE_NOTIFICATION系统组件发送此IRP以询问设备的驱动程序该设备是否可以支持特殊文件。特殊文件包括分页文件、转储文件和休眠文件。
有没有比WindowsDPAPI更安全的方式来保护和存储密码?我的程序需要存储一个secret(类似于凭据)以在Windows上进行自动登录,并且这个secret必须与其他用户帐户共享,因为该程序可以在不同帐户上运行但共享凭据。我需要保护这个secret不被篡改,以避免攻击者注入(inject)他自己的凭据并取得控制权。如果攻击者具有物理访问权限,我知道我们无能为力,但是......目前,存储和保护此secret的最佳方法是什么? 最佳答案 如果您想保护某些内容免受篡改,您最好采用多级方法。这样做的缺点是获得访问权限(即使有所有se
我正在处理一些加密项目(使用C#),并且有一个任务,我正在考虑如何做好。我需要客户端为非对称加密生成私钥,但正如我查看了一些库,这并不是那么简单易行的任务。为什么?为了在Windows中生成私钥,我有下一个可能性:使用makecert.exe、pvk2pfx.exe等生成它们...但是这些工具来自WindowsSDK,并且似乎与其他DLL链接,所以如果客户有一个干净的操作系统(没有安装任何库)我可以:1).在客户端的PC上安装WindowsSDK2)。复制makecert.exe和其他实用程序将其与项目分发一起保存(我认为,由于不同的Windows版本(从7到10)和32/64位架构,
我有一个第3方.exe安装程序,它连同它安装的所有其他内容,包括一个在完成后自动启动的Windows服务:我无法安装它,因为它一直说:“服务器xxxx无法启动,。请验证您是否有足够的权限来启动系统服务。现在,我已经尝试了几种方法:以管理员身份运行重新启动RPC并赢得安装程序服务通过cmd注销和注册msiexec在本地策略中添加用户登录为服务策略正在安装框架4.5,4还有很多其他的...奇怪的是,它可以正确安装在Windows10版本中,但不能安装在全新的Windows7版本x86和x64上。因为这是来自第3方的“封闭”.exe,我什至尝试了一个带有虚拟exe的全新自定义Windows服
我为Windows7构建了自己的锁屏。因此,它使用密码来解锁自己。所以我决定只存储密码字符串的哈希码(例如,我调用字符串“Password123”的GetHashCode方法)。现在我有存储号码的任务。我将如何以最安全的方式执行此操作?还是使用密码字符串的哈希码是最好的方法?我的目标是阻止某人访问此号码,并最终阻止某人发现密码。以下是我到目前为止想到的一些可能的方法:将密码的哈希码与主程序一起存储在未加密的纯文本文件中。将密码的哈希码与主程序一起存储在加密的文本文件中(这引入了存储和获取合适的加密key的问题)将密码的哈希码存储在一个小型编译的C#库中。如上操作,但对生成的程序集进行加
我正在使用C++MFC、Windows进行编程。在windowsXP、Vista和Win7中获取文件属性(例如只读)和安全属性(例如读拒绝写拒绝)的最佳做法是什么?修改文件属性和安全属性的最佳做法是什么?非常感谢!!! 最佳答案 请检查C++-Howtosetfilepermissions(crossplatform)?另外,看这里WindowsAccessControl 关于c++-获取文件属性(例如只读)和安全属性(例如读取拒绝写入拒绝)的最佳做法是什么?,我们在StackOverf
我正在尝试设置IIS以允许通过“IUSR_”帐户进行匿名访问。我已经在计算机管理中为该帐户设置了密码。我已授予该帐户对运行该网站的物理文件夹和子文件夹的权限。已在IIS中为此站点选中启用匿名访问,并且用户名/密码设置正确。但是,当我去查看该站点时,出现此错误:您无权查看此页面HTTP错误401.1-未经授权:由于凭据无效,访问被拒绝。这可能是什么原因造成的?我想可能是应用程序池,但它似乎是使用预定义的“网络服务”帐户正确设置的。更新:如果我将匿名访问用户更改为管理员帐户,则一切正常。但是,最终,我不能让网站那样上线。更新2:已修复!这可能与这里的很多人无关,但这是本地安全设置。几周前,
我们正准备部署一个Windows.NET客户端应用程序,它将向我们的中央服务器发出网络服务调用。我们被要求验证对Web服务的所有调用都来self们的客户端应用程序,而不是来自任何其他调用者。有人建议我们传递一个安全token,该token对我们应用程序的所有安装都是通用的。但是,我们现在有这个公共(public)字符串可以在应用程序安装中进行保护。有没有一种有效的方法可以合理地保护这样的字符串不被黑客发现?感谢您的所有建议。 最佳答案 始终使用SecureString处理token。这样从内存中检索token就会困难得多。将toke