Home Assistant patcht Supervisor-bug die toegang tot installaties mogelijk maakt

Home Assistant heeft een update uitgebracht voor de Supervisor, het onderliggende systeem van het smarthomeplatform. In die update wordt een ernstige kwetsbaarheid gerepareerd waarmee aanvallers op afstand en zonder authenticatie een systeem konden overnemen.

De kwetsbaarheid staat geregistreerd als CVE-2023-27482. De makers van Home Assistant schrijven dat die kwetsbaarheid in alle versies van Home Assistant Core ouder dan 2023.3.0 en specifiek in Home Assistant Supervisor 2023.03.1 zit. In de nieuwste versie van Core is een mitigatie voor de bug ingebouwd. Voor de Supervisor is er een patch uitgebracht. De patch is inmiddels uitgerold naar alle gebruikers, die hun OS afhankelijk van hun installatie wel zelf nog moeten bijwerken. De Core-update, waar de bug gemitigeerd is, kwam op 1 maart al uit en is volgens de makers sindsdien op 33 procent van alle installaties doorgevoerd.

De bug kon alleen worden uitgebuit op installaties van Home Assistant OS en Home Assistant Supervised. Installaties in Docker bevatten geen Supervisor, waardoor de bug daar niet kon worden misbruikt.

Home Assistant geeft niet veel details over de aard van de kwetsbaarheid. De ontwikkelaars schrijven alleen dat de bug een authenticatieomzeiling mogelijk maakte waardoor een aanvaller op afstand een complete installatie kon overnemen. Dat kon via de Supervisor-api, maar hoe dat werkt is niet bekend. De bug is volgens de makers ernstig; hij krijgt een score van 10.0, waarschijnlijk vanwege de potentiële impact.

Door Tijs Hofmans

Nieuwscoördinator

08-03-2023 • 17:39

129 Linkedin

Submitter: Ryan_

Reacties (129)

129
121
46
6
0
67
Wijzig sortering
Wederom een goede reden om nooit je Home Assistant setup naar buiten te routen via een port-forward maar gewoon een VPN te gebruiken om bij je thuis installatie te kunnen.
Er zijn uiteraard meerdere wegen naar Rome. Ik vind jouw conclusie dan ook te kort door de bocht. Ik kan het bijvoorbeeld niet aan mijn gezin verkopen dat ze specifiek een VPN app moeten installeren en draaiend moeten houden wanneer ze Home Assistant willen gebruiken. Buiten dat ik dat zelf ook vet onhandig vind.

Maar voor mijn installatie gebruik ik onder andere Cloudflare om eenvoudig hele geografische regio's te blokkeren die sowieso niets te zoeken hebben in mijn HA instance. Dat scheelt al ontzettend veel. Daarnaast heb ik een reverse proxy voor Home Assistant zitten zodat ik daar ook nog het e.e.a. kan monitoren en blokkeren. Of zoals @AJediIAm aangeeft kun je Nabu Casa afnemen om dit uit te besteden.

Eigenlijk ben ik van mening dat een roll your own auth bij een project zoals Home Assistant simpelweg niet op z'n plaats is. Ik vind dat Home Assistant externe auth providers moet gaan ondersteunen. Bijvoorbeeld door middel van OAuth2 of OpenID Connect. Dan zou je namelijk heel erg eenvoudig een andere vorm van authenticatie voor Home Assistant kunnen zetten. Bijvoorbeeld Keycloak of Cloudflare Access.
Het probleem was dat authenticatie hier juist niet het probleem was. Er zat een bug in de supervisor waardoor je toegang kreeg zonder authenticatie.

Dat probleem neem je alleen weg door externe toegang niet toe te staan. Ook het verbieden van (bijvoorbeeld) China is niet voldoende. Ten eerste is het probleem niet opgelost, ten tweede is het natuurlijk zeer eenvoudig om te spoofen waar men vandaan komt (bijvoorbeeld door een andere installatie te gebruiken als pivot of onderdeel van een bot netwerk).

VPNs zijn zeer eenvoudig in gebruik, mits je even de tijd neemt om het een en ander goed in te stellen. (Ze zijn ook zeker niet "roll your own auth", dat is echt iets compleet anders)
Ook mijn vrouw maakt gebruik van onze VPN om naar huis te verbinden, met slechts 1 tik is ze verbonden.

[Reactie gewijzigd door OverSoft op 8 maart 2023 20:34]

Dat probleem neem je alleen weg door externe toegang niet toe te staan. Ook het verbieden van (bijvoorbeeld) China is niet voldoende. Ten eerste is het probleem niet opgelost, ten tweede is het natuurlijk zeer eenvoudig om te spoofen waar men vandaan komt (bijvoorbeeld door een andere installatie te gebruiken als pivot of onderdeel van een bot netwerk).
Je hebt 100% gelijk, maar dit is ook wel ver gezocht. Dan kun je ook het punt maken dat je geen VPN software moet installeren omdat de VPN provider je dan kan hacken. Overal zitten risico's aan, en de risico's verminderen - op welke manier dan ook - is voor mij gewoon prima in orde.
VPNs zijn zeer eenvoudig in gebruik, mits je even de tijd neemt om het een en ander goed in te stellen.
Ook mijn vrouw maakt gebruik van onze VPN om naar huis te verbinden, met slechts 1 tik is ze verbonden.
Ik weet hoe eenvoudig het is, maar dan vind ik het nog steeds onprettig werken. Als je bijvoorbeeld de VPN vergeet werkt live locatie ook niet meer. Het werkt nu prima en is volgens mij veilig genoeg.
Je hebt 100% gelijk, maar dit is ook wel ver gezocht. Dan kun je ook het punt maken dat je geen VPN software moet installeren omdat de VPN provider je dan kan hacken. Overal zitten risico's aan, en de risico's verminderen - op welke manier dan ook - is voor mij gewoon prima in orde.
Ik heb geen VPN provider, ik draai mijn eigen VPN server. En uiteraard kunnen er bugs zitten in OpenVPN, maar dat is zo'n beetje de meest gebruikte VPN server op aarde, dus daar zijn de bugs aardig uitgestreken (en snel gepatched in het geval dat deze gevonden worden).
Ik weet hoe eenvoudig het is, maar dan vind ik het nog steeds onprettig werken. Als je bijvoorbeeld de VPN vergeet werkt live locatie ook niet meer. Het werkt nu prima en is volgens mij veilig genoeg.
Live locatie werkt prima met VPN hoor? Dat gebruikt GPS en geen netwerk access?

