Realizzazione Siti e Portali Web – Wordpress CODING – Mobile APP – Consulenze SEO – Web design – Ecommerce     Login / Register

C# & Razor: Come evitare l’invio di dati malevoli da form esterne (CSRF).

Un tipo di attacco alla sicurezza del nostro sito web è quello di invio malevolo di contenuti da form situati in altri server che prende il nome di CSRF.
Ovviamente affinché ciò sia possibile l’hacker deve essere entrato in possesso di credenziali adeguate e quindi poter impersonare un utente che ha particolari privilegi. Riuscire a inviare dei dati da form non situate sul nostro server è abbastanza facile da evitare.
Immaginiamo il classico codice per il form (evitiamo tutti i vari corollari normalmente presenti…):

Se a questo aggiungiamo una semplice istruzione, Html.AntiForgeryToken, rendiamo lo scambio di dati client/server validato con un token univoco generato dal server sul client e quindi richiesto nei dati inviati.

Se nel metodo del controller che dovrà ricevere i dati si aggiunge l’annotazione

A questo punto un form “malevolo” riceverà una risposta del tipo:
csrf-attack-stopped[3]

Ovviamente questo accorgimento non è sufficiente a mettere in sicurezza il nostro sito, ma certamente è necessario e veramente semplice da mettere in pratica.

Related posts

Leave a Comment

Lascia un commento

Your email address will not be published.




Top