Come posso proteggere i miei dispositivi connessi a Internet dalla scoperta di Shodan?

94

C'è stato molto buzz intorno a questo recente articolo della CNN su Shodan, un motore di ricerca in grado di trovare e consentire l'accesso a dispositivi connessi a Internet non protetti.

Shodan runs 24/7 and collects information on about 500 million connected devices and services each month.

It's stunning what can be found with a simple search on Shodan. Countless traffic lights, security cameras, home automation devices and heating systems are connected to the Internet and easy to spot.

Shodan searchers have found control systems for a water park, a gas station, a hotel wine cooler and a crematorium. Cybersecurity researchers have even located command and control systems for nuclear power plants and a particle-accelerating cyclotron by using Shodan.

What's really noteworthy about Shodan's ability to find all of this -- and what makes Shodan so scary -- is that very few of those devices have any kind of security built into them. [...]

A quick search for "default password" reveals countless printers, servers and system control devices that use "admin" as their user name and "1234" as their password. Many more connected systems require no credentials at all -- all you need is a Web browser to connect to them.

Mi sembra che alcuni di questi dispositivi siano stati protetti apparentemente ma non sono effettivamente protetti perché le password, ecc., sono ovvie e / o invariate rispetto alle impostazioni predefinite.

Come posso (sia come persona "normale" che professionale) prendere provvedimenti per impedire che i miei dispositivi siano accessibili ai crawler come Shodan? Ci sono altri modi per mitigare il mio rischio di scoperta da qualcosa come Shodan?

    
posta Aarthi 09.04.2013 - 17:35
fonte

8 risposte

90

Shodan fa riferimento a macchine disponibili pubblicamente che funzionano in questo modo:

Nonfarlo.

Modifica:l'analogiaèpertinente!Shodansiconnetteallemacchineechiedeilloro"banner", un testo pubblicamente disponibile che può semplicemente dire: "per entrare, usa questa password predefinita: 1234". Potresti voler evitare che qualcuno bussa alla porta dal semplice espediente di installare un calamaro gigante come guardia davanti alla porta (metaforicamente, un firewall), ma, in realtà, sarebbe molto più sicuro configurare una password non predefinita.

    
risposta data 09.04.2013 - 17:42
fonte
63

Il progetto Shodan è piuttosto interessante, ma al suo interno non è molto più di un grande database honkin nmap. Il progetto dispone di scanner che eseguono regolarmente la scansione di Internet e pubblicano i risultati nel database. Quel database è ciò che stai cercando. Poiché utilizzano routine di rilevamento standard, le protezioni che inseriresti per una scansione normale dovrebbero proteggerti qui.

  1. Configura i tuoi firewall in modo appropriato. - Questo significa per tutti i servizi che offri, limitandoli il più possibile. Se hai solo 5 persone dal marketing usando la tua applicazione web, allora non c'è bisogno che il mondo intero la usi. Scopri quale indirizzo spaziale utilizza il marketing e aprilo solo a loro. (Puoi anche consentire le soluzioni di accesso remoto, ma dipende da te).
  2. ripulisci i tuoi banner. - Molti banner, per impostazione predefinita, forniscono informazioni. Ad esempio, per impostazione predefinita Apache httpd ti dirà di che versione è, su quale sistema operativo è in esecuzione, quali moduli ha abilitato, ecc. Questo è davvero abbastanza inutile. Apache httpd ha le impostazioni di configurazione per fornire meno informazioni, ma le specifiche dipenderanno dal servizio che stai ospitando.
  3. Fai bloccare i tuoi firewall in modo silenzioso. Per impostazione predefinita, molti firewall inviano una destinazione ICMP vietata dal punto di vista amministrativo quando cade i pacchetti. Questo permetterà allo scanner di sapere che qualcosa esiste su quella porta, semplicemente non gli è permesso di colpirlo. Attivando la modalità invisibile, silenziosa o in qualsiasi modo, le connessioni si interrompono solo alla fine dello scanner. Per loro questo sembrerà che l'host non esiste nemmeno.
risposta data 09.04.2013 - 17:40
fonte
40

Per la maggior parte degli utenti domestici, l'unico dispositivo con connessione Internet è il loro router.