Uiteraard moet je zelf de afweging maken wat je veilig genoeg vindt. Maar echt veilig is poorten openzetten dus niet.
En uiteraard kunnen er bugs zitten in OpenVPN, maar dat is zo'n beetje de meest gebruikte VPN server op aarde, dus daar zijn de bugs aardig uitgestreken (en snel gepatched in het geval dat deze gevonden worden).
Waarom OpenVPN wel vertrouwen dan en Home Assistant niet? Dat lijkt mij gewoon vreemd. Bugs worden ook razendsnel gepatched in het geval dat deze gevonden worden.
Live locatie werkt prima met VPN hoor? Dat gebruikt GPS en geen netwerk access?
Live locatie sturen naar Home Assistant. Als de VPN vergeten wordt, werkt dit dus niet meer.
Maar echt veilig is poorten openzetten dus niet.
Die conclusie blijft echt veel te kort door de bocht. Jij zet immers met jouw VPN software ook een of meerdere poorten open.
Waarom OpenVPN wel vertrouwen dan en Home Assistant niet? Dat lijkt mij gewoon vreemd. Bugs worden ook razendsnel gepatched in het geval dat deze gevonden worden.
Omdat OpenVPN veel meer gebruikt wordt en onder de loep ligt dan Home Assistant.
Live locatie sturen naar Home Assistant. Als de VPN vergeten wordt, werkt dit dus niet meer.
Ah, dat gebruik ik niet, dus dat zou dan de enige reden zijn.
Die conclusie blijft echt veel te kort door de bocht. Jij zet immers met jouw VPN software ook een of meerdere poorten open.
1 poort. Er staat 1 poort open naar een van de werelds meest bekeken/bestudeerde/onderzochte stukjes software.

En ja, ik vertrouw OpenVPN 100x meer dan Home Assistant.
Niemand gaat dit argument ‘winnen’. Beide oplossingen zouden gewoon ondersteund moeten zijn. Beide oplossingen hebben tevens hun eigen voor en tegen argumenten. OpenVPN heeft ook een problematisch verleden (daarom is men met wireguard begonnen).

En ja, ik vertrouw OpenVPN 100x meer dan Home Assistant.
Het maakt niet uit wie je meer of minder vertrouwd. Dit is het internet en het enige wat werkt is helaas zero-trust in al je lagen van beveiliging. En snel reageren, wat HA hier goed doet…
Natuurlijk maakt het wel uit wie je meer vertrouwt. Dat is namelijk de oplossing waar je persoonlijk voor gaat.

Zero-trust is er nooit, aangezien je ALTIJD een stuk software zult moeten vertrouwen om je toegang te verschaffen, zo ook Wireguard (welke ook meerdere kritieke fouten heeft gehad).

Je maakt dus een afweging wat voor jou een acceptabel niveau van beveiliging is.
Voor mij is dat een bijgehouden OpenVPN (welke al jaren geen kritieke CVE's meer heeft gehad in de core) op een niet standaard poort met strakke certificaat en privacy settings.

Daarnaast is er natuurlijk wat voor te zeggen om slechts 1 service publiek beschikbaar te stellen (OpenVPN) v.s. alle services die je zelf wil draaien (Home Assistant, Plex, etc...).
De grootste kritiek op OpenVPN is de hoeveelheid complexe en onleesbare code. Stel theoretisch voor dat openvpn 50% veiliger is dan HA, dat maakt voor het eindresultaat niet veel uit… wat ik wil aangeven is dat dit een zinloze discussie is…

Met Zero-trust wordt bedoeld dat je altijd dat je er altijd van uit moet gaan dat je software gehacked kan worden. Je moet dat niet letterlijk opvatten als in, je moet iets vertrouwen. Natuurlijk moet je iets vertrouwen maar daarna moet je ervan uitgaan dat dingen fout gaan. Bewust of onbewust.

Dat is de kern, ongeacht of je HA direct aan het internet hangt of achter een vpn. Beide kunnen ‘compromised’ zijn en daar moet je rekening mee houden. Beveiliging werkt altijd in lagen..
WireGuard en onDemand. Hele gezin gaat over de VPN.

Altijd en overal hetzelfde IP en door behulp van Adguard ook nog eens zonder reclame en tracking.
Ik weet hoe eenvoudig het is. Ik heb Wireguard draaien. Ik vind echter mijn installatie veilig genoeg en prima werken. Daarnaast is dat onDemand volgens mij een Apple dingetje. En na wat Googlen zie ik dat ik voor Android daar weer extra software voor moet installeren. Daar pas ik voor.
Los van dat het probleem juist bij het omzeilen van authenticatie aanwezig was, gaat HA oAuth denk ik niet implementeren. Daarmee maak je een belangrijk argument om Nabu Casa af te nemen namelijk ongedaan.

Ben overigens wel benieuwd waarom jouw gezin HA vanaf overal moet kunnen benaderen; kan ik me een beetje voorbereiden op mijn toekomst alvast ;)
[...] Gaat HA oAuth denk ik niet implementeren. Daarmee maak je een belangrijk argument om Nabu Casa af te nemen namelijk ongedaan.
Home Assistant heeft al pluggable authentication. En ik heb in het verleden wel al implementaties bovenop de Command Line Auth gezien. Alleen voelt dat voor mij toch nog wat... hacky. Ik ben er zelf dan ook (nog) niet aan begonnen.
Ben overigens wel benieuwd waarom jouw gezin HA vanaf overal moet kunnen benaderen; kan ik me een beetje voorbereiden op mijn toekomst alvast ;)
Hele goede vraag. Wij maken ontzettend veel gebruik van locatie. Met Home Assistant kun je bijvoorbeeld ook geofences opzetten. De Home Assistant app moet deze locatie wel kunnen terugsturen naar Home Assistant zelf. Daarnaast gebruik ik Home Assistant ook als alarmsysteem en wil ik dus ook op afstand mijn beveiliging kunnen monitoren.

