Ho fatto una domanda qui un po 'indietro su come nascondere le mie chiamate di richieste http e renderle più sicure nella mia applicazione. Non volevo che la gente usasse il violinista 2 per vedere la chiamata e impostare un risponditore automatico. Tutti mi hanno detto di andare su SSL e le chiamate saranno nascoste e le informazioni saranno mantenute al sicuro.Qual è il punto di SSL se Fiddler 2 può decifrare tutte le chiamate su HTTPS?
Ho acquistato e installato un certificato SSL e ho impostato tutto. Ho avviato il fiddler 2 e ho eseguito un'applicazione di test che si collega a un servizio Web https e che è connessa a uno script https php.
Fiddler 2 è stato in grado non solo di rilevare entrambe le richieste, ma anche di decrittografarle! Sono stato in grado di vedere tutte le informazioni che tornano indietro e la quarta, che mi porta alla mia domanda.
Qual è il punto di avere SSL se ha fatto zero differenza di sicurezza. Con o senza SSL, posso vedere tutte le informazioni tornare indietro e la quarta e STILL impostare un risponditore automatico.
C'è qualcosa in .NET che mi manca per nascondere meglio le mie chiamate su SSL?
EDIT
Io sono l'aggiunta di una nuova parte a questa domanda a causa di alcune delle risposte che ho ricevuto. Cosa succede se un'app si connette a un servizio Web per accedere. L'app invia al servizio web un nome utente e una password. Il servizio Web invia quindi i dati all'app dicendo che i dati di accesso sono buoni o cattivi. Anche se si passa attraverso SSL, la persona che usa il fiddler 2 potrebbe semplicemente impostare un risponditore automatico e l'applicazione viene quindi "incrinata". Capisco come potrebbe essere utile vedere i dati nel debug, ma la mia domanda è esattamente cosa si dovrebbe fare per assicurarsi che SSL si stia connettendo a quello che stava richiedendo. Fondamentalmente dicendo che non può esserci un uomo di mezzo.
credo sia in grado di decrittografare solo le informazioni destinate al tuo computer perché hai già la chiave privata – Mark
Questo è corretto - è simile a qualsiasi altro proxy di debugging del Web-- come menzionato nella risposta di Alexei qui sotto, tali proxy solo ispezionare le informazioni relative alla macchina, in modo da facilitare il debug (da cui il nome "debugging proxy"), ma non consentire a una di decifrare arbitrariamente le chiamate effettuate da altre macchine. Pertanto, SSL è ancora sicuro, ma osservabile localmente, in modo che sia possibile eseguire il debug in modo più efficiente. – waxspin
La tua modifica della domanda pone una domanda completamente diversa da quella originale. È necessario convalidare correttamente il certificato inviato dal server. Il modo per farlo dipende da come ti connetti (quali classi sono usate ecc.). –