Quindi, come si protegge il router da cose come Shodan?

  • In primo luogo, cambia la password predefinita . Chiunque sia munito di uno strumento di scansione IP (Angry IP Scanner è quello che ho provato) può trovarti se immette l'intervallo IP pertinente e si interrompe con il login standard admin/admin di bog. Cosa possono fare se hanno questo accesso?
    • Possono ottenere la password della tua connessione a banda larga (e in alcuni casi iniziare a rubare la larghezza di banda)
    • Possono configurare il port forwarding e accedere ai tuoi computer / dispositivi.
    • Possono cambiare il tuo server DNS e reindirizzare la tua navigazione verso i loro cloni malevoli di siti web. A meno che il sito non usi SSL, non sarai in grado di sapere che questo sta accadendo. Tieni presente che SSL sul sito potrebbe non essere sufficiente: la maggior parte delle persone non si accorgerebbe se sono state pubblicate versioni http dei loro siti https preferiti.
    • Possono solo rovinare il tuo router
  • Un'altra cosa da fare è disabilitare la gestione remota ( esempio per i router Linksys ). Ciò nasconde le pagine di configurazione del router al mondo esterno, quindi le persone non possono entrare anche se provano la forzatura bruta. (Inoltre, non verrai visualizzato in una scansione IP a meno che tu non abbia il port forwarding). Si noti che ci sono alcuni casi in cui si vorrebbe questa opzione - l'ho mantenuta attiva per brevi periodi di tempo durante i test. Ma di solito, non c'è pericolo di tenerlo fuori.
  • Controlla le tue regole di port forwarding. Anche se correggi i due precedenti, una porta inoltrata si tradurrà in una connessione diretta al tuo computer. Nella maggior parte dei casi, non dovresti avere alcuna porta inoltrata. Se sei un giocatore, potresti avere alcune porte specifiche per il gioco. (Di solito le porte sono scelte in modo da non interferire con altri servizi) Assicurati che non arrivi nulla alle porte 21,22,3389. In tal caso, assicurarsi che le password del desktop ssh / ftp / remoto siano protette (o ssh / ftp / rdp è disabilitato). Probabilmente ci sono altre porte che forniscono un modo semplice per prendere il controllo della macchina, ma non riesco a pensare a nessun OTOH.

Sul computer, controlla il firewall. Rendilo il più restrittivo possibile senza rompere le cose.

Si noti che per fermare Shodan specificamente per un sistema domestico, è necessario solo il punto 1 o 2. Tuttavia, ho elencato il resto in quanto Shodan potrebbe facilmente migliorarsi per analizzare ulteriormente le connessioni del router.

    
risposta data 09.04.2013 - 18:32
fonte
15

Quindi la risposta breve è che se stai fornendo un servizio pubblicamente disponibile (ad esempio Internet generale) il tuo servizio deve essere accessibile e quindi i motori di ricerca come shodan possono trovarlo, e tutto lo shodan lo fa per indicizzare pubblicamente informazione.

Quello che puoi fare è minimizzare le informazioni che shodan trova, rimuovendo i banner dai servizi accessibili e assicurando anche che cose come le credenziali predefinite siano rimosse (standard di buona pratica di sicurezza).

Inoltre, se il servizio in esecuzione non ha bisogno di essere accessibile da tutta Internet (cioè solo alcune persone devono poterlo accedere), usando i firewall per limitare quali indirizzi IP di origine possono raggiungere il servizio è anche un protezione efficace contro la scoperta da parte di cose come Shodan.

Un'altra protezione teorica (che direi un approccio errato, ma per completezza che citerò) è che se si riescono a trovare gli intervalli di indirizzi IP utilizzati da shodan, si può provare a bloccarlo in modo specifico.

I rischi che fanno sembrare "spaventoso" lo shodan sono che ci sono un numero enorme di sistemi che sono stati collocati su Internet con impostazioni predefinite e con pochissima attenzione alla sicurezza. Sfortunatamente le persone che collocano i sistemi su Internet in questo stato sono improbabili che siano abbastanza consapevoli della sicurezza da intraprendere azioni come il blocco specifico di shodan ...

Un'altra cosa da ricordare è che persino il blocco di cose come shodan non ti aiuterà contro cose come il Censimento su Internet progetto che è successo l'anno scorso. Questo ha utilizzato un gran numero di sistemi compromessi per scansionare l'intera Internet. L'output del progetto è disponibile come torrent e sarei disposto a scommettere che molti ricercatori e aggressori stanno attualmente esaminando i dati per le cose da attaccare (che probabilmente troveranno)

    
risposta data 09.04.2013 - 17:40
fonte
12

