Domanda

Di recente ho lavorato con i servizi Web jQuery e * .asmx e sto provando a essere attento alla sicurezza nel farlo.

Immagino che sarebbe possibile inviare una richiesta AJAX - anche quando si è disconnessi - a una risorsa che dovrebbe essere accessibile solo quando si è effettuato l'accesso.

Pertanto, includo chiavi e hash speciali con ciascuna di queste richieste AJAX per convalidare lo stato dell'utente prima di eseguire determinate azioni sul lato server.

TUTTAVIA

Ho sempre pensato che i Postback fossero al sicuro in questo senso. Che .NET avrebbe generato un errore se avesse ricevuto una richiesta che era stata manomessa.

È un presupposto sicuro? O dovrei convalidare TUTTE le richieste, siano esse ricevute tramite AJAX o un POST HTTP non AJAX?

Suppongo che entrambi siano POST tecnicamente HTTP, ma quello AJAX invia solo ciò che passi esplicitamente, mentre un normale ASP.NET include tutti i valori viewstate. È corretto?

È stato utile?

Soluzione

Non dovresti fidarti di tutto ciò che arriva su HTTP: è banale produrre una richiesta GET o POST.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top