Quali sono alcuni dei rischi pratici che derivano da una connessione server-server su http (non protetto con https / SSL)? Non ci sono utenti coinvolti, solo una connessione server-to-server da una compagnia all'altra.
L'attività A chiamerà un endpoint del servizio Web in Business B. Una chiave API verrà inclusa nella chiamata da utilizzare per l'accesso alla porta (ad esempio, la chiave deve essere valida, in regola).
So che è possibile a spiare il traffico. Non è sicuro che sia probabile , solo possibile. Qual è la ragione del rischio associato?
Quali sono altri rischi pratici?
EDIT: per un ulteriore contesto, alcune API Web pubbliche supportano le chiamate basate su http con la chiave passata nel payload o nell'URL. Ad esempio: Posterous, Tumblr (nuova API supporta OAuth su http), Bing, GoodGuide e Flickr.
EDIT 2 17-Mar-2014: ho posto questa domanda due anni fa. Deriva principalmente dalla mia curiosità per i veri vettori di attacco negli scenari server-to-server poiché la maggior parte della visibilità riguarda gli attacchi degli utenti finali o l'hacking nei server. Ma raramente ho sentito "se solo avessimo usato SSL da server a server!" (Anche se ricordo un'eccezione - la violazione del TJX del 2006 - in cui le carte di credito rubate dal canale wifi non protetto, suppongo che http all'interno di esso - sebbene wifi sia il tipico scenario da server a server).
Non è che non capisco o sappia usare SSL (lo faccio, lo uso e capisco la crittografia dietro di esso), quindi questa non è ignoranza del set di strumenti. Nelle risposte fino ad ora, nessuno ha ritenuto che le API web di cui sopra potessero essere utilizzate per compromettere i dati sensibili (una foto privata in Flickr, pubblicando alcuni contenuti dannosi sul mio account in Tumlbr (Posterous è andato!), Accedendo al mio personale ( potrebbe essere molto privato) query di ricerca in Bing e GoodGuide).
Poiché la complessità dell'offerta di API su HTTPS ricade interamente sul servizio - è facile scegliere HTTPS come client (anche se, nello scenario di interesse qui, il "client" è un altro server) - supposi che il i produttori dei produttori di API sopra elencati hanno valutato attentamente i pro ei contro e hanno deciso di consentire a HTTP di andare bene.
Sono d'accordo che ogni volta che ci occupiamo di dati riservati o sensibili dell'utente finale o dell'azienda, abbiamo un obbligo fiduciario implicito nel trattarlo responsabilmente sul filo (se produzione, sviluppo o test - se merita protezione) . Ma questo non è uno scenario (di nuovo, ecco perché ho posto questa domanda).
Ecco alcuni compromessi che potrebbero venire in mente nel caso generale.
Google Maps ha una chiave API che devi esporre in pubblico - vive in JavaScript - e l'accesso al servizio può essere bloccato dal nome del dominio di hosting (intestazione REFERER) - quindi questo non è necessario (e non richiede) SSL. (Questo è più comunemente usato in un modello da utente a server, ma è almeno possibile pensarlo nello scenario da server a server. Possiamo almeno capire la logica.)
Inoltre, le istanze di sviluppo e test di molti servizi ofter sono meglio senza SSL. Sono più facili da eseguire il debug sul cavo quando il traffico non è crittografato. Inoltre, è particolarmente doloroso impostare certificati SSL per la maggior parte degli ambienti perché spesso hanno nomi di dominio in continua evoluzione ad hoc sugli endpoint come gli ambienti vanno e vengono, forse nemmeno abbastanza coerenti per un certificato con caratteri jolly.
Esistono anche scenari da server a server meno vulnerabili di altri, anche se sono trasmessi dati sensibili. Ad esempio, considera i server appartenenti a divisioni diverse all'interno della stessa azienda e i dati non viaggiano su Internet pubblica (ad es. 192.168 intervallo di indirizzi).
Come altro esempio, consideriamo i server in esecuzione su una piattaforma cloud pubblica (Amazon o Azure, ad esempio) - Non penso che tu possa incontrare problemi da altri server in esecuzione nella stessa area del data center perché nessun codice (diverso da l'host della piattaforma) avrà la possibilità di elevare le autorizzazioni sull'hypervisor per impostare la scheda NIC sulla modalità promiscua per spiare il traffico (e anche se potesse, non potrebbe vederlo attraverso l'hypervisor (credo), e anche se potesse potrebbe solo spiare il traffico all'interno della propria rete VNET).