a search engine that can find and allow access to unsecured internet-connected devices.

La vera domanda con Shodan è il motivo per cui questi dispositivi sono rivolti verso Internet in primo luogo. Questo non giustifica la necessità di modificare le informazioni di configurazione predefinite, ma lasciare la tua stampante accessibile in tutto il mondo è semplicemente sciocco.

C'è una misura di sicurezza che puoi usare contro questo genere di cose: VPN per i lavoratori remoti e un firewall. È una risorsa aziendale, quindi richiede agli utenti di connettersi effettivamente alla rete aziendale con tutte le restrizioni che ciò comporta. Non farlo significa che non hai idea di chi sia l'accesso a un dispositivo sulla tua rete. Metti il dispositivo dietro un firewall e fai accedere gli utenti.

Quindi, in caso di errore numero due - questo è abbastanza ovvio - cambia quelle predefinite. La maggior parte delle organizzazioni ha una sorta di politica di gestione per le risorse e dovrebbe includere la gestione delle credenziali di accesso a tali server, soprattutto se saranno presenti sulla rete. Il dispositivo deve essere configurato in modo sicuro.

Se non è possibile configurare il dispositivo in modo sicuro a causa di alcuni bug introdotti dal produttore, il motore ci sta facendo un favore esponendolo - questo farà pressione su queste aziende per risolvere i loro problemi.

Infine, puoi (e secondo me dovrebbe) nascondere le informazioni dai server, ad es. Stringhe di versione Apache. Ciò non scuserà né sostituirà una corretta configurazione di sicurezza e un software diligentemente aggiornato, ma non c'è motivo di dire all'aggressore tutto ciò che riguarda il tuo sistema.

    
risposta data 09.04.2013 - 17:43
fonte
4

Se hai alcuni servizi che vuoi esporre a te stesso su un IP pubblico ma desideri nasconderli dal resto del mondo, puoi usare port knocking per nascondere i dispositivi dalle scansioni generali delle porte, pur continuando a renderli accessibili senza una connessione VPN a qualcuno che sa bussare. Ho diverse webcam domestiche che a volte desidero poter accedere dal lavoro, ma il firewall al lavoro non mi consente di avviare una VPN sul mio firewall di casa.

Quindi, "knock" 3 porte sul mio firewall di casa e consente le connessioni dall'IP knocking alle telecamere.

Il bussare dei porti è una sicurezza piuttosto debole da parte di qualcuno determinato a entrare nella rete poiché gli urti sono facilmente annusati (gli urti sono effettivamente una password inviata in testo normale), ma la forzatura bruta delle porte è quasi impossibile anche se un utente malintenzionato sapeva che il knock-out era in uso - 3 porte casuali forniscono circa 48 bit di entropia della password, quindi è abbastanza sicuro da un hacker casuale. Una VPN sarebbe più sicura dato che crittografa tutto.

Inoltre, dal momento che funziona a livello IP, una volta che ho sbloccato le porte dall'indirizzo IP del mio lavoro, tutti al lavoro possono accedervi poiché condividono tutti lo stesso indirizzo IP. (sono fuori dalle telecamere di una DMZ che di solito uso per controllare il cane, quindi non sono troppo preoccupato per qualcuno al lavoro a vederli, ma non voglio che il mondo intero li veda)

Ci sono molte più informazioni sui pro / contro del portknocking qui:

Un commentatore ha notato che 48 bit di entropia non sono molti, il che è vero con qualcosa come una password in cui se l'hacker può ottenere l'hash, può eseguire un attacco offline e testare milioni o trilioni di combinazioni al secondo. Tuttavia, dal momento che qualsiasi attacco di forza bruta di port knocking è limitato dalla latenza di rete e dai vincoli di larghezza di banda, 48 bit sono ancora un bel po 'di entropia. Per forzare con successo una password, in media bisognerebbe fare supposizioni N / 2 dove in questo caso N = 2 ^ 48 quindi N / 2 = 2 ^ 47

Ogni ipotesi indica l'invio di 3 pacchetti syn per bussare alle 3 porte, quindi supponendo 60 byte per un pacchetto SYN, è necessario inviare 2 ^ 47 * 3 * 60 = 2,5 x 10 ^ 16 byte o 22 petabyte .

Usando la mia connessione internet a 15mbit, ci vorrebbero 510 anni per inviare tanti dati.

