1 Punkte von GN⁺ 2024-01-21 | 1 Kommentare | Auf WhatsApp teilen
  • Der rätselhafte Touchscreen in einer 2015 fertiggestellten Wohnung in Großbritannien war Teil eines Energie-Monitoring-Systems von NETTHINGS und zeigte aktuelle sowie historische Werte des Stromverbrauchs an
  • Die Struktur war in einen Energy Manager am Zähler und einen Android-Tablet-Client im Zimmer aufgeteilt; selbst über kurze Distanz und durch einige Wände erfolgte die Kommunikation per Wi‑Fi statt über Kabel
  • Die unmittelbare Ursache für den nicht funktionierenden Bildschirm war eine fehlende 3A-Sicherung im Schaltkreis des Energy Managers; nach dem Austausch der Sicherung waren das Wi‑Fi-Netzwerk und die webbasierte Verbrauchsansicht wieder da
  • Die Tablet-Oberfläche war eine WebView, und der Server nutzte Node.js, Express und Socket.IO; das Zählergerät stellte unter 172.16.0.254 DNS-, HTTP-, SSH- und TCF-Dienste bereit
  • Der offene tcf-agent bot mit Root-Rechten Zugriff auf Dateisystem und Prozesse, sodass sich das Gerät auch ohne SSH-Passwort modifizieren ließ; im Inneren arbeitete ein ARM9-Gerät auf Basis von Linux 3.10 mit einer CSV-basierten Struktur zur Speicherung der Stromdaten

Wozu dient der rätselhafte Touchscreen?

  • In einem Zimmer der neuen Wohnung war ein kleiner Touchscreen installiert, ohne Tasten oder Beschriftung, nur mit einer kleinen gelben Betriebsanzeige
  • Auch der Vermieter wusste nicht, welches Gerät hier gesteuert werden sollte, und nach dem Umzug geriet es für einige Zeit in Vergessenheit
  • In einem Ordner mit Geräteanleitungen tauchte dann ein Prospekt mit genau diesem Gerät auf, wodurch seine Identität klar wurde
    • Das Gerät war Teil eines Energie-Monitoring-Systems
    • Es zeigte den aktuellen Stromverbrauch und historische Verbrauchsdaten an
  • Im Prospekt wurde außerdem der Energy Manager vorgestellt, eine zweite Komponente, die direkt mit dem Stromzähler verbunden ist
  • Im gemeinsamen Zählerschrank war ein Gerät der Marke NETTHINGS zusammen mit den Geräten anderer Wohnungen installiert

Energy Manager per Wi‑Fi verbunden mit Android-Tablet

  • Das System bestand aus dem Energy Manager als „Server“, der Daten sammelt, und dem Touchscreen als „Client“, der diese ausliest und auf dem Bildschirm anzeigt
  • Die beiden Geräte waren nur wenige Meter voneinander entfernt und durch lediglich 2 bis 3 Wände getrennt, dennoch standen im Prospekt SSID und Pwd
  • Tatsächlich erfolgte die Kommunikation nicht per Kabel, sondern über Wi‑Fi
  • Nach dem Drücken eines Knopfs in einem kleinen Loch an der Seite des Touchscreens erschien das Android-Boot-Logo
    • Es handelte sich um ein altes Android-Tablet
    • Veraltete Apps wie Google Talk und Flash waren installiert
    • Es wirkte wie Android 5, die genaue Version war jedoch nicht sicher
  • Beim Start der App „NetThings“ erschien ein Bildschirm zur Auswahl des Wi‑Fi-Netzwerks, doch das im Prospekt genannte Netzwerk wurde zunächst nicht angezeigt

Die fehlende Sicherung und der wiederbelebte Monitor

  • Im Zählerschrank waren die Energy Manager anderer Wohnungen eingeschaltet, nur das Gerät dieser Wohnung war ohne Strom
  • Ursache war eine fehlende Sicherung im Sicherungskasten
    • Ohne Sicherung war die elektrische Verbindung unterbrochen
    • Der Energy Manager erhielt keinen Strom
    • Auch der Wi‑Fi-Hotspot erschien deshalb nicht
  • Durch Vergleich mit der Sicherung eines anderen Energy Managers im selben Zählerschrank wurde festgestellt, dass eine 3A-Sicherung benötigt wurde
  • Eine 3A-Sicherung wurde bei Amazon bestellt und am nächsten Tag eingesetzt; danach blinkte die grüne LED des Energy Managers, und das Wi‑Fi-Netzwerk erschien
  • Die Arbeit erfolgte in der Nähe der Hauptstromversorgung und war gefährlich; anschließend wurde die Temperatur der Sicherung einen Tag lang mehrfach geprüft, und ein solches Experiment wird niemandem empfohlen