Overigens, zoals ik in een andere reactie al aangaf, maak ik tevens ruim gebruik van de dienstverlening van Cloudflare om mijn thuisnetwerk optimaal te kunnen beveiligen. O.a. door middel van geo blocks, WAF, page rules en Access.
Of Nabu Casa Cloud om de developers te sponsoren (serieus bedoeld, niet sarcastisch)
Nabu casa cloud had je hier niet geholpen, behalve dat de url misschien niet makkelijk vindbaar is tov bijv hass.jouwdomein.nl

Nee het is eerder tijd dat de authenticatie eens flink onder handen genomen wordt en plugable wordt. Bijv af te vangen met oauth, met support in de apps (wat tot dusver altijd tegen gehouden is)

Edit: dat heeft nogal wat voeten in de aarde, en er zijn technische redenen waarom dit in de app niet gesupport wordt, maar dit verklaart wel waarom ik in het GitHub issue voor Cloudflare access voor de Android companion app ineens weer activiteit zag vandaag
Edit 2: er lijkt zelfs een oplossing aan te komen in een anderzijds stale issue :) https://github.com/home-assistant/android/issues/2650

[Reactie gewijzigd door Loen op 8 maart 2023 21:10]

Edit 2: er lijkt zelfs een oplossing aan te komen in een anderzijds stale issue :) https://github.com/home-assistant/android/issues/2650
Dat is zeer goed nieuws. Daar wacht ik al geruime tijd op. Alleen jammer dat HA niet als OAuth2 client wil fungeren, want nu heb je dan nog steeds een dubbele authenticatielaag.
Ik snap de insteek, maar ook dan geef je een externe partij toegang tot je installatie. (En ik realiseer me dat ze natuurlijk ook gewoon een update kunnen pushen die ze toegang geven, maar dat is dan in ieder geval nog zichtbaar via bijvoorbeeld Github, in plaats van een niet-transparante externe partij)
Met deze insteek kun je dus geen externe software meer installeren. Althans niet zonder zelf de broncode te lezen en zelf te compileren. Nabu Casa is gewoon een goed alternatief.
Jawel hoor. Met een VPN, zoals ik al eerder aangaf.
Nog een reden om geen supervisor te draaien.
Ik ben overgestapt op de kale Docker installatie en sindsdien is het nooit meer vastgelopen.

Daarvoor was het duimpje draaien wanneer je een update deed.

De appstore mis ik bijna niet. Alleen de editor miste ik in het begin. Maar tegenwoordig is de gui zo gebruiksvriendelijk dat je amper de bestanden hoeft te bewerken.
Iedereen heeft natuurlijk zn eigen argumenten, maar voor de meeste zijn er 3 (nu 4) argumenten om docker te draaien en 42 argumenten om supervised te gebruiken.
Wat een onzin.
Er kunnen overal lekken in zitten. Nu toevallig in de supervisor. Dit kan geen rede zijn deze niet te gebruiken.
Je hebt blijkbaar genoeg andere redenen. Maar nog een rede is een rare bereden Arie.
des te meer functionaliteit des te groter de kans op een lek. als ik een programma schrijf met 5 regels code ga je een bar moeilijke tijd hebben om daar een bug in te vinden. een programma van 10.000 regels wordt een eitje.
Dat is echt totale onzin. Een bug is niet eens hetzelfde als een lek.
dat maakt niks uit voor het princiepe wat ik beschrijf. het gaat erom dat de kans op fouten en dus de kans op lekken toeneemt.

[Reactie gewijzigd door t link op 8 maart 2023 22:06]

Als jij mij onderzoek kan laten zien waaruit blijkt dat het aantal regels code correleert met het aantal security lekken dan geloof ik je.
ik hoef je geen onderzoek te laten zien, dit is basis statistiek. de kans dat je de loterij verliest is groter bij 1000 deelnemers dan bij 10. Het is ook niet voor niks dat windows LTSC functionaliteit eruit sloopt, dat maakt de boel stabieler en veiliger.

edit: maar hier een meta analyse die mijn punt onderschrijft:

Complexity is an essential part of software; however, numerous studies indicate that they increase the vulnerability of the software systems and introduce bugs in the program.

https://www.researchgate....e_Complexity_and_Security

Complex systems have more lines of code and therefore security bugs.

http://www.mccabe.com/pdf...0Less%20Secure-McCabe.pdf

[Reactie gewijzigd door t link op 8 maart 2023 22:35]

ik heb het zojuist onderbouwt, nu ook met bronnen maar daarvoor was het al onderbouwt. dat je het niet begrijpt maakt het niet slecht onderbouwt. je had het ook zelf kunnen googlen voordat je een overtuiging op een gevoel aannam,

[Reactie gewijzigd door t link op 8 maart 2023 22:37]

lees even terug, zojuist bedoel ik mee dat ik de reactie had bewerkt. en opnieuw google zelf even voordat je op een gevoel iets aanneemt. wat ik zeg is gewoon algemeen bekend. en ja bij je voorbeeld geld "mijn" idee nogsteeds.
je leest niet en argumenteerd niet in goed vertrouwen, je hebt gelijk, deze discussie is voorbij.
dit is wat ik bedoel met niet argumenteren in goed vertrouwen. wat je hier doet is een moving the goalpost fallacy en een no true scottsman fallacy in een. je zei dit: Als jij mij onderzoek kan laten zien waaruit blijkt dat het aantal regels code correleert met het aantal security lekken dan geloof ik je.

vervolgens geef ik je dat, namelijk code complexity (een deel daarvan is gewoon hoeveel lijnen code er zijn) vergroot de kans op kwetsbaarheden.

waarna jij zegt :heb je ook een echte bron. terwijl de bronnen die ik je gaf aan elk van je voorwaardes voldeed. als je de inhoudt van de onderzoeken wil ontkrachten, ga je gang. maar je hebt nog nul bewijs gegeven voor je eigen beweringen, namelijk dat er geen verband is. hoe slecht je mijn bewijs ook vindt, het is beter dan jou geen bewijs.

