WebResource.axd generazione di eccezioni in web farm
-
12-10-2019 - |
Domanda
Abbiamo una serie di circa 12 server che servono un sito web. Nel corso delle ultime ore, un singolo server ha iniziato a generare eccezioni per le richieste WebResource.axd e ScriptResource.axd.
eccezione
System.Web.HttpException -. Si tratta di una richiesta di risorsa di script non valida
Analisi dello stack
a System.Web.Handlers.ScriptResourceHandler.ProcessRequest (HttpContext contesto)
a System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute ()
a System.Web.HttpApplication.ExecuteStep (IExecutionStep step, Boolean & completedSynchronously)
Server rotto URL
/WebResource.axd?d=S6kjkBsrIKni9uO5HCkv0c8eYObzibWXn9R6A7Yr_Fy7CW4dRFZm1HfcnUTEZ8xBYZDM-5zeTVk1tTgC1hp7d5YYw3o1&t=634308186300177825
Tutti gli altri server URL
/WebResource.axd?d=yj6PW1hbOvqhMkOh2gYGlw2&t=634207187366247462
Ho controllato il web.config, machine.config per ogni server e sono tutti uguali. L'unica differenza sono riuscito a trovare finora è che prima di iniziare il problema, i server sono stati rattoppati, dopo di che, gli sguardi dei server problematici di utilizzare diversa versione del System.Web.dll agli altri?
Tutte le idee?
Soluzione
Trovato la causa principale del problema. Il server problema aveva una patch di sicurezza applicata che ha aggiornato System.Web.dll. Per qualche motivo il nostro hosting provider non ha aggiornato uno qualsiasi degli altri dll ea sua volta questo server stava generando diverse chiavi di crittografia per gli altri.
Per capire quale dll è stato colpito, ho usato il seguente per decifrare i parametri della stringa di query WebResource.axd:
Altri suggerimenti
Il "? D = yj6PW1hbOvqhMkOh2gYGlw2 & t = 634.207.187.366,247462 millions" è un collegamento in qualche modo (hash o qualcosa del genere?) A una risorsa nel system.web.dll, quindi comprensibilmente con diversi dll di su quel server il link non è valido.