E questo ignora la latenza della rete, se riesci a mandare il colpo e prova immediatamente il tuo battito con 1 msec di latenza (la latenza tipica del ping del mondo reale dalla mia rete domestica al primo salto dalla rete del mio ISP è 13msec), prenderebbe 2 ^ 47 msec, o 4000 anni per forzare la forza.

E ovviamente, tutto questo presuppone che tu possa fare congetture illimitate prima che il demone di port knock ti ignori o prima ho notato che qualcosa stava consumando tutta la mia larghezza di banda in entrata (il mio ISP avrebbe sicuramente notato e mi avrebbe rallentato)

E ignora anche il fatto che sapere se hai avuto un colpo con successo aggiunge entropia da sola se non sai quale porta controllare - le mie macchine fotografiche ascoltano su alcune porte non ovvie, in modo che pubblichi altri 16 bit circa di entropia.

Quindi, come ho detto, il knockoff delle porte è una sicurezza debole poiché è facilmente annusabile, ma non è facilmente forzato brutale.

    
risposta data 09.04.2013 - 21:39
fonte
2

Assicurati semplicemente che i tuoi dispositivi siano sicuri e non pubblicizzare la loro presenza se non ne hanno bisogno. Puoi utilizzare servizi come ShieldsUp di ricerca di Gibson per controllare facilmente se hai delle porte sulla tua connessione di rete che rispondono ai servizi da internet pubblico.

Se hai qualcosa che mostra che non è necessario, disattiva il servizio e blocca la porta sul tuo router. Se hai bisogno del servizio, assicurati che sia adeguatamente protetto in modo che non possa essere facilmente abusato. Non c'è molto che si possa fare sul fatto che i servizi pubblici che devono rispondere alle richieste saranno individuabili tramite scansioni di porte. Cercare di evitarlo è come cercare di evitare che qualcuno sappia dove si trova il tuo negozio quando può semplicemente guidare per strada e osservare il cartello.

Puoi provare a rimuovere il segno (rimuovere banner, cambiare porte predefinite, ecc.) per cercare di rendere più difficile per qualcuno riconoscere ciò che fa il negozio (qual è il servizio), ma non puoi nascondere il Infatti c'è un edificio sul lotto (un servizio sul porto).

    
risposta data 09.04.2013 - 17:48
fonte
1

La migliore difesa che potrebbe mai essere offerta per proteggere contro le scansioni shodan è la stessa di qualsiasi altra scansione.

  • Configura correttamente il tuo software, HIPS e firewall
  • Costruisci i tuoi server per l'esecuzione all'interno dei contenitori (ovvero bsd jail / linux containers / windows sandboxie).
  • Assicurarsi che non ci siano versioni vulnerabili del software in esecuzione sul server
  • Connessioni abusive limite di frequenza (cioè connessioni non avviate dall'uomo che fanno il picco in una piccola finestra)
  • Elimina i banner server offerti dal tuo software
  • Infine, Null Route tutti gli indirizzi IP abusivi. Vale a dire quelli di Shodan e altri elencati su RBL.

La risposta ovvia è la prima, la suite di sicurezza aggiornata e il software ben configurato in esecuzione con le ultime patch di sicurezza. Mentre questo è la norma comune in questi giorni non è diverso dal semplice lancio del tuo sistema ai lupi con una torcia. Tutta la sicurezza (attraverso la storia nel mondo reale e nel mondo virtuale) è costruita su livelli.

Se si costruisce il sistema per l'esecuzione in un ambiente simile a una sandbox, se qualcosa va storto è possibile eseguire il rollback a una versione funzionante prima del problema e analizzare cosa è andato storto da lì. Questo ha anche il vantaggio di essere un server agile in cui, se viene introdotto un bug per qualsiasi motivo, dannoso o meno, puoi semplicemente tornare a una versione funzionante in pochi istanti e non avere tempi morti.

Valutare semplicemente la limitazione ed eliminare i banner e qualsiasi altro tratto identificativo rende più difficile enumerare i server o raccogliere informazioni che sono il primo passo nella penitenza.

Infine, il routing e l'uso nulli delle RBL aiutano a rimuovere indirizzi IP abusivi noti come malware / botnet, utenti abusivi / malintenzionati e siti di Hacking-as-a-Service come shodan.

Se ti attieni a queste regole, Internet non è più un posto spaventoso, dato che hai già sconfitto i "barbari" prima ancora che mettessero i siti sul tuo server.

    
risposta data 15.06.2014 - 06:59
fonte

Leggi altre domande sui tag