Esiste un modo sicuro per consentire a IIS 7 in una DMZ di accedere a un server DB dietro il firewall?


12

I nostri amministratori di rete sono fermamente convinti che non è sicuro per i nostri server Web, che sono ospitati nella DMZ, accedere al server DB dietro il nostro firewall. Per aggirare il problema, accediamo ai dati tramite servizi web o WCF. Ritengo che questo sia un onere per le prestazioni non necessario che potrebbe essere eliminato se il server Web potesse accedere direttamente al DB.

La ragione per cui mi è stato dato è che un hacker è stato in grado di accedere al server web e quindi di accedere al database. È possibile aprire le porte solo per IIS o non è possibile essere così specifico? Se riusciamo a bloccarlo solo su IIS, potrebbe essere facilmente compreso dall'hacker?

Ho letto vari post su Internet ma non riesco a trovare una risposta definitiva.

Al


Domanda interessante!
Kangkan,

Grandi domande davvero! Sarebbe stato molto meglio se il titolo avrebbe potuto essere più generico, senza specificare i nomi degli stack tecnologici (IIS, WCF ecc.)
Chathura Kulasinghe

Risposte:


9

Ho impostato piattaforme per aziende di grandi dimensioni e la pratica normale è quella di garantire che i tuoi database si trovino su una VLAN diversa dai tuoi server Web con un firewall compreso tra il traffico di routing verso la porta del server di database e un firewall di fronte al tuo Web server. In genere, il firewall anteriore inoltra la porta 80 (HTTP) e la porta 443 (HTTPS) ai server Web. Il firewall tra il server Web e il server database inoltrerà il traffico dai server Web alla porta utilizzata dal database (in genere la porta 1433 se si utilizza Microsoft SQL Server).

Per una maggiore sicurezza:

  • Assicurarsi di utilizzare un account con privilegi minimi per accedere ai server di database
  • Se si utilizza ASP.NET, è possibile crittografare la stringa di connessione al database in web.config
  • Assumere una società di terze parti per eseguire un test di penetrazione per avvisare di eventuali vulnerabilità
  • Assicurarsi che aggiornamenti e Service Pack siano installati su base regolare pianificata.

Se il tuo database è il database MI6 o CIA, probabilmente gli amministratori di rete hanno ragione, ma anche a me sembra che stiano reagendo in modo esagerato.

Se il database contiene dati che non possono assolutamente essere esposti a una rete pubblica ma i dati di cui il tuo database ha bisogno non sono così sensibili, potresti guardare la replica delle tabelle che il tuo sito web richiede in un database che si trova nel tuo ambiente di hosting?

Farei loro la domanda:

  • Se un hacker ottiene l'accesso al server Web, potrebbe chiamare i tuoi servizi web?
  • Se in IIS viene rilevata una vulnerabilità che ha consentito loro di accedere al tuo server Web, sicuramente sfruttano la stessa vulnerabilità sul server Web che ospita i tuoi servizi web?
  • Potrebbero installare software che monitora l'input dell'utente per annusare le password in memoria?

Grazie per il consiglio. Ora ho il difficile compito di persuadere gli amministratori di rete a modificare l'impostazione.
Al Polden,

4

I tuoi server web possono anche essere protetti da un firewall, devono solo avere la porta 80 inoltrata al server corretto. Tutte le altre porte di cui il tuo server web non ha bisogno dovrebbero essere chiuse su quel firewall esterno. Quindi dovrebbe esserci un firewall tra i server Web e i server di dati. In quel firewall consentirai solo l'apertura delle porte su cui parlano i database.

Ecco un diagramma

Internet -> Firewall -> Server Web -> Firewall -> Database

Cordiali saluti, sono uno sviluppatore anche se lavoro con il nostro personale IT spesso presso la mia azienda poiché siamo un piccolo negozio.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.