daarmee sluit ik deze discussie af, je hebt geen intentie om te luisteren en hebt dat herhaaldelijk laten zien.
Hoezo is dat onzin? Het is wellicht wat overtrokken, maar er zit zeker een kern va waarheid in. Des te groter de code, des te lastiger het is om bugs voor te zijn omdat je niet meer eenvoudig alle combinaties kunt testen.
A software bug is an error, flaw or fault in the design, development, or operation of computer software that causes it to produce an incorrect or unexpected result, or to behave in unintended ways
Vulnerabilities are flaws in a computer system that weaken the overall security of the device/system.
Een lek is wel degelijk een bug, by definition. Als het er namelijk opzettelijk zou zitten is het geen lek (maar een schimmige manier tot faciliteren van toegang) en ook geen bug omdat het geen fout is.

Onnodige complexiteit verhoogt kwetsbaarheid. Onnodig complexiteit toevoegen (dus meer regels aan code schrijven dan strikt noodzakelijk voor het verwezelijken van de requirements) verhoogt het risico op fouten. Of je die complexiteit dan potentieel goed had willen inzetten ter beveiliging of niet is niet relevant, het is extra complexiteit bovenop de requirements en dus overbodig.
Een lek is wel degelijk een bug, by definition. Als het er namelijk opzettelijk zou zitten is het geen lek (maar een schimmige manier tot faciliteren van toegang) en ook geen bug omdat het geen fout is.
Nee dat is het niet. Je programma kan een lek hebben zonder dat er bugs zijn. Of het opzettelijk is of niet maakt niet uit.
Onnodige complexiteit verhoogt kwetsbaarheid. Onnodig complexiteit toevoegen (dus meer regels aan code schrijven dan strikt noodzakelijk voor het verwezelijken van de requirements) verhoogt het risico op fouten. Of je die complexiteit dan potentieel goed had willen inzetten ter beveiliging of niet is niet relevant, het is extra complexiteit bovenop de requirements en dus overbodig.
Complexiteit meet je niet in het aantal regels code.
Ik quote letterlijk de definities en highlight de specifieke woorden erin die het benadrukken. Dat is het dus wel, je mening erover wijzigt niet de definitie in het algemene verkeer ervan...

Complexiteit meet je niet in het aantal regels code en dat zeg ik ook nergens. Minder regels is (phun intented) in de regel wel minder complexiteit.
Ik weet niet waar je die 'definities' vandaan haalt. Ik zeg alleen dat je geen bug nodig hebt om een lek te creëren in een computerprogramma. Natuurlijk zit er wel overlap tussen. De definitie van een big is vaag en staat niet vast. Hetzelfde geldt voor een 'lek'.

Over complexiteit, laat ik dat anders verwoorden. Als er een formule zou zijn om dat objectief te meten (bijvoorbeeld cyclic complexity) dan is #lines of code geen input.

[Reactie gewijzigd door StefanSL op 10 maart 2023 18:48]

Je kunt bezig blijven kerel. Zoek ze eens op zou ik zeggen, er zijn woordenboeken.
Grappig, sinds ik ben overgestapt van Docker naar een Supervised installatie werkt HA echt 100x beter, vooral met radio integraties (Bluetooth, Zigbee).

Zo lang je je installatie niet naar het internet open hebt gezet, is er ook niets aan de hand geweest.
Maar als je via nabucasa je installatie remote kan benaderen heb je het feitelijk niet jou installatie na het internet opengezet (port forwards) maar kan wel via de dienst naar jou installatie.
Valt dit er dan onder?

[Reactie gewijzigd door TweakerCarlo op 8 maart 2023 19:20]

Zolang je supervisor niet bereikbaar is vanuit het internet niet.

Maar ik gebruik geen Nabucasa, dus ik moet je het antwoord schuldig blijven.
Voor zover ik weet is nabu casa een directe forward, dus ben je ook kwetsbaar geweest als je daarvan gebruik maakte. Ik geloof namelijk dat er geen enkele logica tussen zit behalve dat het door je firewall heen komt zonder port forward.
En ik draai al (6?) jaar supervised zonder problemen. Zo hebben we allemaal wel wat, bewijst allemaal niks.

[Reactie gewijzigd door StefanSL op 8 maart 2023 20:49]

Volgens mij moest dit geen reactie zijn op mij. :P
Ehm? Ik draai ook supervised? Heb je mijn reactie wel goed gelezen?
Uiteraard. In mijn geval werkt het dus supervised beter omdat ik fysieke hardware gebruik voor radio-interfacing en dat werkt gewoon niet goed via Docker. Dat is toch exact wat ik zeg in mijn reply?

Ik wist niet zo goed wat ik met de opmerking "bewijst allemaal niks" moest, maar het zal inderdaad wel.
Is HA supervised niet gewoon ook Docker under the hood?
HA Supervised is HAOS. Het hele OS is opgezet om zo goed mogelijk met Home Assistant samen te werken.

Home Assistant Core is hier een container, maar wel een die volledige toegang heeft tot alle hardware, de supervisor en de andere containers.

Dit is een fundamenteel andere setup dan een HA docker install, waarbij de container op zichzelf staat.
HA supervised <> HAOS. Supervisor is 'gewoon' en beheerder voor je docker container.
Hoezo werkt dat niet goed dan? Ik heb geen enkel probleem met bluetooth en zigbee bijv.
Mijn Conbee 2 stick alsook een BT USB stick werkte totaal niet via Docker op een QNAP.
Pas nadat ik HA op een dedicated apparaat had gezet (een Odroid N2) met HAOS kreeg ik de stick aan de praat.

Het zal voor anderen vast werken op een andere hardware/software combi, vandaar ook dat ik zei dat het voor MIJ niet werkte.
Ik heb daar met een pi3, pi4, odroid h3 en een gewone pc geen enkel probleem mee gehad.

Klinkt nu een beetje alsof het niet gelijk werkte en dus roep je maar dat docker niet werkt. Heb je bijv wel gecheckt of je user überhaupt rechten hebt? Zeker op systemen als QNAP en Synology zal dat net anders zijn ingeregeld.
Ik zeg toch nergens dat Docker niet werkt? Ik zeg dat het BIJ MIJ niet werkte...

