ASP.NET错误: This is an invalid webresource request

标签 asp.net

我从网络场中的一台 ASP 服务器收到大量错误警报,并且所有服务器的 web.config 文件中都具有相同的计算 secret 钥。 我环顾四周,但没有找到这个确切案例的答案。欢迎任何建议。

感谢您考虑这个问题!

以下是一些错误堆栈(查询字符串不是来 self 们的应用程序,可能是其他内容的一部分):

Error message: This is an invalid webresource request. Stack trace:
at System.Web.Handlers.AssemblyResourceLoader.System.Web.IHttpHandler.ProcessRequest(HttpContext context) at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) Source: System.Web Method: Void System.Web.IHttpHandler.ProcessRequest(System.Web.HttpContext) Page: QueryString: d=hAGTq1Iohid

这些可能是在修补 Win 2003 服务器时启动的。后来 dot.net 框架安装在其他三台服务器上,但没有安装在引发错误的服务器上。

大多数错误似乎与解密有关,但同一网络场中的所有服务器现在在其网络配置中具有相同的计算 secret 钥。但这并没有阻止错误。

也看到:

"Length of the data to decrypt is invalid"
Error message: Length of the data to decrypt is invalid. Stack trace: at System.Security.Cryptography.RijndaelManagedTransform.TransformFinalBlock(Byte[] inputBuffer, Int32 inputOffset, Int32 inputCount) at System.Security.Cryptography.CryptoStream.FlushFinalBlock() at System.Web.Configuration.MachineKeySection.EncryptOrDecryptData(Boolean fEncrypt, Byte[] buf, Byte[] modifier, Int32 start, Int32 length, Boolean useValidationSymAlgo) at System.Web.UI.Page.DecryptString(String s) at 
    System.Web.Handlers.AssemblyResourceLoader.System.Web.IHttpHandler.ProcessReques­t(HttpContext context) at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.I­ExecutionStep.Execute() at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) 

还有

"Invalid length for a Base-64 char array"
Error message: Invalid length for a Base-64 char array.
Stack trace:    at System.Convert.FromBase64CharArray(Char[] inArray, Int32 offset, Int32 length)
   at System.Web.HttpServerUtility.UrlTokenDecode(String input)
   at System.Web.UI.Page.DecryptString(String s)
   at System.Web.Handlers.AssemblyResourceLoader.System.Web.IHttpHandler.ProcessRequest(HttpContext context)
   at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
Source: mscorlib
Method: Byte[] FromBase64CharArray(Char[], Int32, Int32)

"Invalid view state"
Error message: Invalid viewstate.
Stack trace:    at System.Web.UI.Page.DecryptString(String s)
   at System.Web.Handlers.AssemblyResourceLoader.System.Web.IHttpHandler.ProcessRequest(HttpContext context)
   at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
Source: System.Web
Method: System.String DecryptString(System.String)

再次感谢大家。

最佳答案

我不能确定,但​​这看起来像是一次黑客尝试,试图利用非常严重的 .NET 'Padding Oracle' Crypto Attack,还有discussed by Scott Guthrie 。有a patch available ,因此,如果您发现您的服务器确实容易受到攻击,请确保立即修补它,并在服务器确实受到损害时采取损害控制措施。

这也可能是由您的应用程序问题引起的。但是,如果您突然看到大量此类错误,特别是最近没有对您的应用程序进行任何更改,我的第一个想法就是入侵尝试。利用此漏洞的方法会产生与解密和错误数据长度相关的错误。

关于ASP.NET错误: This is an invalid webresource request,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5518406/

相关文章:

c# - 作为默认存储日志的 ASP.NET Core 日志记录 API 在哪里?

asp.net - web.config 授权是否适用于 aspx 以外的文件?

c# - 模板字段消失

c# - 将字符串清理为 url 安全格式

asp.net - 访问 Repeater 内的 <LI> 类

ASP.NET 状态服务器安全性

c# - 引发 "potentially dangerous Request.Form value"错误的条件是否取决于 .NET 配置和版本?

javascript - ASP.NET:HtmlGenericControl <DIV> - 刷新

.net - 如何将 MS Chart for 3.5 更新到 MS Chart 4?

c# - 在哪里关闭SqlDataReader对象和SqlConnection对象?