Restrizione indirizzo IP IIS: posso fare affidamento su di esso online?

8

Mi è stato detto che avrei potuto pubblicare più fortuna qui che su Stack Exchange, quindi ecco qui:

Sto cercando un modo per bloccare un'applicazione di terze parti in IIS. È un servizio web, quindi non c'è una pagina di accesso o altro, è pensato per l'uso in un ambiente VPN. Sto cercando di metterlo online senza una VPN e sto pensando a modi per aggiungere un qualche tipo di sicurezza ad esso. Devo limitarlo a determinate reti, è un prodotto aziendale, quindi posso probabilmente farla franca dicendo che è necessario essere su una rete privata (cioè non pubblica wifi) per usarlo. La mia idea è quella di utilizzare la restrizione degli indirizzi IP in IIS e scrivere un'app che gli utenti installano e aggiornare il server con il loro IP corrente ogni pochi minuti, quindi il server blocca tutti tranne quelli aggiornati di recente.

Quanto sarebbe sicuro? C'è un grosso difetto in questa idea? O c'è forse un modo migliore per farlo in IIS?

modifica: Per chiarire: il software non è modificabile da me. Consiste di alcune applicazioni Web in IIS, ovvero servizi Web WCF. Quindi il computer client ha un programma che si collega a quelli. Non sono in grado di modificare il programma client o il server, sto semplicemente sperando di consentire o negare la connessione iniettando una sorta di misure di sicurezza su IIS, o forse di intercettare i pacchetti in combinazione con il mio software personalizzato che potrebbe essere installato sul PC client per eseguire l'autenticazione.

    
posta RodH257 24.05.2011 - 06:13
fonte

2 risposte

8

In realtà dipende dal modello di minaccia, quanto sono preziose le informazioni e le funzionalità offerte dal servizio web? Che tipo di aggressori e attacchi specifici ti preoccupano?

La restrizione dell'indirizzo IP è la forma più semplice di protezione e in realtà non ti dà alcuna sicurezza. Ad esempio, è banale bypassare tramite un proxy. Inoltre, se autorizzi un indirizzo pubblico aziendale, non hai idea di quali macchine dietro quel NAT si stiano connettendo. Quindi se si tratta fondamentalmente di un servizio pubblico o si sta utilizzando la restrizione dell'indirizzo IP come meccanismo di difesa in profondità per l'autenticazione, allora va bene altrimenti non si ottengono benefici per la sicurezza e potrebbe anche non farlo (per il trade-off in ulteriori gestione e risoluzione dei problemi). Fare in modo che gli utenti installino qualsiasi cosa con la risoluzione dei problemi e il supporto che ciò comporta è generalmente una pessima idea.

Se si tratta di un prezioso servizio Web, il metodo standard per l'autenticazione è:

  • Autenticazione reciproca tramite certificati. link . Ciò fornisce un'autenticazione strong e nessuna password da gestire. Un certificato non può essere bruto-forzato, né indovinato e fornire garanzie alle terze parti che si connettono al servizio originale. Puoi tagliare il costo del certificato usando qualcosa come startsl.com ma devi rilasciare, supportare installare, rinnovare, revocare i certificati

  • Chiave API: l'altro metodo più diffuso è fornire una chiave API per ciascun utente del servizio web. Questa è effettivamente una password e comporta tutti i rischi e i benefici di una password. Hai bisogno di sufficiente lunghezza, complessità, blocco / back-off per mitigare i rischi di forza bruta e indovinare

Sarei molto attento a mettere un servizio web progettato per un ambiente aziendale interno destinato ad essere utilizzato su una VPN su Internet. Suggerirei di sottoporlo a test di sicurezza da una prospettiva applicativa e infrastrutturale prima di farlo. Esiste un'alta probabilità di cross-site scripting, SQL injection e altre comuni vulnerabilità delle applicazioni Web, specialmente se si utilizzano i servizi Web REST.

    
risposta data 24.05.2011 - 11:04
fonte
6

Secondo OWASP Top Ten (si noti che questo collegamento non è l'ultimo perché hanno oscurato il progetto T10 nel tempo) - non si dovrebbe fare affidamento sull'autenticazione basata su indirizzi IP, prefissi IP o nomi DNS. È una pratica pericolosa perché A) non è legata a una singola persona per credenziale, e B) può essere falsificata, ingannata, inoltrata o messa a disposizione degli avversari per usi illegittimi.

Non fare affidamento su credenziali di spoofing come unica forma di autenticazione, come gli indirizzi IP o le maschere dell'intervallo di indirizzi , DNS o ricerche DNS inverse, intestazioni di referrer o simili

    
risposta data 24.05.2011 - 18:24
fonte

Leggi altre domande sui tag