En ja, ik weet hoe je devices door kunt routen naar Docker, mijn werk is DevOps... Alleen op QNAP (en ook Synology) werkte dat dus niet goed. (Omdat ze hun eigen wrapper om Docker heen hebben gebakken)
Alleen op QNAP (en ook Synology) werkte dat dus niet goed. (Omdat ze hun eigen wrapper om Docker heen hebben gebakken)
Kijk dat is toch best een belangrijk detail om dan te vermelden bij je eerdere post
Je moet in het Docker compose bestand de usb port toekennen, anders wordt de device inderdaad niet herkend.
Oeps, ernstige zaak.
Wel jammer dat je dit hier moet lezen en HA dit niet zelf meldt dmv een notificatie of anders.
Er wordt wel altijd getoond dat er een update beschikbaar is maar dit betekent niet dat onmiddellijke actie vereist is.
Dat gebeurde dus wel, ik kreeg een grote popup die waarschuwde hierover in HA.
Waar zag je die melding precies staan?
Kreeg hem bij de instellingen en ook een notificatie in de balk linksonder waar ook updatemeldingen staan.
Klopt, kreeg ik ook direct vanmiddag.
Ik heb die ook niet gezien en in de changelog vind ik het ook niet direct.
https://www.home-assistant.io/blog/2023/03/01/release-20233/

(Draai de VM)

[Reactie gewijzigd door TweakerCarlo op 8 maart 2023 18:01]

Zover als ik het begrijp is er ook geen issue als de VM gebruikt wordt.
Volgens mij wel: https://www.home-assistant.io/installation/alternative
Maar kan er naast zitten. Het is echt ooit install en forget geweest. Kan bijna niet zonder meer.
Zeker wel. Binnen de (door HA aangeleverde) VM draait gewoon supervisor.
Ja, ik kreeg ook netjes een melding.
Wel jammer dat je dit hier moet lezen en HA dit niet zelf meldt dmv een notificatie of anders.
Dat is ook het eerste dat in mij opkwam. Nog even gecontrolleerd meer geen mailtje, notificatie in HA of wat dan ook. Dat vind ik persoonlijk wel een flinke misser.
Nog even gecontrolleerd meer geen mailtje
Home Assistant heeft je email niet. Het Home Assistant project heeft geen data van je.
Maar ik heb wel een account en abonnement lopen bij nabu casa, die weten mijn mailadres wel, daar heb ik ook niks van gehoord.

Snap nu overigens wel waarom ik geen notificatie in HA heb gehad, omdat ik handmatig al geupdatet had, als ik het goed snap kregen die installaties dus geen notificatie. Ene kant logisch, andere kant had ik persoonlijk denk ik liever wel gewoon een notificatie gehad ook al was het al gepatched. Ik lees het nu op tweakers, schrik ervan en ben direct mijn versies, notificaties en mail gaan checken. Notificatie in HA met 'hey we zijn achter een kwetsbaarheid gekomen, je bent al up to date dus maak je geen zorgen'. Maar ik snap de gedachtengang om dat niet te doen ook.

[Reactie gewijzigd door !GN!T!ON op 8 maart 2023 19:29]

Maar ik heb wel een account en abonnement lopen bij nabu casa, die weten mijn mailadres wel, daar heb ik ook niks van gehoord.
Ja das misschien wel een goed punt ter overweging. Zal deze meenemen als we dit incident evalueren en wellicht kunnen meenemen als verbeterpunt.
Snap nu overigens wel waarom ik geen notificatie in HA heb gehad, omdat ik handmatig al geupdatet had, als ik het goed snap kregen die installaties dus geen notificatie.
Repair issues worden alleen getoond in HA als er iets aan de hand is met je installatie, anders niet. We willen je immers ook niet laten zitten met een repair notificatie waar je niks mee kan (of, totaal niet op jouw van toepassing is). Repairs is designed om actueel te zijn, voor jouw systeem en is geen vervanger voor een notificatie.
Ene kant logisch, andere kant had ik persoonlijk denk ik liever wel gewoon een notificatie gehad ook al was het al gepatched.
Snap 't, beetje hetzelfde als je email punt. Maar dat verschilt wel een kleine beetje van persoon tot persoon. Wellicht moeten we daar wat anders voor opzetten in de toekomst dan.

Neverthess, bedankt voor je antwoord, waardevol. :)
Ik kwam hier vandaag wel achter door een notificatie in mijn HA. Geen idee waarom dit niet bij jullie aan is gekomen. Was intussen ook al automatisch ge-update.
Geen idee maar ui heb niets bijzonders gezien.
Er staat wel een melding dat er een nieuwe versie beschikbaar is maar dat was altijd al zo.
Ik had ook geen oude versie draaien maar gewoon van vorige maand.
Als je geen melding hebt, is het niet op jou van toepassing (e.g., de Supervisor heeft de update automatisch toegepast).
Kun je deze conclusie ook trekken uit deze log?
Heb paar uur geleden een update gedaan.

23-03-08 18:33:40 INFO (MainThread) [supervisor.homeassistant.core] Updating Home Assistant to version 2023.3.1
23-03-08 18:33:40 INFO (SyncWorker_6) [supervisor.docker.interface] Updating image ghcr.io/home-assistant/generic-x86-64-homeassistant:2023.2.5 to ghcr.io/home-assistant/generic-x86-64-homeassistant:2023.3.1
23-03-08 18:33:40 INFO (SyncWorker_6) [supervisor.docker.interface] Downloading docker image ghcr.io/home-assistant/generic-x86-64-homeassistant with tag 2023.3.1.
Uit die log kan ik alleen concluderen dat je systeem een poging heeft gedaan Home Assistant Core 2023.3.1 te updaten. De rest ontbreekt.

Als je wilt weten of het op jouw van toepassing is, kijk dan svp even naar de blog post op de Home Assistant website, daar staat precies waar je moet kijken om te weten of je goed zit of niet.
Klopt! Die zag ik ook op beide installaties die ik gebruik.
Ik had een notificatie binnen Home Assistant zelf (geen push). Stond ook bovenin de settings pagina als melding met een link. Wellicht met een automation dat je dergelijke meldingen als push bericht kan instellen.

[Reactie gewijzigd door ASNNetworks op 8 maart 2023 18:01]