Enttäuschende Web-UI und fest eingestellte Tarifwerte

  • Nach Auswahl des Wi‑Fi auf dem Android-Tablet erschien ein Menü zur Wahl der Ressourcenart
  • Tatsächlich funktionierte nur Mains Electricity, also der Eintrag, an den der Energy Manager angeschlossen war
  • Die Ansicht zum Stromverbrauch zeigte rechts eine Farbanzeige und links fünf Zahlen, doch die Bedeutung der UI war nicht klar
    • Es war unklar, ob Grün für niedrigen Verbrauch oder normalen Verbrauch stand
    • Es war unklar, womit die vertikale Position der Farbanzeige verglichen wurde
    • Es war auch unklar, ob die Maximalposition mit dem bisherigen Höchstverbrauch zusammenhing
  • Von den fünf links angezeigten Zahlen war nur ein Wert tatsächlich korrekt: der kW-Verbrauch
  • Strompreis und CO2-Schätzung pro kW konnten nicht konfiguriert werden
    • Laut Prospekt sollte dies bei der Erstinstallation einstellbar sein
    • Es wurde jedoch nicht erklärt, wie sich das System wieder in einen neu konfigurierbaren Zustand versetzen ließe
  • Im Prospekt stand außerdem, dass man zur Korrektur der Datenzeit per PC zugreifen solle, und die Uhr des Android-Tablets ging seit der Installation im Jahr 2015 um etwa 15 Minuten falsch

WebView, Socket.IO und Node.js-Server

  • Wenn sich die Daten des Energy Managers direkt auslesen ließen, könnte man den kW-Verbrauch mit dem korrekten Tarif multiplizieren und etwa in Grafana darstellen
  • Im Prospekt gab es einen Anwendungsfall zum Prüfen des Energieverbrauchs am PC; dafür waren IP und Port angegeben
  • Beim Aufruf im Browser erschien derselbe Bildschirm wie auf dem Android-Tablet, was bestätigte, dass die Tablet-Oberfläche eine WebView war
  • Bei der Untersuchung der API-Aufrufe im Web-Inspector zeigte sich, dass Socket.IO verwendet wurde
  • Der Client erhielt vom Server im Wesentlichen nur fünf Zahlen, doch im Code waren RequireJS-Module, Handlebars, Backbone.js und Underscore.js enthalten

Offene Ports und tcf-agent

  • Die Geräte-IP war 172.16.0.254, und ssh root@172.16.0.254 scheiterte zunächst mit „Connection refused“
  • Ein vollständiger Portscan ergab die folgenden offenen Dienste
    • 53/tcp: dnsmasq 2.63rc6
    • 80/tcp: Node.js-basiertes HTTP
    • 1534/tcp: micromuse-lm?
    • 3000/tcp: Node.js-basiertes HTTP
    • 41142/tcp: OpenSSH 6.2
  • dnsmasq passte dazu, dass das Gerät als Wi‑Fi-Access-Point fungierte und damit auch die Rolle eines DHCP-Servers übernahm
  • SSH war zwar auf Port 41142 offen, doch der Root-Account war per Passwort geschützt, und einfache Kombinationen wie admin/admin oder root/root funktionierten nicht
  • Bei der Suche nach der Identität von Port 1534 führte ein Xilinx-Forenbeitrag auf das Stichwort tcf-agent

