Domanda:
Come posso proteggere i miei dispositivi connessi a Internet dalla scoperta da parte di Shodan?
Aarthi
2013-04-09 20:35:50 UTC
view on stackexchange narkive permalink

Si è parlato molto di 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 funziona 24 ore su 24, 7 giorni su 7 e raccoglie informazioni su circa 500 milioni di dispositivi e servizi connessi ogni mese.

È incredibile ciò che si può trovare con una semplice ricerca su Shodan. Innumerevoli semafori, telecamere di sicurezza, dispositivi di automazione domestica e sistemi di riscaldamento sono collegati a Internet e facili da individuare.

I ricercatori di Shodan hanno trovato sistemi di controllo per un parco acquatico, una stazione di servizio, una cantinetta di un hotel e un crematorio. I ricercatori sulla sicurezza informatica hanno persino individuato sistemi di comando e controllo per centrali nucleari e un ciclotrone che accelera le particelle utilizzando Shodan.

Ciò che è veramente degno di nota nella capacità di Shodan di trovare tutto questo - e ciò che lo rende così spaventoso - - è che pochissimi di quei dispositivi hanno un qualche tipo di sicurezza incorporata. [...]

Una rapida ricerca di "password predefinita" rivela innumerevoli stampanti, server e dispositivi di controllo del sistema che utilizzano "admin" come nome utente e "1234" come password. Molti altri sistemi connessi non richiedono alcuna credenziale: tutto ciò di cui hai bisogno è un browser Web per connetterti a loro.

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

Come posso (sia come persona "normale" che come professionista) accettare passaggi per impedire che i miei dispositivi siano accessibili da crawler come Shodan? Esistono altri modi per mitigare il rischio di essere scoperti da qualcosa come Shodan?

Sono sicuro che questa domanda potrebbe essere significativamente migliore - per favore modifica liberamente!
"Come posso impedire che i miei dispositivi siano accessibili da Shodan?" <- impedendo loro di essere accessibili a chiunque. (Pensi davvero che Shodan sia l'unico crawler là fuori? E se qualcuno avesse trovato il tuo dispositivo per caso senza l'aiuto di un motore di ricerca?)
Otto risposte:
#1
+89
Tom Leek
2013-04-09 20:42:47 UTC
view on stackexchange narkive permalink

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

Speak Friend and Enter

Basta non farlo.

Modifica: l'analogia è rilevante! Shodan si connette alle macchine e chiede il loro "banner", un testo disponibile pubblicamente che potrebbe semplicemente dire: "per entrare, usa questa password predefinita: 1234". Potresti voler evitare che le persone bussino alla porta con il 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.

Non riesco a decidere se questo merita il +1 per il riferimento LOTR ....
AilifehyapCMT +1-ed..
Se ci siamo, potremmo anche aggiungere alcuni riferimenti a System Shock. Ora non riesco a togliermi dalla mente "L-L-L-Guardati, h-h-hacker ...".
#2
+62
Scott Pack
2013-04-09 20:40:16 UTC
view on stackexchange narkive permalink

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

  1. Configura i tuoi firewall in modo appropriato. - Ciò significa che per qualsiasi servizio fornito, limitarli il più possibile. Se hai solo 5 addetti al marketing che utilizzano la tua applicazione web, non è necessario che il mondo intero la utilizzi. Scopri quale spazio di indirizzi utilizza il marketing e aprilo solo a loro. (Potresti anche voler consentire soluzioni di accesso remoto, ma dipende da te).
  2. Pulisci i tuoi banner. - Molti banner, per impostazione predefinita, forniscono molte 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 impostazioni di configurazione per fornire meno informazioni, ma le specifiche dipenderanno dal servizio che stai ospitando.
  3. Fai in modo che i tuoi firewall si blocchino silenziosamente. Per impostazione predefinita, molti firewall inviano una destinazione ICMP vietata dal punto di vista amministrativo quando rilascia pacchetti. Questo farà sapere allo scanner che c'è qualcosa su quella porta, semplicemente non gli è permesso colpirlo. Attivando la modalità invisibile, silenziosa o qualsiasi altra modalità, le connessioni andranno in timeout alla fine dello scanner. A loro sembrerà che l'host non esista nemmeno.
