Recentemente, abbiamo sviluppato un'applicazione che vogliamo che gli utenti paghino per un abbonamento mensile per poterlo utilizzare. Quindi, la prima cosa che ci è venuta in mente è come implementare un modo sicuro per la nostra applicazione per verificare la validità degli utenti e quelle idee sono emerse
- Utilizzare
WebClient
per accedere al nostro sito Web e accedere utilizzando l'utente credenziali fornite: tuttavia, potrebbe essere vulnerabile aMITM
attacco. - Utilizzo del primo approccio, ma utilizzando il certificato di
SSL
(per essere sicuro che ci stiamo connettendo al nostro server e non agli attaccanti '): Tuttavia, Fiddler può facilmente eseguire un attacco diMITM
e decrittografareSSL
comunicazione, che si tradurrà nella stessa vulnerabilità di primo approccio.
A causa della mancanza di documentazione su Internet di ciò di cui abbiamo bisogno, abbiamo dovuto chiedere a qualcuno di spiegare come possiamo assicurarci che:
- La nostra applicazione si collega solo al nostro server e non a nessun falso ospitato server (dall'attaccante).
- La comunicazione è sicura. Non alterato o modificato come in ordine
per garantire un accesso ingiusto alla nostra applicazione. (inviando un falso
risposta all'app o modifica della risposta originale prima del
l'applicazione lo riceve
(replay attack)
).