Indietro

ⓘ Application-level gateway




                                     

ⓘ Application-level gateway

Un Application-level gateway o ALG è una componente di sicurezza dei firewall in una rete di computer. Permette di aggiungere filtri NAT personalizzati al gateway per fornire una migliore traduzione degli indirizzi IP e delle porte nel caso in cui si usino certi protocolli del livello applicazione come FTP, BitTorrent, SIP, RTSP, trasferimento dei file con applicazioni di messaggistica istantanea.

                                     

1. Principi di funzionamento

LApplication-level gateway fa da intermediario tra internet e lApplication Server. Ogni richiesta viene interpretata, tradotta, in modo da essere compresa dallApplication Server e depurata, in modo da prevenire il passaggio di contenuti maliziosi o malformati. La richiesta viene poi mandata allApplication Server, la cui risposta verrà processata allo stesso modo.

LApplication-level gateway fa uso di due tipi di proxy:

  • Proxy specifici dellapplicazione. Vengono accettati solamente i pacchetti generati da servizi che i proxy sono progettati a copiare, filtrare e inoltrare. Per esempio solo un proxy Telnet può copiare, filtrare e inoltrare traffico generato da Telnet. Questo può costituire anche uno svantaggio, se una rete dipende solo da un application-level gateway, i pacchetti in arrivo e in uscita non potranno accedere a servizi per cui non è disponibile un proxy.
  • Filtraggio a livello di applicazione. Ogni pacchetto che attraversa la rete viene esaminato e filtrato, verificando i contenuti del pacchetto fino al livello di applicazione lultimo livello del modello OSI. In questo modo è possibile filtrare comandi e informazioni destinate allapplicazione.
                                     

2. Funzioni

Un ALG può fornire le seguenti funzioni:

  • Riconosce comandi specifici dellapplicazione e fornisce controlli di sicurezza su di essi.
  • Permette luso di porte dinamiche o effimere da parte del client per comunicare con le porte conosciute dallapplication server, anche se il Firewall permette il passaggio di traffico solo da un numero limitato di porte. In assenza di un ALG, sarebbe necessario che lamministratore di rete configuri il firewall in modo da aprire esplicitamente un grande numero di porte, rendendo così la rete vulnerabile ad attacchi.
  • Permette di convertire gli indirizzi del livello di rete in indirizzi accettabili dagli host.
  • Permette la sincronizzazione di flussi multipli e sessioni tra due host. Per esempio, una applicazione FTP potrebbe utilizzare diverse connessioni per il trasferimento dei dati e per linvio e il controllo dei comandi. Potrebbe quindi accadere che durante il trasferimento di grandi file la connessione per il controllo dei comandi venga interrotta poiché rimane inattiva per molto tempo. Un ALG impedisce che questo accada prima del completamento del trasferimento dellintero file.

Queste funzioni si possono ottenere grazie alla tecnica di analisi dei pacchetti detta deep packet inspection. Le stesse funzioni potrebbero essere ottenute usando un proxy server, ma questo richiederebbe una iniziale apposita configurazione dei client.

                                     

3. Limitazioni

Lapplication-level gateway presenta degli svantaggi, che ne limitano il suo utilizzo:

  • Ritardi causati dal tempo impiegato per analizzare i pacchetti.
  • Problemi di velocità e di instradamento.
  • Molte applicazioni non sono progettate per gli ALG, come Email e Web.
                                     

4. ALG in Microsoft Windows

Il servizio Application Level Gateway in Microsoft Windows fornisce il supporto a plugin di terze parti per consentire il passaggio di protocolli attraverso il Firewall di Windows. I plugin ALG inoltre possono aprire porte e cambiare i dati contenuti nei pacchetti.