Avevi detto che _il loro progetto ha scanner che scansionano regolarmente Internet ._ Sei curioso di sapere con quale autorità hanno i diritti per scansionare i dispositivi che sono collegati pubblicamente a Internet?
#3
+40
Manishearth
2013-04-09 21:32:38 UTC
view on stackexchange narkive permalink

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

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

  • Innanzitutto, cambia la password predefinita . Chiunque sia armato di uno strumento di scansione IP (Angry IP Scanner è quello che ho provato) può trovarti se inserisce l'intervallo IP pertinente ed entra con il login admin / admin standard della palude. 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 tua larghezza di banda)
    • Possono impostare il port forwarding e ottenere ai tuoi computer / dispositivi.
    • Possono cambiare il tuo server DNS e reindirizzare la tua navigazione ai loro cloni dannosi di siti web. A meno che il sito non utilizzi SSL, non sarai in grado di sapere che ciò sta accadendo. Tieni presente che SSL sul sito potrebbe non essere sufficiente: la maggior parte delle persone non se ne accorgerebbe se fossero servite versioni http dei loro siti https preferiti.
    • Possono semplicemente rovinare il tuo router
  • Un'altra cosa da fare è disabilitare la gestione remota ( esempio per i router Linksys). Questo 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). Nota che ci sono alcuni casi in cui vorresti attivare questa opzione: l'ho tenuta attiva per brevi periodi di tempo durante i test. Ma di solito non c'è nulla di male a tenerlo fuori.
  • Controlla le tue regole di port forwarding. Anche se risolvi i due precedenti, una porta inoltrata si traduce in una connessione diretta al tuo computer. Nella maggior parte dei casi, non dovresti avere nessuna porta inoltrata. Se sei un giocatore, potresti avere alcune porte specifiche del gioco. (Di solito le porte vengono scelte in modo da non interferire con altri servizi) Assicurati che nulla inoltri alle porte 21,22,3389. Se lo fa, assicurati che le tue password ssh / ftp / desktop remoto siano sicure (o che ssh / ftp / rdp sia 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 tuo firewall. Rendilo il più restrittivo possibile senza rompere le cose.

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

https://superevr.com/blog/2013/dont-use-linksys-routers/ è particolarmente rilevante per la tua pagina informativa di Linksys
@Matt, O almeno non utilizzare il firmware di serie. Il problema di sicurezza riguarda il firmware.
La maggior parte dei router domestici non sono comunque configurati per essere accessibili solo tramite ssh / telnet / http / qualunque cosa dalla sottorete locale? So che un paio di miei non hanno nemmeno consentito l'accesso da parte di utenti wireless sulla sottorete locale.
@naught101: non sono sicuro. Quello che ho a casa (linksys credo) aveva la gestione remota. (sì, puoi anche limitare le funzionalità di gestione a Ethernet sulla maggior parte dei router.)
Quando possono accedere al tuo router, possono cambiare il server DNS da quello standard (dal tuo isp) al proprio. Il tuo computer probabilmente utilizzerà il router come server DNS. Quindi sarà facile fornire malware e virus alla tua rete o ascoltare password, accessi a servizi bancari Internet e altre cose. Puoi installare opendns sul tuo computer per evitarlo, ma ciò non proteggerà il router.
@rxt: Ottimo punto! (Aspetta, lo modifico in). Tieni presente che l'utilizzo di openDNS su _all_ dispositivi collegati al router impedirà che questo sia un problema.
OpenDNS ha DNScrypt, che dovrebbe offrire una sicurezza ancora migliore crittografando il traffico dns tra il tuo computer e opendns. Nessun client Linux ancora credo. Lo uso sul mio Mac. (Quando si accede ad un accesso wifi pubblico, per le pagine di login a volte è necessario disattivarlo finché non si è loggati! Non dimenticare di accenderlo perché soprattutto in queste situazioni è molto utile!) Https: //www.opendns. com / technology / dnscrypt /
#4
+15
Rory McCune
2013-04-09 20:40:25 UTC
view on stackexchange narkive permalink

Quindi la risposta breve è che se stai fornendo un servizio disponibile al pubblico (ad es. a Internet in generale) il tuo servizio deve essere accessibile e quindi i motori di ricerca come shodan possono trovarlo e tutti gli shodan lo fanno per indicizzare pubblicamente informazione.

Quello che puoi fare è ridurre al minimo le informazioni che shodan trova, rimuovendo i banner dai servizi accessibili e assicurandoti anche che cose come le credenziali predefinite vengano rimosse (buona pratica di sicurezza standard).

Anche se il servizio che hai in esecuzione non ha bisogno di essere accessibile da tutta Internet (cioè solo alcune persone devono essere in grado di accedervi), l'uso di firewall per limitare gli indirizzi IP di origine che possono raggiungere il servizio è anche una protezione efficace contro la scoperta da parte di cose come Shodan.

Un'altra protezione teorica (che direi è un cattivo approccio ma per completezza menzionerò) è che se potessi trovare gli intervalli di indirizzi IP utilizzati da shodan, potresti prova a bloccarlo in modo specifico.

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

Un'altra cosa da menzionare è che anche bloccare cose come shodan non lo sarebbe aiutarvi contro cose come il progetto Internet Census avvenuto lo scorso anno. Ciò ha utilizzato un gran numero di sistemi compromessi per eseguire la scansione dell'intera Internet. L'output del progetto è disponibile come torrent e sarei pronto a scommettere che molti ricercatori e aggressori stanno attualmente cercando nei dati le cose da attaccare (che probabilmente troveranno)

Il mio primo pensiero quando ho letto del Grande censimento è stato "Mi chiedo quante tesi di master possono emergere dall'analisi di quel set di dati".
#5
+12
user2213
2013-04-09 20:43:08 UTC
view on stackexchange narkive permalink

un motore di ricerca in grado di trovare e consentire l'accesso a dispositivi connessi a Internet non protetti.

La vera domanda con Shodan è perché questi dispositivi siano collegati a Internet in primo luogo . Ciò non scusa la necessità di modificare le informazioni di configurazione predefinite, ma lasciare la stampante accessibile a tutti è semplicemente sciocco.

Esiste una misura di sicurezza che puoi utilizzare contro questo tipo di cosa - VPN per lavoratori remoti e un firewall. È una risorsa aziendale, quindi richiedi agli utenti di connettersi effettivamente alla rete aziendale con tutte le restrizioni che ciò implica. Non farlo significa che non hai idea di chi accede a un dispositivo sulla tua rete. Metti il ​​dispositivo dietro un firewall e fai in modo che gli utenti accedano.

Quindi, in caso di errore numero due - questo è ragionevolmente ovvio - modifica quelle impostazioni predefinite. La maggior parte delle organizzazioni ha un qualche tipo di politica di gestione per le risorse e ciò dovrebbe includere la gestione delle credenziali di accesso per loro, specialmente se saranno sulla rete. Il dispositivo deve essere configurato in modo sicuro.

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

Infine, puoi (e secondo me dovresti) nascondere le informazioni dai server, ad es. Stringhe di versione di Apache. Questo non scuserà né sostituirà una corretta configurazione di sicurezza e un software aggiornato diligentemente, ma non c'è motivo di dire all'autore dell'attacco tutto sul tuo sistema.

#6
+4
Johnny
2013-04-10 00:39:35 UTC
view on stackexchange narkive permalink

Se disponi di alcuni servizi che desideri esporti a te stesso su un IP pubblico ma desideri nasconderli al resto del mondo, puoi utilizzare port knocking per nascondere i dispositivi dalla porta generale esegue la scansione rendendoli comunque accessibili senza una connessione VPN a qualcuno che sa come bussare. Ho diverse webcam domestiche a cui occasionalmente vorrei poter accedere dal lavoro, ma il firewall al lavoro non mi consente di avviare una VPN per il mio firewall domestico.

Quindi, "busso" 3 porte sul firewall di casa mia e consente le connessioni dall'IP che colpisce alle telecamere.

Il bussare alla porta è una sicurezza piuttosto debole da parte di qualcuno determinato a violare nella tua rete poiché i colpi vengono facilmente rilevati (i knocks sono effettivamente una password inviata in testo normale), ma forzare le porte è quasi impossibile anche se un utente malintenzionato sapeva che era in uso il port knocking: 3 porte casuali forniscono circa 48 bit di entropia della password, quindi è abbastanza sicuro da un hacker casuale. Una VPN sarebbe più sicura poiché crittografa tutto.

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

Ci sono molte più informazioni sui pro / contro del portknock 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'attaccante può ottenere l'hash, può eseguire un attacco offline e testare milioni o trilioni di combinazioni al secondo. Tuttavia, poiché qualsiasi attacco di forza bruta che colpisce la porta è limitato dalla latenza di rete e dai vincoli di larghezza di banda, 48 bit è ancora abbastanza entropia. Per forzare con successo una password, in media dovresti fare N / 2 ipotesi dove in questo caso N = 2 ^ 48 quindi N / 2 = 2 ^ 47

Ogni ipotesi significa inviare 3 syn pacchetti per battere sulle 3 porte, quindi supponendo 60 byte per un pacchetto SYN, dovresti inviare 2 ^ 47 * 3 * 60 = 2,5 x 10 ^ 16 byte o 22 petabyte.

Utilizzando la mia connessione Internet domestica da 15 Mbit, ci vorrebbero 510 anni per inviare così tanti dati.

E questo ignora la latenza di rete, se potessi inviare il colpo e testare immediatamente il tuo colpo con 1 msec di latenza (la tipica latenza del ping del mondo reale dalla mia rete domestica al primo salto fuori dalla rete del mio ISP è di 13 msec), ci vorrebbero 2 ^ 47 msec o 4.000 anni per forzarlo.

E, naturalmente, tutto questo presuppone che tu possa fare ipotesi illimitate prima che il demone port knock ti ignori o prima che mi accorgessi che qualcosa stava consumando tutta la mia larghezza di banda in entrata (il mio ISP se ne accorgerebbe e mi strozzerebbe)

E ignora anche che sapere se hai avuto un colpo di successo aggiunge entropia da solo se non sai quale porta controllare - le mie telecamere ascoltano su alcune porte non ovvie, in modo che annunci altri 16 bit circa di entropia .

Quindi, come ho detto, il port knocking è una sicurezza debole poiché è facilmente annusato, ma non è facilmente forzato.

48 bit di entropia delle password non sono poi così tanti. Dopo tutto, "abcdefghij" vale ~ 50.
"abcdefghij" vale 50 o 0 o qualsiasi altra cosa, a seconda del contesto. L'entropia è una proprietà del modo in cui generi le password, non della password stessa.
#7
+2
AJ Henderson
2013-04-09 20:48:12 UTC
view on stackexchange narkive permalink

Assicurati semplicemente che i tuoi dispositivi siano protetti e non pubblicizzare la loro presenza se non è necessario. Puoi utilizzare servizi come ShieldsUp di Gibson research per verificare facilmente se hai porte sulla tua connessione di rete che rispondono ai servizi dall'Internet pubblica.

Se hai qualcosa che mostra che non funziona non è necessario, disabilitare il servizio e bloccare la porta del router. Se hai bisogno del servizio, assicurati che sia adeguatamente protetto in modo che non possa essere facilmente abusato. Non c'è molto che si può fare sul fatto che i servizi rivolti al pubblico che devono rispondere alle richieste saranno rilevabili dalle scansioni delle porte. Cercare di evitarlo è un po 'come cercare di evitare che qualcuno sappia dove si trova il tuo negozio quando può semplicemente guidare per strada e guardare il cartello.

Puoi provare a rimuovere il cartello (rimuovi i banner , cambiare le porte predefinite, ecc.) per cercare di rendere più difficile per qualcuno riconoscere ciò che fa il negozio (che cos'è il servizio), ma non puoi davvero nascondere il fatto che c'è un edificio nel lotto (un servizio sul porto ).

Suggerire l'uso delle cose di Gibson per qualcosa di diverso dal deridere è un reato di tiro.
ShieldsUp funziona in modo decente, però non toccherei quasi nessuna delle sue altre cose.
@AJHenderson ShieldsUp è bacato e tende ad avere risultati imprecisi.
@forest non che io non ti creda, ma hai qualche informazione aggiuntiva in merito?Non ho mai notato problemi con esso e sono curioso di sapere quali problemi ha.Hai suggerimenti per un'alternativa?Ho detto che è solo un possibile esempio di port scanner online.
@AJHenderson Ne ho letto in diversi post qui a Sec.SE.Non l'ho usato io stesso perché GRC è un venditore di olio di serpente.
#8
+1
Dwight Spencer
2014-06-15 09:59:06 UTC
view on stackexchange narkive permalink

La migliore difesa che potrebbe mai essere offerta per proteggersi dalle scansioni shodan è la stessa di qualsiasi altra scansione.

  • Configura correttamente il tuo software, HIPS e firewall
  • Costruisci i tuoi server in modo che vengano eseguiti all'interno dei contenitori (ad esempio jail bsd / contenitori linux / sandboxie di Windows).
  • Assicurati che non ci siano versioni vulnerabili del software in esecuzione sul server
  • Limite di velocità connessioni abusive (cioè connessioni avviate da persone non umane che si aprono in una piccola finestra)
  • Elimina qualsiasi banner del server offerto dal tuo software
  • Infine, Null Instrada tutti gli indirizzi IP abusivi. Vale a dire quelli di shodan e altri elencati su RBL.

La risposta ovvia è la prima, suite di sicurezza aggiornata e software ben configurato in esecuzione con le ultime patch di sicurezza. Anche se questa è la norma comune in questi giorni, non è diverso dal lanciare il tuo sistema ai lupi con una torcia. Tutta la sicurezza (nel corso della storia nel mondo reale e nel mondo virtuale) è costruita su livelli.

Se costruisci il tuo sistema per funzionare in un ambiente simile a sandbox, se qualcosa va storto puoi tornare a una versione funzionante precedente al problema e analizzare cosa è andato storto da lì. Questo ha anche l'ulteriore vantaggio di essere un server agile in cui se un bug viene introdotto per qualsiasi motivo, dannoso o meno, puoi semplicemente tornare a una versione funzionante in pochi istanti e non avere tempi di inattività.

La semplice limitazione della velocità e l'eliminazione dei banner e qualsiasi altro tratto identificativo rende più difficile enumerare i server o raccogliere informazioni, che è il primo passo nella penitrazione.

Infine, l'instradamento nullo e l'uso di RBL aiutano a isolare ben noti indirizzi IP abusivi come noti nodi di malware / botnet, utenti abusivi / malintenzionati e siti di hacking-as-a-Service come shodan.

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



Questa domanda e risposta è stata tradotta automaticamente dalla lingua inglese. Il contenuto originale è disponibile su stackexchange, che ringraziamo per la licenza cc by-sa 3.0 con cui è distribuito.
Loading...