2009-06-01 15 views
7

मुझे अपनी साइटों में से किसी एक पर इस तरह की त्रुटियां मिल रही हैं। रात में अवधि के दौरान यह दिन भर यादृच्छिक रूप से होता है जब मैं साइट पर उपयोगकर्ताओं की अपेक्षा नहीं करता।स्क्रिप्ट संसाधन त्रुटि: क्या मुझे हैक किया जा रहा है?

यह अलग आईपी पतों

System.Web.HttpException: Invalid viewstate. at System.Web.UI.Page.DecryptStringWithIV(String s, IVType ivType) at System.Web.UI.Page.DecryptString(String s)

या

System.Security.Cryptography.CryptographicException: Padding is invalid and cannot be removed. at System.Security.Cryptography.RijndaelManagedTransform.DecryptData(Byte[] inputBuffer, Int32 inputOffset, Int32 inputCount, Byte[]& outputBuffer, Int32 outputOffset, PaddingMode paddingMode, Boolean fLast) 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, IVType ivType, Boolean useValidationSymAlgo) at System.Web.UI.Page.DecryptStringWithIV(String s, IVType ivType) at System.Web.UI.Page.DecryptString(String s)

वे यह पेज में होने से हमेशा होता है:

ScriptResource.axd?d=VVe1O4rzLSI9hB5nRzBXZxUYTQz6ylDTL9djGR 

साइट के उपयोगकर्ताओं अजाक्स और .NET 3 पर चलता है।

I क्या यह साइट पर हैक करने की कोशिश कर रहा है? क्या यह साइट पर एचटीएमएल के साथ एक त्रुटि है?

कोई भी विचार?

उत्तर

5

मुझे विश्वास है कि यह त्रुटि आपके व्यूस्टेट को पुराने आउटस्टेट यूज़रकी का उपयोग करके डिक्रिप्ट होने के कारण हुई है।

इन त्रुटियों को निकाला जा रहा है एक दो कदम प्रक्रिया है:

  1. सुनिश्चित करें कि आप एक साइट विशिष्ट मान्यता कुंजी है। आप अपने लिए एक उत्पन्न करने के लिए कई ऑनलाइन संसाधनों का उपयोग कर सकते हैं, जैसे कि this one
  2. सुनिश्चित करें कि पृष्ठ का ViewStateUserKey हमेशा सुसंगत है।

Setting the ViewStateUserKey property can help you prevent attacks on your application from malicious users. It does this by allowing you to assign an identifier to the view-state variable for individual users so that they cannot use the variable to generate an attack. You can set this property to any string value, such as the user's session ID or the user's authenticated name.

तुम खुद की स्थापना (शायद आपका पृष्ठ या आधार पृष्ठ के Init घटना में) ऐसा कर सकते हैं: MSDN प्रलेखीकरण से

if (Session["ViewStateUserKey"] == null) 
{ 
    Session["ViewStateUserKey"] = new Guid().ToString(); 
}  
this.Page.ViewStateUserKey = Session["ViewStateUserKey"].ToString(); 

और नहीं, मैं आपको लगता है नहीं है हैक किया जा रहा है।

+0

वैसे यह एक आशीर्वाद है, आपके उत्तर के लिए धन्यवाद मैं इसे जाने दूंगा। क्या इसका परिणाम उपयोगकर्ताओं के ब्राउज़र पर एक त्रुटि होगी? – Paul

+0

मुझे लगता है कि यह करना चाहिए, हालांकि मैं इसे कभी भी दोहराने में सक्षम नहीं हूं - मैंने इन त्रुटियों के साथ बहुत सारे लॉग देखे हैं। –

संबंधित मुद्दे