Root-Dateisystemzugriff über TCF

  • TCF steht für Target Communications Framework und ist ein textbasiertes Protokoll, das auf Zielsystemen das Lesen des Dateisystems, das Starten neuer Prozesse, das Senden von Signalen an Prozesse und Ähnliches unterstützt
  • tcf-agent ist der Server, der dieses Protokoll implementiert, und lief auf diesem Gerät als Root-Benutzer
  • TCF war eng mit dem Eclipse-Ökosystem verbunden, und die Anleitung Getting Started empfahl vor allem die Nutzung über ein Eclipse-Plugin
  • Der Versuch, das Plugin in einer neueren Eclipse-Version zu installieren, scheiterte jedoch weitgehend an Abhängigkeitskonflikten
  • Stattdessen wurde das Python-SDK des TCF-Projekts gefunden und verwendet
  • Mit den Diensten FileSystem und Processes von TCF ließen sich Ersatzwerkzeuge für Befehle wie ls, cat und ps bauen; die Ergebnisse sind in tcf-tools zusammengefasst

SSH-Zugriff und technische Daten des Geräts

  • Zunächst wurden /etc/passwd und /etc/shadow per TCF geholt, um das Root-Passwort mit John the Ripper zu knacken
  • Auch nach etwa 7 Stunden Laufzeit wurde kein Treffer gefunden, und John zeigte als voraussichtlichen Zeitpunkt für das Ende eines vollständigen Brute-Force-Angriffs das Jahr 2035 an
  • Danach wurde /etc/shadow bearbeitet, um das Root-Passwort zu leeren, und das Gerät neu mit Strom versorgt, doch SSH-Login wurde weiterhin verweigert
  • Ursache war die Einstellung PermitRootLogin no in sshd_config
    • Nach Änderung dieser Zeile auf PermitRootLogin yes war ein Root-Login per SSH möglich
  • Das Gerät lief mit Linux 3.10.28 armv5tejl
  • Die CPU war ein ARM926EJ-S rev 5, also aus der ARM9-Familie
  • Das Merkmal java in der Feature-Liste von /proc/cpuinfo verweist auf Jazelle, eine ARM-Erweiterung zur Ausführung von Java-Bytecode
  • Der Arbeitsspeicher wurde mit MemTotal: 118172 kB angegeben, obwohl auf dem Gerät eine Node.js-App lief

Anwendungsstruktur und Datenspeicherung

  • Die Serveranwendung lag unter /srv/server und hatte eine Struktur mit Gruntfile.js, app.js, bower.json, package.json, node_modules, routes, views und public
  • Die App war grob in zwei Teile gegliedert
    • eine Pulse app, die Verbrauchsdaten vom Stromzähler liest
    • eine Node.js-App, die CSV-Daten ausliest und in der Web-UI darstellt
  • Zur Pulse app gehörten Dateien im Ordner bin
    • pulse-app
    • pulse.ko
    • ct-read-daemon
    • Verzeichnisse für monatliche, tägliche, stündliche, wöchentliche und jährliche Daten
  • Die Dateiendung .ko von pulse.ko steht üblicherweise für Kernel Object, also möglicherweise ein Kernel-Modul
  • Die Pulse app las Daten über GPIO-Pins ein und speicherte die Ergebnisse in CSV-Dateien
  • Die CSV-Dateien waren in Verzeichnisse nach Monat, Tag und Stunde aufgeteilt, und auch die Web-UI unterstützte bei historischen Daten nur Monats-, Tages- und Stundenansichten
  • Die Node.js-App verwendete Node.js 0.10.26, Express.js 4.13.3 und Socket.io 1.3.6
  • Zu den Abhängigkeiten gehörte das Paket mqtt; im Quellcode fanden sich unfertige Teile für eine offenbar im Prospekt versprochene Cloud-Integration sowie hartkodierte Broker-IPs
    • Diese IPs funktionierten inzwischen nicht mehr
    • Das Gerät selbst hatte auch keinen Internetzugang

Spätere Erkenntnisse

  • Das Unternehmen NETTHINGS, das das Gerät hergestellt hatte, war bereits aufgelöst
  • Der Hacker-News-Nutzer M6WIQ verwies auf einen weiteren Beitrag über die Folgen technischer Entscheidungen bei NetThings
  • Dessen Autor fragte auf Mastodon, ob das Gerät noch immer die IP seines NTP-Servers nutze, und es stellte sich heraus, dass die Realität noch schlimmer war
  • Marc Bevand stellte GPU-Ressourcen bereit, um das ursprüngliche Passwort der Linux-Benutzerkonten des Energy Managers per Brute Force zu ermitteln
    • Der Hash verwendete einen mindestens 30 Jahre alten Algorithmus)
    • Die Passwörter von root und gecko_user lauteten Newt@rd$
    • Das Passwort des Kontos prod_test lautete NetTh@ng
  • Ein Hosting-Unternehmen übersetzte diesen Beitrag ins Russische