Het gaat om de supervisor update. Die is niet optioneel en wordt automatisch geïnstalleerd. Als je een supervisor gebruikt.
Op het moment dat ze er zeker van waren dat de updates overal geïnstalleerd waren hebben ze een notificatie toegevoegd met link naar details.
Dus tenzij je de supervisor niet gebruikt hen je iets over het hoofd gezien.
Ik gebruik de supervisor wel.
Draai HA op een NUC.
Kan het ondanks dat wel over het hoofd gezien hebben.
Home Assistant instances die krijgen netjes een alert als het van toepassing is op hun instance.

Door een fout (ik had 2023.03.01 in de alert getyped ipv 2023.03.1), hebben echter wel te veel instances een melding gehad. Niet erg, liever te veel dan te weinig, de foutieve alerts verdwijnen vanzelf. Instances die een issue hebben blijven dan dus netjes met een alert in hun instance over.
Wat is de impact voor gebruikers van Cloudflare?

En thanks Franck voor het geweldige werk aan home assistant!!
Dat ligt er helemaal aan. Ik neem aan dat je Cloudflare tunnel bedoelt... Dan heb je minder kans dat de instance gevonden wordt omdat je makkelijk hele landen kunt blocken en je zelf je IP niet exposed. Maar het is zeker geen volledige bescherming.

Als je Cloudflare warp bedoeld dan is het niet mogelijk geweest dit te misbruiken, als ik het goed begrijp

[Reactie gewijzigd door Loen op 8 maart 2023 20:13]

Wat is de impact voor gebruikers van Cloudflare?

En thanks Franck voor het geweldige werk aan home assistant!!
De impact is hetzelfde.

Ondanks dat de situation nu net iets minder prettig is, toch graag gedaan ;)
Voor deze update was geen actie nodig, ik zit nog op de 2023.02.x reeks van frontend (met updatemelding) maar mijn supervisor is vanzelf al naar 2023.03.1 gegaan. Vanmorgen nagekeken toen ik de tweet en blogpost zag van hen.
Heb zelf de update gedaan zojuist en zie dit in de log:

23-03-08 18:33:40 INFO (MainThread) [supervisor.homeassistant.core] Updating Home Assistant to version 2023.3.1
23-03-08 18:33:40 INFO (SyncWorker_6) [supervisor.docker.interface] Updating image ghcr.io/home-assistant/generic-x86-64-homeassistant:2023.2.5 to ghcr.io/home-assistant/generic-x86-64-homeassistant:2023.3.1
23-03-08 18:33:40 INFO (SyncWorker_6) [supervisor.docker.interface] Downloading docker image ghcr.io/home-assistant/generic-x86-64-homeassistant with tag 2023.3.1.
Ik heb er geen actie voor moeten ondernemen. Ik zag de tweet, las de pagina waar stond hoe ik kon zien of het gepatcht was en dat was zo. Ik wist niet eens dat er een auto-updater in zat. De HA versie heb ik nog niet geupdate, ik wacht gewoonlijk voor tot de tweede patch.
Home Assistant 2023.2.5
Supervisor 2023.03.1
Operating System 9.5
Frontend 20230202.0 - latest
Ik kan in de logs zelfs via gui al niet meer zien in de gui wanneer het gebeurd is (mogelijk wel op de server zelf).

Edit: volgens de history an het supervisor update object gisteravond om 21u23 op "on" gesprongen en om 0.46 vannacht geupdate.

[Reactie gewijzigd door MClaeys op 8 maart 2023 20:44]

Imo levert een patch notificatie 1 van 2 dingen op:
- je installeert als gebruiker elke patch asap
- de patch notificatie leidt je naar een CVE, die werkelijke beoordeling van de ernst mogelijk maakt. Je installeert vervolgens de patch, naargelang de ernst van de kwetsbaarheid, asap, of wanneer het goed uitkomt.

In elk geval zou een patchnotificatie op publiek toegankelijke diensten (poortje op het internet) altijd serieus genomen moeten worden. Los daarvan zou je steeds wantrouwig moeten zijn tov diensten die je zelf 'exposed' (beschikbaar maakt op het internet).

Het jammere aan het verhaal is dat het voor heel wat gebruikers al te gemakkelijk is zich kwetsbaar te maken (danku UPnP), zonder enige kennis of ervaring. In zo'n scenario is "patchen zodra het kan/asap" het enige advies dat ik kan geven, al is dat nog altijd een zwaktebod.
De patch is automatisch naar alle getroffen systemen gepusht en heeft verder geen impact op het functioneren van het systeem. Voor zover ik weet is dit de eerste keer dat ze een forced update doen.
Ze hoeven het pas te melden als er misbruik van gemaakt wordt via hun eigen servers, anders is het 'jouw setup, jouw datalek'.
Netjes is het niet, maar er is geen juridische basis die ze verplicht om een dergelijk lek in open-sourcesoftware te melden.
Als je HA met supervisor draait krijg je meldingen van updates (dacht ik). Als je dat niet doet niet, maar dan was je ook niet kwetsbaar.
Ik had anders wel een notificatie in HA.
Ik zou zeggen: Trek je conclusie en onderneem voortaan wel onmiddellijk (lees z.s.m.) actie. Ik word vaak uitgelachen als ik vertel dat ik dagelijks updates (en checks) run op al mijn systemen. Echter de afgelopen 20 jaar geen enkele breach gehad op mijn systemen, waaronder enkele servers met meer dan 100.000 bezoekers per dag.

Bij het rijksmuseum doen ze 's avonds, vanzelfsprekend, de deur op slot en het alarm aan. Maar is dat bij jou thuis anders dan? Doe het nou maar. Het kost alleen wat moeite.
Ik doe dit soort updates ook.
Niet alleen bij HA maar ook op mijn laptop, iPhone enz.
Het zou kunnen zijn dat de supervisor toch automatisch geüpgraded is en dat ik daarom geen melding heb gezien.
Het is prettig om te lezen dat ze bij Home Assistent duidelijk zijn niet te weten of dit lek al een keer door criminelen gebruikt is. Maar het maakt wel een ander probleem duidelijk: kennelijk weten ze bij Home Assistant ook niet te vertellen hoe klanten gebruikers dat kunnen opmerken als ze er geen last van hebben. Dan lijkt dit soort producten en leveranciers hoe dan ook niet geschikt om online te gebruiken. Maar zelfs voor gebruik in je eigen netwerk mag er wel meer controlemiddelen verwacht worden als de onderzoeker van het beveiligingsbedrijf of ontwikkelaars van HS dit inschat als een probleem met de hoogste score aan risico voor de klanten gebruikers. Dit patchen is dus niet genoeg.

En als ze er dan kennelijk ook voor kiezen om zelfs bij het meest ernstige risico de klanten gebruikers niet direct te informeren, dan heb je als HA wel wat uit te leggen waarom wat ze doen genoeg is.

[Reactie gewijzigd door kodak op 8 maart 2023 18:55]

Maar het maakt wel een ander probleem duidelijk: kennelijk weten ze bij Home Assistant ook niet te vertellen hoe klanten gebruikers dat kunnen opmerken als ze er geen last van hebben.
Zoals ook in alle publicaties is vermeld, is het issue er sinds 2017. Zelfs als zou het zichtbaar zijn in logs (wat het niet is), dan zou je dus alle logs sinds 2017 bewaard moeten hebben. Het is vrij aannemelijk dat een nihil aantal mensen dat nog hebben. Net als bij elke security incident waarbij je te maken krijg: Zero trust, assume you have been compromised en rotate al je credentials. Sterker nog, dat moet je soweiso met regelmaat doen.

Tuurlijk hadden we het liever anders gezien, maar laten we wel wezen, dit soort issues maakt je niet express. Met open source doet iedereen z'n best, alles is ook inzichtelijk. Met dank aan een security researcher/bedrijf om dit netjes responsible te disclosen. Nog steeds niet leuk, maar toch, met beleid.
En als ze er dan kennelijk ook voor kiezen om zelfs bij het meest ernstige risico de klanten gebruikers niet direct te informeren, dan heb je als HA wel wat uit te leggen waarom wat ze doen genoeg is.
Volgens mij zijn we snel en transparant geweest, maar wel sensible. Tuurlijk wil je iedereen zo snel mogelijk informeren, maar je wilt iedereen ook zo goed mogelijk bescherming bieden. Had je liever gehad dat we in detail een security lek naar buiten brengen in alle geuren en kleuren zonder fixes en zonder kans om jezelf te patchen? Waarna iedereeen een sitting duck is? :)

Meer details zullen zeker nog volgen, voor als je interrese hebt in de technische kant. Voor nu, gaan we met de billen bloot (zoals het hoort) en gunnen graag iedereen de kans zichzelf te beschermen.
Ik heb bij verschillende installaties gekeken of er extra gebruikers zijn aangemaakt, maar dat was niet het geval gelukkig.

Dus neem aan als deze authenticatie bug hersteld is, er geen ongewenste bezoekers meer in kunnen :)
Bij softwareontwikkelen is je best doen onvoldoende. Daar zien we nu weer het resulaat van: het is het grootste risico wat ze konden hebben, ze passen zelfs een basisprincipe niet eens toe dat updaten dan onvoldoende is. Natuurlijk kan je fouten maken, maar het wel een score 10 geven maar niet zo behandelen lijkt meer op een situatie dat het ze niet te doen is om gebruikers echt veilig houden maar om software naar gebruikers duwen alsof daarmee het probleem weg is.

Als dit software beschikbaar maken zonder meteen te informeren redelijk is, dan verwacht ik op zijn minst bewijs waaruit dat blijkt. Ze stellen zelf dat slechts 33% een update had toen ze wel gingen informeren. Dat klinkt als 33% een vreemde voorkeusbehandeling geven niet te willen informeren, en de 66% extra risico laten lopen. Wat is er dan zo redelijk aan die grens? Als je 'automatische' updates hebt of snel bent met updaten dan moet je kennelijk niet zeuren over gebrek aan informatie omdat je de updates eerder krijgt terwijl je daarmee je risico niet kan inschatten en het risico dus niet minder is?

[Reactie gewijzigd door kodak op 9 maart 2023 08:56]

Wat bedoel je met controlemiddelen?
en hoe zie je "klanten" bij een opensource "product" wat door iedereen van github geplukt kan worden 8)7
Terechte opmerking, maar hoe je de gebruikers en eigenaren ook wil noemen, het wijzigt het probleem niet.
Meegeleverde middelen die geschikt zijn om gebruik van dit beveiligingsprobleem werkelijk op te kunnen merken. Er staat bijvoorbeeld geen woord of gebruikers dat met de bestaande standaard functies kunnen als de crimineel geen sporen wist.

Nu is het probleem waarschijnlijk dat je in dit geval hoe dan ook niet meer op het systeem kan vertrouwen, want de crimineel heeft zoveel rechten dat die HA kennelijk volledig onder controle heeft om te doen alsof er niets aan de hand was. Dan is updaten dus niet genoeg, want dan weet je nog steeds niet of je een crimineel in je HA had en gedaan heeft. Dat is niet heel verantwoord, tenzij het je als makers eigenlijk niet zoveel interesseert.
Het is wel een beetje spijkers op laag water zoeken wat je aan het doen bent.
@Frenck gaat hier in zijn bewoording met de billen bloot. Meer informatie gaat nog komen.
Zo te horen is toen dit naar voren gekomen een patch ontwikkelt en zijn de gebruikers die nog kwetsbaar waren geïnformeerd middels het notificatie systeem.

Daarnaast kan ik mij indenken dat je het systeem niet meer vertrouwt. Dan rest niks anders om je installatie geheel te verwijderen en van scratch af opnieuw te beginnen.
Dit is juist geen spijkers op laag water zoeken. Een hoger risico dan dit kan niet. Wie voldoet aan de omstandigheden van dat risico heeft absoluut niet genoeg aan slechts updaten. Maar zo lijken ze het bij HA wel te behandelen voor hun gebruikers. Dit is geen aanpak om gebruikers werkelijk veilig te houden en krijgen, of in ieder geval geen aanpak die bij dit risico past. Updaten is onvoldoende, je risico is daarmee alleen weg als je geen interesse hebt of er iemand gebruik vam heeft gemaakt en als je alleen interesse hebt in hopen dat je op tijd bent. Dan ben je als HA het risico, zelfs na updaten.
Het is jammer dat de core updates altijd handmatig moeten.
De betreffende update is bij mij automatisch geinstaleer, heb ik niet voor hoeven doen.
Ze melden toch juist dat dit lek is gefixt in 2023.03.1 en niet dat het lek daar expliciet zit.
You can verify that you received the update on the Home Assistant About page and verify that you are running Supervisor 2023.03.1 or later. If you do not see a Supervisor version on your About page, you do not use one of the affected installation types and have not been vulnerable.
https://www.home-assistan...isor-security-disclosure/

