Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 这张票够安全吗?_Asp.net_Forms Authentication_Machinekey_Formsauthenticationticket_Machine.config - Fatal编程技术网

Asp.net 这张票够安全吗?

Asp.net 这张票够安全吗?,asp.net,forms-authentication,machinekey,formsauthenticationticket,machine.config,Asp.net,Forms Authentication,Machinekey,Formsauthenticationticket,Machine.config,当用户基于默认表单身份验证方法登录时,服务器将创建一个包含加密数据的cookie(使用机器密钥作为加密密钥) 这意味着,如果有人找到/猜测/访问服务器的机器密钥,他将登录到web应用程序 我开发了一些在4台服务器上的应用程序。因此,我在Machine.config中为所有服务器硬编码了相同的机器密钥,无法使用自动生成模式 有没有可能强行使用机器钥匙 还有其他方法吗?(我不想使用Windows和Passport) 这张票足够安全吗?(即电子银行应用程序可接受) 加密的第一条规则是消息只与密钥一样安

当用户基于默认表单身份验证方法登录时,服务器将创建一个包含加密数据的cookie(使用机器密钥作为加密密钥)

这意味着,如果有人找到/猜测/访问服务器的机器密钥,他将登录到web应用程序

我开发了一些在4台服务器上的应用程序。因此,我在Machine.config中为所有服务器硬编码了相同的机器密钥,无法使用自动生成模式

  • 有没有可能强行使用机器钥匙
  • 还有其他方法吗?(我不想使用Windows和Passport)
  • 这张票足够安全吗?(即电子银行应用程序可接受)

  • 加密的第一条规则是消息只与密钥一样安全。如果有人可以访问您的密钥,则没有足够安全的方法

  • 我怀疑是否有可能在任何合理的时间强制使用机器钥匙
  • 我相信Fomrs身份验证是ASP.NET中唯一现成的真正的web解决方案。你可以实现你自己的,但我怀疑它会更安全
  • 安全到什么程度?在非加密连接中,中间人可以劫持,并且如果关闭事件验证(在Web窗体中)或不使用安全令牌(MVC),则易受到XSRF攻击。否则,它对于在所有技术中随时发现和修复的漏洞利用是安全的

  • ASP.NET表单身份验证票证使用Rijndael算法加密。Rijndael是作为DES(数据加密标准)的替代品而创建的,DES提供了无限制的数据加密方式,并且容易受到暴力攻击。RSA Security在90年代末组织了一系列DES挑战赛,挑战团队破解DES,以突出其固有的漏洞:

    相比之下,Rijndael(也称为高级加密标准AES)使用更长的密钥—256bit和双加密算法。破解256位Rijndael密钥(如ASP.NET机器密钥)需要2^200次操作(大约10^60-10次加60个零),几乎不可能强行破解。再加上ASP.NET票证会定期更改,并且解密后基本上看起来像一个随机的字母和数字字符串(因此无法确定暴力解密的内容是否正确),您可以放心,很快没有人会破解您的表单验证cookie

    有关Rijndael及其可能的攻击的更多信息,请点击此处:


    为什么强制使用机器密钥需要关闭服务器?蛮力基本上是检查每一个可能的组合,试图猜测机器密钥。我相信这将需要发送cookie到服务器?还是不?无论如何,机器密钥非常长,不能轻易强制使用。Rijndael只是一个算法,它可以在任何机器上运行。如果你可以通过检查机器钥匙的每一个可能的组合来猜出机器钥匙,那么你就可以在任何一台计算机上破解这张罚单。服务器已经知道机器密钥,因此在票证发回时不需要猜测。请记住标记帮助最大的答案:-)