1 Kommentare

 
GN⁺ 2024-01-21
Hacker-News-Kommentare
  • Vor ein paar Jahren wurde mir klar, dass Menschen deutlich bessere Daten als nur eine monatliche Gesamtsumme brauchen, wenn sie ihren Verbrauch von Versorgungsleistungen wie Strom, Wasser und Gas umweltfreundlicher und wirtschaftlicher steuern wollen.
    Mindestens etwa in 5-Minuten-Intervallen muss man den Verbrauch sehen können, um Dinge zu erkennen wie: „Ein paar Stunden elektrischer Heizlüfter haben mehr Strom verbraucht als die Beleuchtung eines ganzen Monats.“
    In Haushalten der Mittelschicht in Südafrika sind wegen der instabilen Stromversorgung Wechselrichter und Solarpanels verbreitet; auch bei mir zu Hause kann ich die gesamte Stromverbrauchshistorie sehen, wodurch sich leicht erkennen lässt, wo sich die Effizienz verbessern lässt.
    Allerdings sind es weiterhin Gesamtdaten, sodass man die Ursachen erschließen muss. Wenn zum Beispiel etwa eine Stunde nach dem Duschen 3 kW angezeigt werden, ist das der Warmwasserbereiter, der wieder aufheizt; aus den Wechselrichter-Protokollen lässt sich erkennen, dass die Batterie über Nacht entladen wurde und die Solarproduktion am Morgen noch gering ist, sodass der Strom aus dem Netz kommt.
    Deshalb kann man die Stromkosten leicht senken, wenn man den Warmwasserbereiter mit einem Timer so steuert, dass er erst nach 10 Uhr morgens heizt, wenn die Sonne hoch genug steht und Solarstrom dafür reicht. Jetzt würde ich auch den Wasserverbrauch gern so bequem überwachen.

    • Stimme voll und ganz zu; ich denke, das Energie-Dashboard von Home Assistant hat in unserem Haushalt mehr zur Senkung des Energieverbrauchs beigetragen als jede andere Maßnahme.
      In den Niederlanden steckt man etwas wie einen „slimme lezer“ in den P1-Port des Stromzählers, und es erscheint direkt als passender Sensor in Home Assistant.
      Das Energie-Dashboard ist sehr gut, weil es Gas- und Stromverbrauch, Solarproduktion, das Verhältnis von Netz- zu Solarstromnutzung und, falls vorhanden, sogar die Hausbatterie anzeigt.
      Die energiemessenden Steckdosen von Aqara nutzen Zigbee und können daher leicht überlastet werden; Shelly läuft über WiFi, war aber ziemlich robust. In Kombination mit solchen Geräten erkennt man gut, welche Stromsparmaßnahmen Priorität haben sollten, und in Home-Assistant-Sensoren kann man auch die Kosten pro kWh und pro m³ Gas hinterlegen.
    • Ein Freund mit Diabetes hatte seine Ernährung ziemlich schlecht im Griff, aber als der Arzt ihm für ein paar Wochen einen Blutzuckermonitor verschrieb, änderte sich das sofort.
      Das war ein Gerät wie ein großes Pflaster am Arm, das eine dünne Nadel unter die Haut setzt und mit einer Smartphone-App kommuniziert, um Werte wie den Blutzuckerspiegel anzuzeigen.
      Als er sah, welche Auswirkungen die Lebensmittel hatten, die er aß, stellte er seine Ernährung sofort um und hält das auch heute noch durch, obwohl er den Monitor nicht mehr trägt. Die UI der App war ebenfalls ordentlich, aber entscheidend wirksam waren die Verlaufsdaten.
    • Diese Erfahrung zeigt auch die Grenzen von Monitoring und der daraus folgenden Verhaltensänderung. Man kann die Waschmaschine etwas früher oder später laufen lassen, wenn die Solarproduktion hoch ist, aber fraglich ist, wie viel Verbrauch sich tatsächlich verschieben lässt und auf wie viele energiehungrige Geräte man wirklich verzichten kann.
      Wenn man weiß, dass der Stromverbrauch beim Kochen hoch ist, isst man dann mehr Salat? In ganz Europa werden Stromzähler durch Smart Meter ersetzt, und der Vorteil, den Energieverbrauch kontinuierlich sehen zu können, wird stark beworben; ob das tatsächlich zu nennenswerten Einsparungen führt, lässt sich aber noch schwer beurteilen.
      Am Ende entsteht der größte Effekt, wenn große Haushaltsgeräte sowie Heizung und Kühlung auf die Eigenproduktion reagieren oder bei dynamischen Tarifen nach Tageszeit bzw. Tag günstigen Strom nutzen. Dazu gehören einfache selbst installierte Timer, Relais, die beim Kochen die Heizung abschalten, oder Geräte wie der Fronius Ohmpilot [1], der die Heizleistung an die überschüssige Solarproduktion anpasst.
      [1] https://www.fronius.com/en/solar-energy/installers-partners/...
    • Je nach Zählertyp gibt es beim Wasserverbrauch oft ein kleines reflektierendes Rad, das sich einmal pro Liter dreht. Manchmal ist es aus Metall oder leicht magnetisch, sodass man mit einem optischen Sensor oder einem Hall-Effekt-Sensor an einem Arduino schon ziemlich weit kommt, bis hin zu Echtzeitdaten mit hoher Auflösung.
      Eine andere Methode, mit der ich Erfolg hatte, war, einen Temperaturfühler direkt an der einlaufenden Wasserleitung zu befestigen und mit der Umgebungstemperatur zu vergleichen. Das funktionierte, weil das Wasser dort, wo ich wohne, aus dem Untergrund kommt und immer deutlich kälter ist als die Umgebungsluft.
      Wenn man die Differenz der beiden Temperaturen über die Zeit integriert, erhält man einen groben Ersatzwert für den Wasserverbrauch, aber es ist deutlich mehr Aufwand nötig, bis man aussagekräftige Daten bekommt.
      Ein Näherungssensor zur Metallerkennung könnte am einfachsten sein. Wenn der Wasserzähler eine rotierende Metallanzeige hat, kann man etwas wie https://www.alldatasheet.com/view.jsp?Searchword=LJ12A3-4-Z/... verwenden.
    • Auch Stromaufschlüsselung pro Gerät liefert interessante Daten.
      Mit dem Energie-Dashboard von Home Assistant sieht man zum Beispiel, wie viel das „Rack“ (USV + Mac mini + 5-Bay-Festplattengehäuse + Sonstiges) im Vergleich zu Kühlschrank oder Waschmaschine tatsächlich verbraucht, dass der Desktop-Rechner wenig zieht, die Monitore aber im eingeschalteten Zustand ziemlich viel, was das Laden des E-Bikes kostet oder welchen Unterschied es macht, den Thermostat im Winter auf 19 statt 20 Grad zu stellen.
      Man sieht auch überraschende Dinge, etwa dass ein im Sommer häufig genutzter Ventilator tatsächlich so viel Strom verbrauchte wie der Warmwasserbereiter. Die Strommessung mache ich mit Shelly Plug Plus S, 3EM und 4PM, die Temperaturmessung mit Shelly H&T Plus.
  • Interessant ist, dass der Autor über diese technische Missgeburt eines Linux-betriebenen Haushaltsgeräts staunt. Eine Struktur, bei der ein Node-Server per WiFi eine Website, eine API und WebSockets bereitstellt und diese Website dann in einer alten WebView-Engine eines stark eingeschränkten Endgeräts angezeigt wird, das sich für nichts anderes wiederverwenden lässt, ist inzwischen fast zum gängigen Standard geworden.
    Ein paar Zahlen und ein Balkendiagramm anzuzeigen, hätte vermutlich auch mit zwei Mikrocontrollern gereicht, die über einen kabelgebundenen Bus kommunizieren; aber bei einem Netzteil dieser Ära könnten die beiden Geräte im Leerlauf durchaus rund 16 W verbrauchen.
    Wenn das 24/7 das ganze Jahr läuft, verbraucht es so viel Strom wie ein kleiner Kühlschrank, und im Vergleich zu ein paar Mikrocontrollern für wenige Dollar dürfte auch die Lebenszyklusanalyse schlecht ausfallen.
    Am schlimmsten ist, dass dieses komplexe Gerät mit hoher Wahrscheinlichkeit drei Jahre nach der Installation, vielleicht sogar früher, zum Brick geworden ist.

    • Dass das Mirai-Botnet immer noch aktiv ist, liegt an Android.
      Aus Business-Sicht will man keine teuren Leute beschäftigen, die Mikrocontroller programmieren können. Für ein simples Interface mit Balkendiagramm ist ein Frontend-Entwickler deutlich günstiger.
    • Zwar hieß es „ein stark eingeschränktes Endgerät, das sich für nichts anderes wiederverwenden lässt“, aber für Botnets oder Überwachungszwecke lässt es sich durchaus nutzen.
      Manche Boards haben bereits MEMS-Mikrofone und Kameras, und auf dem Kasten im Foto ist ebenfalls eine Kameralinse zu sehen. Ich hätte das Gerät zerlegt und mir das Innenleben angesehen oder zumindest Diagnosen laufen lassen, um zu prüfen, welche Hardware installiert und erkannt wird.
    • Statt dieses nutzlose Gerät weiter eingeschaltet zu lassen, spart man vermutlich mehr, wenn man die Sicherung wieder herausnimmt.
    • Nach Fertigstellung eines Gebäudes irgendwo neue Leitungen durchzuziehen, ist installationstechnisch sehr schwierig. Es mag möglich sein, aber selbst wenn, kann es völlig unrealistisch sein. Ein Niederspannungsbus und ungeschirmte Stromleitungen vertragen sich zum Beispiel nicht gut, wenn sie parallel verlaufen.
    • 16 W für 24 Stunden an 30 Tagen kosten bei durchschnittlichen US-Strompreisen weniger als 2 Dollar im Monat, wirken also trivial.
      https://www.wolframalpha.com/input?i=16+watts++24+hours++3...
  • Dass SSID und Passwort aufgedruckt waren, überrascht überhaupt nicht. Solche Geräte werden vermutlich oft in bestehende Häuser nachgerüstet, statt Teil eines Neubaus zu sein, und Kabel in vorhandene Wände einzuziehen ist mühsam; man wollte also wohl keine Verkaufshürde schaffen.
    Heutzutage bekommt man für ein paar Dollar völlig ausreichende WiFi-Chipsätze.
    Auch über die 3-A-Sicherung muss man sich wohl nicht allzu große Sorgen machen. Bei einer 3-A-Sicherung läuft nicht die gesamte Hauptstromversorgung der Wohnung darüber; hätte man das versucht, wäre sie sofort durchgebrannt.
    Und Jazelle – Hardware-Unterstützung für Java-Bytecode war letztlich eine Technologie, die sich nicht wirklich durchgesetzt hat.

    • Wenn die Sicherung von Amazon stammt, gibt es durchaus Grund zur Sorge, dass sie nicht durchbrennt. Es gibt ein Video[0] von Louis Rossmann, in dem er 8 A durch eine 2-A-Sicherung jagt und den Raum ziemlich lange, vermutlich mehrere Minuten, verlässt.
      [0]: https://www.youtube.com/watch?v=B90_SNNbcoU
    • WiFi bietet von Natur aus eine galvanische Trennung mit großem Abstand.
      Das ist nicht unbedingt erforderlich, kann aber eine kosteneffiziente Methode sein, elektrisch gefährliche Teile von den berührbaren Teilen zu trennen und bei Problemen Schleifen zu vermeiden. Funk dient nicht nur dazu, Kabel loszuwerden.
    • Ich bin nicht alt genug, um diese Zeit wirklich miterlebt zu haben, aber mich würde interessieren, warum Jazelle nicht funktioniert hat. Rückblickend wirkt Java so dominant, dass es überraschend ist, dass sich so eine Technik nicht durchgesetzt hat.
    • Bei der Stelle „es war etwas beängstigend, so nahe am Stromnetz zu sein“ musste ich lachen. Ist der Austausch einer Sicherung wirklich so furchteinflößend? In Großbritannien hat man das in der Grundschule gelernt, und eine Sicherung ist entweder durchgebrannt oder nicht; wenn sie durchbrennt, merkt man es sofort.
      Immerhin fand er keine Steckdose vor, in der eine tote Sicherung liebevoll in eine rituelle Aluminiumhülle aus ewigem Leben und sicherem Tod gewickelt war. Das ist ein Verbrechen, das ich als Kind in einer Zeit begangen haben könnte, als ich noch anfälliger für Feuer war.
      Interessant, wie viele Menschen sich unwohl fühlen, sobald sie außerhalb ihrer Komfortzone sind. Natürlich bin ich jemand, der seine Nase in Dinge steckt, die er sein Leben lang nie anfassen müsste.
    • Es stimmt, dass es schwierig ist, Leitungen durch vorhandene Wände zu ziehen, aber dadurch wird es auch einfacher, das Gerät von der anderen Straßenseite aus oder mit einer Richtantenne sogar vom anderen Ende der Stadt aus zu kompromittieren.
      Natürlich wäre das kein Problem, wenn die Sicherheit ausreicht und es regelmäßig Sicherheitsupdates bekommt; man kann nur annehmen, dass das vom Autor gefundene Gerät eine sehr seltene Ausnahme war, die diese Bedingungen nicht erfüllte.
  • Der Firmenname Netthings kam mir bekannt vor; ich hatte früher einmal einen Beitrag gelesen, wonach ein in Geräten dieser Firma hartcodierter NTP-Server durch eine Firewall blockiert wurde und sie dadurch die Zeitsynchronisation verloren.
    Beitrag: https://strugglers.net/~andy/blog/2018/12/24/the-internet-of...
    Da das Unternehmen offenbar 2018 in Liquidation ging, dürfte es schwierig sein, Support für dieses Gerät zu bekommen.

    • Die Formulierung im Handbuch „DATE & TIME ARE ALWAYS CORRECT AND NEVER NEED TO BE ADJUSTED“ wird dadurch noch großartiger.
    • Dieser Link war wirklich erstaunlich, deshalb habe ich ihn ans Ende des Beitrags hinzugefügt.
  • „DATE & TIME ARE ALWAYS CORRECT AND NEVER NEED TO BE ADJUSTED“ liest sich wie ein Satz aus einem Roman von Philip K. Dick.

    • Vielleicht war das die Art des technischen Redakteurs zu sagen: „Wir pingen einen NTP-Server an, also keine Sorge.“ https://news.ycombinator.com/item?id=39065780
      Offensichtlich ist das nicht gut ausgegangen.
    • Ich hätte vermutet, dass es irgendeine Zeitkorrektur-Funktion wie eine Kopplung an einen britischen Funkturm gab, aber laut Artikel stammt das Gerät von 2015, also ist das eher unwahrscheinlich.
  • Der Witz „Das C in IoT steht wohl für cost-effective“ ist kurz und pointiert, aber wenn man weiß, wie billig und kosteneffizient WiFi-fähige SoCs tatsächlich sind, kann das überraschen
    In vielen Fällen ist WiFi praktisch kostenlos dabei, und die meisten dieser SoCs haben standardmäßig keinen Ethernet-Controller. Wenn es also zum Use Case passt, ist WiFi kosteneffizienter
    Andere physische Protokolle oder Verbindungsarten sind natürlich ebenfalls möglich, aber bei solchen nachgerüsteten Installations-Clients sind WiFi oder gängige Funkprotokolle am besten geeignet

    • Rein aus Materialsicht dürften zwei günstige WiFi-fähige Mikrocontroller wie der esp8266 den Hersteller zusammen etwa 4 bis 5 Dollar kosten
      Das liegt in einer ähnlichen Größenordnung wie ein 3-m-Kabel, Steckverbinder und ein günstiger Chip für die Kabelanbindung; die Arbeitskosten für das Verlegen des Kabels sind deutlich höher. Deshalb verstehe ich nicht recht, warum eine Verbindung per WiFi als Verschwendung gelten sollte
    • ESP32 ist inzwischen eine nahezu universelle Wahl. Bei Bestellungen in gewissen Stückzahlen bekommt man ihn für unter 1 Dollar, und WiFi sowie Bluetooth sind direkt integriert. Heutzutage ist es teurer, kein WiFi zu verwenden
  • Ich habe den Autor des Originalbeitrags gebeten, mir die /etc/shadow-Datei zu schicken, bei der das Brute-Forcing mit John The Ripper gescheitert war. Da es sich um einen alten UNIX-crypt()-Hash handelte, konnte ich mit hashcat und 12 RTX 4090 das Root-Passwort in etwa 7 Stunden knacken
    Das Root-Passwort lautet Newt@rd$
    Das ist nicht besonders nützlich, weil dieses Gerät auch ohne Authentifizierung Root-Zugriff über TCF erlaubt, aber das Passwort könnte an anderer Stelle wiederverwendet worden sein

  • Für den Fall, dass die Domain im Sand der Zeit verschwindet, wäre es schön, den Beitrag selbst auf dem Gerät zu hosten

  • 3 A entsprechen 720 W. Wenn diese kleine Box so viel Wärme abgeben würde, würde der ganze Schrank buchstäblich zum Ofen
    Dass ein Energiezähler überhaupt so viel Leistung verbraucht, würde seinem Zweck widersprechen und wäre ungefähr so, als würde man Streichhölzer testen. Es werden höchstens 10 W sein, und auch der Einschaltstrom dürfte nicht so hoch sein
    Eine 1-A-Sicherung sollte ausreichen, und die Installation sieht ziemlich sauber aus; dass sie in der Nähe der Netzspannung lag, ist daher auch nicht derart beängstigend

    • Die 3-A-Sicherung wurde nicht verwendet, weil das der optimale Wert für dieses Gerät wäre, sondern wegen des britischen Verdrahtungssystems
      In Großbritannien hat jedes elektrische Gerät an der Stelle, an der es mit der Gebäudeverkabelung verbunden ist, eine Sicherung; normalerweise sitzt sie im Stecker, sie kann aber wie bei diesem Gerät auch in einem festen Sicherungshalter sitzen
      Weil zu viele verschiedene Werte für Nutzer verwirrend und umständlich wären, sind diese Sicherungen bei gleicher Baugröße auf die Standardwerte 13 A, 5 A oder 3 A beschränkt. Wie anderswo erwähnt, bekommt man diese Sicherungen in Großbritannien sogar in Supermärkten und Convenience Stores
      Wenn 3 A für das Gerät zu hoch sind, sollte der Entwickler ein auf 3 A ausgelegtes flexibles Kabel verwenden, damit die Sicherung auf Steckerseite schützt, und geräteseitig einen zusätzlichen Schutz mit niedrigerem Strom vorsehen
      Das britische System ist eine clevere Konstruktion, bei der zum Zeitpunkt seiner Einführung feine Details wie standardisierte Sicherungswerte gut zusammenpassten, aber für moderne Haushalte mit vielen Niedrigstromgeräten ist es etwas überdimensioniert und nicht optimal abgestimmt
    • Das hängt von der Zeit-Strom-Charakteristik der Sicherung und vom Einschaltstrom des Netzteils ab. Der Einschaltstrom kann auch über 10 A liegen, sodass manche 1-A-Sicherungen beim Einschalten des Geräts gelegentlich auslösen könnten
  • Wenn man zu Hause solche Echtzeit-Verbrauchsdaten sehen möchte, kann ich IoTaWatt sehr empfehlen: https://iotawatt.com
    Das ist ein vollständig lokaler Energiemonitor, der im Sicherungskasten des Hauses installiert wird; man kann ein Dashboard über den lokalen Webserver auf dem Gerät ansehen oder die Daten per API auslesen
    Man kann die Anzahl der Sensoren selbst wählen und neben dem gesamten Haus auch einzelne Stromkreise überwachen
    Zum Beispiel kann man verfolgen, wann Geräte wie Waschmaschine, Geschirrspüler oder Mikrowelle starten und stoppen, und Automatisierungen auslösen
    Für die Selbstinstallation braucht man allerdings Recherche, grundlegendes Elektrowissen und die Bereitschaft, an Hochspannungs-Netzanschlüssen zu arbeiten. Dennoch war es zugänglich und die Einrichtung einfach
    So sieht es aus: https://i.ibb.co/qBVmBD1/IMG-1595.jpg