Daarnaast voor alle tweakers die aangeven geen notificatie te hebben gehad, draaien jullie docker? In dat geval ben je niet geraakt. Ik heb in ieder geval keurig een notificatie gekregen en was ge-update.
Ik heb ook geen notificatie gezien. Bij thuiskomst bleek mijn HA onbereikbaar te zijn. Reboot van de PI heeft dat wel opgelost en de supervisor staat nu op 2023.03.1.
Als ze automatisch updates uit gaan rollen zou ik dat toch graag weten, zeker als er geen garantie is dat je HA daarna nog up is.
Dit had ik dus ook! Heb mijn raspberry Pi van de stoom af moeten halen voordat homeassistant weer normaal opstartte.
Wat is nou precies de fix/wijziging die die probleem heeft opgelost?
Er zijn maar twee commits tussen 2023.03.0 en 2023.03.01 (https://github.com/home-a...are/2023.03.0...2023.03.1). Daar zit een bump can cryptography in, maar de nieuwe versie daarvan (https://cryptography.io/en/latest/changelog/#v39-0-2) list geen gefixte vulnerabilities. Ik zie dus geen wijzigingen die iets zouden moeten hebben opgelost.
Kijken we naar de zelfde pagina? Is toch duidelijk een redelijke change in ./supervisor/api/middleware/security.py
Fair enough, maar dan is de commit message ("Performance tweaks middleware") niet representatief voor wat betreft de daadwerkelijke wijzingen/een leugen?

Ik kan uit de wijzigingen van die commit trouwens niet direct halen of dit een (goeie) oplossing voor het probleem is. Ik zie wat header checks, maar geen idee of dat voldoende is. Misschien dat iemand met meer kennis hierover hier iets over kan zeggen?

[Reactie gewijzigd door aaahaaap op 8 maart 2023 22:26]

Er is een blogpost van hen verschenen waarin staat dat alleen de versies HA OS en HA supervised betrokken zijn en patch is via auto update verdeeld. Dat klopt ook bij mij
Dit is de grote angst bij het draaien van home automation, en waarom ik niet bijvoorbeeld mijn garagedeur durf aan te sluiten aan het systeem.

Ook als je uit voorzorg geen WAN-domein gebruikt. Wanneer je meerdere docker containers host en op ééntje is ingebroken, dan heeft die toch weer toegang tot de poorten van je home automation.

Voor de zekerheid kan je Watchtower gebruiken.

[Reactie gewijzigd door Redsandro op 8 maart 2023 19:11]

Het is enkel echt een probleem als je port forwarding gebruikt en dat is een bekende twijfelachtig gebruik (maar helaas nog steeds populair)

Nabu Casa could of VPN worden aanbevolen over port forwarding en daarbij is het risco beperkt tot de attackers op je thuis netwerk. Als je daar attackers rond hebt hangen is de beveiliging van je home automation niet je grootste zorg.
Het is anders wel een 3e partij, die gebruik maakt van 'hole punching' in je router/firewall.

Zo weilig is deze opzet ook niet. Veiliger? Hangt er maar van af hoe interessant nabu casa is of wordt voor criminelen. Nu zal nabu casa nog niet zo'n heel grote speler zijn, maar zodra de omvang toeneemt, worden ze vanzelf interessant en kunnen criminelen zich toegang verschaffen to een heleboel nabu casa klanten tegelijkertijd.

Want dat blijft altijd het nadeel van alles bij dezelfde 3e partij stallen en erop hopen dat zij hun beveiliging op orde hebben. Er is dan tenslotte maar een klein foutje nodig en hun systemen liggen 24 uur per dag en 7 dagen in de week onder vuur. Dat gaat net zolang goed totdat het niet goed gaat. Oftewel, de kruik gaat net zolang te water tot deze barst.

Op dit item kan niet meer gereageerd worden.

Tweakers maakt gebruik van cookies

Tweakers plaatst functionele en analytische cookies voor het functioneren van de website en het verbeteren van de website-ervaring. Deze cookies zijn noodzakelijk. Om op Tweakers relevantere advertenties te tonen en om ingesloten content van derden te tonen (bijvoorbeeld video's), vragen we je toestemming. Via ingesloten content kunnen derde partijen diensten leveren en verbeteren, bezoekersstatistieken bijhouden, gepersonaliseerde content tonen, gerichte advertenties tonen en gebruikersprofielen opbouwen. Hiervoor worden apparaatgegevens, IP-adres, geolocatie en surfgedrag vastgelegd.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Toestemming beheren

Hieronder kun je per doeleinde of partij toestemming geven of intrekken. Meer informatie vind je in ons cookiebeleid.

Functioneel en analytisch

Deze cookies zijn noodzakelijk voor het functioneren van de website en het verbeteren van de website-ervaring. Klik op het informatie-icoon voor meer informatie. Meer details

janee

    Relevantere advertenties

    Dit beperkt het aantal keer dat dezelfde advertentie getoond wordt (frequency capping) en maakt het mogelijk om binnen Tweakers contextuele advertenties te tonen op basis van pagina's die je hebt bezocht. Meer details

    Tweakers genereert een willekeurige unieke code als identifier. Deze data wordt niet gedeeld met adverteerders of andere derde partijen en je kunt niet buiten Tweakers gevolgd worden. Indien je bent ingelogd, wordt deze identifier gekoppeld aan je account. Indien je niet bent ingelogd, wordt deze identifier gekoppeld aan je sessie die maximaal 4 maanden actief blijft. Je kunt deze toestemming te allen tijde intrekken.

    Ingesloten content van derden

    Deze cookies kunnen door derde partijen geplaatst worden via ingesloten content. Klik op het informatie-icoon voor meer informatie over de verwerkingsdoeleinden. Meer details

    janee