Et åpent verktøy for nettverksovervåking med IoT-enheter
Vi forteller deg hva IoT Inspector er og hvordan den fungerer.
/ bilde Px PD
Om Internet of Things sikkerhet
Hos konsulentfirmaet Bain & Company (PDF, side 1) sier de at fra 2017 til 2021 vil størrelsen på IoT-markedet dobles: fra 235 til 520 milliarder dollar. Andelen av smarte hjem gadgets vil koste 47 milliarder dollar. Informasjonssikkerhetseksperter er bekymret for slike vekstrater.
På ifølge Avast, i 40 % av tilfellene har minst én smartenhet en kritisk sårbarhet som setter hele hjemmenettverket i fare. På Kaspersky Lab har etablert, at smarte gadgets i første kvartal i fjor ble utsatt for tre ganger flere angrep enn i hele 2017.
For å beskytte smarte enheter utvikler ansatte i IT-selskaper og universiteter nye programvareverktøy. Ingeniørteam fra Princeton University opprettet Princeton IoT Inspector åpen plattform. Dette er en skrivebordsapplikasjon som overvåker oppførselen og driften til IoT-enheter i sanntid.
Hvordan systemet fungerer
IoT Inspector overvåker aktiviteten til IoT-enheter på nettverket ved hjelp av teknologi ARP-spoofing. Den kan brukes til å analysere enhetstrafikk. Systemet samler inn anonym informasjon om nettverkstrafikk for å identifisere mistenkelig aktivitet. I dette tilfellet tas det ikke hensyn til data som IP- og MAC-adresser.
class ArpScan(object):
def __init__(self, host_state):
assert isinstance(host_state, HostState)
self._lock = threading.Lock()
self._active = True
self._thread = threading.Thread(target=self._arp_scan_thread)
self._thread.daemon = True
def start(self):
with self._lock:
self._active = True
utils.log('[ARP Scanning] Starting.')
self._thread.start()
def _arp_scan_thread(self):
utils.restart_upon_crash(self._arp_scan_thread_helper)
def _arp_scan_thread_helper(self):
while True:
for ip in utils.get_network_ip_range():
time.sleep(0.05)
arp_pkt = sc.Ether(dst="ff:ff:ff:ff:ff:ff") /
sc.ARP(pdst=ip, hwdst="ff:ff:ff:ff:ff:ff")
sc.sendp(arp_pkt, verbose=0)
with self._lock:
if not self._active:
return
def stop(self):
utils.log('[ARP Scanning] Stopping.')
with self._lock:
self._active = False
self._thread.join()
utils.log('[ARP Scanning] Stopped.')
Etter å ha analysert nettverket, fastslår IoT Inspector-serveren med hvilke nettsteder IoT-gadgets utveksler data, hvor ofte de gjør dette, og i hvilke volumer de sender og mottar pakker. Som et resultat hjelper systemet med å identifisere mistenkelige ressurser som PD kan sendes til uten brukerens viten.
Foreløpig fungerer applikasjonen bare på macOS. Du kan laste ned zip-arkivet på prosjektnettsted. For å installere trenger du macOS High Sierra eller Mojave, Firefox eller Chrome-nettleseren. Appen fungerer ikke i Safari. Installasjons- og konfigurasjonsveiledning tilgjengelig på YouTube.
I år lovet utviklerne å legge til en versjon for Linux, og i mai - en applikasjon for Windows. Prosjektets kildekode er tilgjengelig på GitHub.
Potensielle og ulemper
Utviklerne sier at systemet vil hjelpe IT-selskaper å lete etter sårbarheter i programvaren til IoT-enheter og skape sikrere smartenheter. Verktøyet kan allerede oppdage sikkerhets- og ytelsessårbarheter.
IoT Inspector finner enheter som kommuniserer for ofte, selv når ingen bruker dem. Verktøyet hjelper også med å oppdage smartenheter som bremser nettverket, for eksempel å laste ned oppdateringer for ofte.
IoT Inspector har fortsatt noen mangler. Siden applikasjonen er eksperimentell, har den ennå ikke blitt testet på alle IoT-enheter med forskjellige konfigurasjoner. Derfor kan selve verktøyet ha en negativ innvirkning på ytelsen til smarte dingser. Av denne grunn anbefaler ikke forfatterne å koble applikasjonen til medisinske dingser.
Nå er utviklerne fokusert på å eliminere feil, men i fremtiden planlegger Princeton University-teamet å utvide funksjonaliteten til applikasjonen deres og introdusere maskinlæringsalgoritmer i den. De vil bidra til å øke sannsynligheten for å oppdage DDoS-angrep til 99 %. Du kan bli kjent med alle ideene til forskere i denne PDF-rapporten.
Andre IoT-prosjekter
En gruppe amerikanske utviklere som samarbeider med Danny Goodman, forfatter av bøker om JavaScript og HTML, lager et verktøy for å overvåke tingenes internett-økosystem - Tingsystemet.
Målet med prosjektet er å kombinere smarte hjem IoT-dingser til ett enkelt nettverk og sentralisere kontrollen. Utviklere sier at enheter fra forskjellige produsenter ofte ikke kan kommunisere med hverandre og fungerer separat. For å løse problemet har forfatterne av initiativet laget programvare som kan fungere med forskjellige nettverksprotokoller, gadgets og klientapplikasjoner.
Nok et åpent prosjekt - PrivateEyePi. Forfatterne av initiativet deler programvareløsninger og kildekode for å lage et personlig IoT-nettverk basert på Raspberry Pi. Siden har et stort antall guider som du kan bygge med trådløst nettverk av sensorer temperatur, fuktighet, og også konfigurere hjemmesikkerhetssystem.
/ bilde Px PD
Fremtiden for slike løsninger
Åpen kildekode-prosjekter, biblioteker og rammeverk dukker i økende grad opp på IoT-markedet. Linux Foundation, som også jobber innen IoT-feltet (de opprettet operativsystemet Zephyr), sier de at åpen kildekode-verktøy anses som sikrere. Denne oppfatningen skyldes det faktum at den "kollektive intelligensen" til fellesskapet av informasjonssikkerhetseksperter deltar i deres utvikling. Fra alt dette kan vi konkludere med at prosjekter som IoT Inspector vil dukke opp oftere og oftere og vil bidra til å gjøre dette segmentet av enheter sikrere.
Innlegg fra den første bloggen om bedriftens IaaS: