Deprecated: Return type of Google\Site_Kit_Dependencies\Google\Model::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/third-party/google/apiclient/src/Model.php on line 240

Deprecated: Return type of Google\Site_Kit_Dependencies\Google\Model::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/third-party/google/apiclient/src/Model.php on line 244

Deprecated: Return type of Google\Site_Kit_Dependencies\Google\Model::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/third-party/google/apiclient/src/Model.php on line 248

Deprecated: Return type of Google\Site_Kit_Dependencies\Google\Model::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/third-party/google/apiclient/src/Model.php on line 257

Deprecated: Return type of Google\Site_Kit_Dependencies\Google\Collection::current() should either be compatible with Iterator::current(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/third-party/google/apiclient/src/Collection.php on line 19

Deprecated: Return type of Google\Site_Kit_Dependencies\Google\Collection::next() should either be compatible with Iterator::next(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/third-party/google/apiclient/src/Collection.php on line 32

Deprecated: Return type of Google\Site_Kit_Dependencies\Google\Collection::key() should either be compatible with Iterator::key(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/third-party/google/apiclient/src/Collection.php on line 26

Deprecated: Return type of Google\Site_Kit_Dependencies\Google\Collection::valid() should either be compatible with Iterator::valid(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/third-party/google/apiclient/src/Collection.php on line 36

Deprecated: Return type of Google\Site_Kit_Dependencies\Google\Collection::rewind() should either be compatible with Iterator::rewind(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/third-party/google/apiclient/src/Collection.php on line 13

Deprecated: Return type of Google\Site_Kit_Dependencies\Google\Collection::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/third-party/google/apiclient/src/Collection.php on line 41

Deprecated: Return type of Google\Site_Kit\Core\Util\JSON_File::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/JSON_File.php on line 87

Deprecated: Return type of Google\Site_Kit\Core\Util\JSON_File::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/JSON_File.php on line 101

Deprecated: Return type of Google\Site_Kit\Core\Util\JSON_File::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/JSON_File.php on line 113

Deprecated: Return type of Google\Site_Kit\Core\Util\JSON_File::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/JSON_File.php on line 124

Deprecated: Return type of Google\Site_Kit\Core\Util\JSON_File::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/JSON_File.php on line 148

Deprecated: Return type of Google\Site_Kit\Core\Util\JSON_File::jsonSerialize() should either be compatible with JsonSerializable::jsonSerialize(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/JSON_File.php on line 135

Deprecated: Creation of dynamic property WP_Bulk_Delete::$api is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/wp-bulk-delete/wp-bulk-delete.php on line 53

Deprecated: Constant FILTER_SANITIZE_STRING is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Admin/Standalone.php on line 95

Deprecated: filter_input(): Passing null to parameter #4 ($options) of type array|int is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/Input.php on line 64

Deprecated: filter_input(): Passing null to parameter #4 ($options) of type array|int is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/Input.php on line 64

Deprecated: version_compare(): Passing null to parameter #2 ($version2) of type string is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/elementor/core/upgrade/manager.php on line 62

Deprecated: Return type of Elementor\Core\Utils\Collection::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/elementor/core/utils/collection.php on line 404

Deprecated: Return type of Elementor\Core\Utils\Collection::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/elementor/core/utils/collection.php on line 413

Deprecated: Return type of Elementor\Core\Utils\Collection::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/elementor/core/utils/collection.php on line 421

Deprecated: Return type of Elementor\Core\Utils\Collection::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/elementor/core/utils/collection.php on line 432

Deprecated: Return type of Elementor\Core\Utils\Collection::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/elementor/core/utils/collection.php on line 446

Deprecated: Return type of Elementor\Core\Utils\Collection::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/elementor/core/utils/collection.php on line 439

Deprecated: version_compare(): Passing null to parameter #2 ($version2) of type string is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/elementor/core/upgrade/manager.php on line 62

Deprecated: Creation of dynamic property Advanced_Ads_Ads_Txt_Public::$strategy is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/advanced-ads/modules/ads-txt/public/class-advanced-ads-ads-txt-public.php on line 12

Deprecated: Creation of dynamic property Advanced_Ads_Ads_Txt_Public::$strategy is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/advanced-ads/modules/ads-txt/public/class-advanced-ads-ads-txt-public.php on line 12

Deprecated: Creation of dynamic property Advanced_Ads_Network_Adsense::$settings_section_id is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/advanced-ads/admin/includes/class-ad-network.php on line 45

Deprecated: Creation of dynamic property Advanced_Ads_Network_Adsense::$settings_init_hook is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/advanced-ads/admin/includes/class-ad-network.php on line 46

Deprecated: Creation of dynamic property Advanced_Ads_Network_Adsense::$data is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/advanced-ads/modules/gadsense/includes/class-network-adsense.php on line 38

Deprecated: filter_input(): Passing null to parameter #4 ($options) of type array|int is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/Input.php on line 64

Deprecated: filter_input(): Passing null to parameter #4 ($options) of type array|int is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/Input.php on line 64

Deprecated: Creation of dynamic property Google\Site_Kit\Modules\Analytics\Web_Tag::$module_slug is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Modules/Tags/Module_Tag.php on line 42

Deprecated: filter_input(): Passing null to parameter #4 ($options) of type array|int is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/Input.php on line 64

Deprecated: Creation of dynamic property Google\Site_Kit\Modules\Analytics_4\Web_Tag::$module_slug is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Modules/Tags/Module_Tag.php on line 42

Deprecated: filter_input(): Passing null to parameter #4 ($options) of type array|int is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/Input.php on line 64
Mit offenen Ohren zum sicheren SmartHome – blog.stromhaltig

Mit offenen Ohren zum sicheren SmartHome

In einer Beitragsreihe Ende 2015 haben die Proteus Solutions GbR und blog.stromhaltig potentielle Risiken und ihre Auswirkungen aufgezeigt, die von Smart Homes ausgehen: Steuerung von intelligenten Häusern, die durchaus auch außerhalb ihres Einsatzgebietes eine Gefahr darstellen können. Zusammenfassend wird es riskant, sobald es einem Fremden möglich ist, die Kontrolle zu übernehmen und z.B. Einspeisung oder Lasten im Umfeld von Speichersystemen zu schalten. Ausgehend von den gemachten Beobachtungen beginnt das Jahr 2016 mit der Entwicklung von einigen „Best-Practises“, die Risiken minimieren.

Als Überleitung zu den Best-Practises soll ein konkreter Fall beschrieben werden. Bei der Produktreihe „VARTA element“ war es möglich durch Aufruf einer bestimmten URL die Speichersteuerung zum Laden oder Entladen aufzufordern. Diese Einstellung ist mittlerweile in den Energiespeichersystemen von VARTA Storage überarbeitet und wird aktuell auf die am Markt befindlichen Systeme ausgerollt.

VARTA Storage ist einer der führenden deutschen Herstellern von Speichersystemen, die zum Beispiel mit einer Photovoltaikanlage kombiniert werden können. Sobald mehr Strom von der Anlage erzeugt wird als zeitgleich im Haus verbraucht wird, wird der Speicher geladen. Geht die Sonne unter oder erhöht sich der Verbrauch, so wird die elektrische Energie wieder zurück  eingespeist.

Rollen

Wie bei sehr vielen Lösungen, die man in einem SmartHome findet, besitzt auch der Sonnenspeicher von VARTA Storage einen Webserver zur Konfiguration und zum Auslesen des aktuellen Status. Die Entwickler der Software richteten drei Rollen ein:

  • Anwender (Besitzer)
    Mit dieser Rolle kann man  lediglich den Status einsehen und die Rahmenbedingungen für die Ansteuerung eines externen Relay einstellen. 
  • Installateur
    Durch ein Passwort geschützt kommt man in den Bereich für Installateure. Hier werden die Grundeinstellungen, die für den Anschluss das Stromnetz notwendig sind, vorgenommen und die  Seriennummern der einzelnen Komponenten eingetragen.
  • VARTA Intern
    Für den Kundendienst durch den Hersteller existiert eine weitere Rolle  mit der detailliertere Informationen  zum Zustand der einzelnen Zellen ausgelesen werden können. Wie der Zugang für Installateure wird auch dieser Zugang durch ein Passwort geschützt.

 

Im Rahmen der Recherchen zur Beitragsreihe „Sicherheit im Smarthome“ wurde herausgefunden, dassbei den Batteriespeichern von VARTA Storage den Installateuren möglich war, den Speicher bei der ersten Inbetriebnahme zu testen. Ist die Erstinstallation abgeschlossen, so überwacht die Speichersteuerung fortlaufend, wie viel Strom aus dem Netz entnommen, verbraucht oder durch die PV-Anlage erzeugt wird. Per Einstellung im Installateurszugang konnte bei der Inbetriebnahme die Speichersteuerung zum Test manuell betreiben und somit zwischen „Laden“ und „Entladen“ wechseln.  Der Netzbetreiber kann in diesem Fall einen Lastwechsel von 2.000 W feststellen. Für einen einmaligen Test ist das kein Problem, jedoch sollte dies nicht zeitgleich bei vielen Speichern vorkommen.

Risiko

Um manuelles Lademanagement vorzunehmen, öffnete der Browser des Installateurs eine bestimmte URL und sendete dadurch den Befehl an den Speicher. Leider konnte man diese URL auch aufrufen, wenn man nicht vorher als Installateur angemeldet gewesen ist. Theoretisch war es sogar möglich, einen 2.000 Watt Lastwechsel aus der Ferne durchzuführen, indem man den Besitzer auf eine Webseite loggt, die als „Bild“ getarnt versehentlich den Befehl ausführt.

Durch blog.stromhaltig wurde die Schwachstelle an VARTA Storage gemeldet und innerhalb von unter einer Woche per Aktualisierung der Firmware behoben. Mittlerweile wurden bei VARTA Storage weitere interne Tests dazu durchgeführt und das Ausrollen der Software aktuell umgesetzt, so dass kein am Internet hängendes VARTA System mehr durch diese beschriebenen Schritte ferngesteuert werden kann..

Bei den in den kommenden Wochen erscheinenden Best-Practises wird eine wichtige Erkenntnis aus den Erfahrungen mit VARTA Storage verarbeitet werden. Die gefundene Schwachstelle konnte nur geschlossen werden, da man beim Hersteller auf ein offenes Ohr gestoßen war und Meldungen und Hinweise von außen in Weiterentwicklungen einfließen lässt.

Softwarehersteller haben in den vergangenen Jahren sehr viele verschiedene Werkzeuge entwickelt, wie man systemrelevante Meldungen bewerten und beheben kann. Anbieter von Lösungen aus dem Bereich SmartHome verfolgen in ihrer Softwareentwicklung jedoch selten diese Standards, was ein breites Spektrum von Risiken in die „intelligenten Häuser“ der Kunden gebracht hat.

Inhalt nicht verfügbar.
Bitte erlauben Sie Cookies, indem Sie auf Übernehmen Sie auf das Banner

Durch das Fortsetzen der Benutzung dieser Seite, stimmst du der Benutzung von Cookies zu. Weitere Informationen

Die Cookie-Einstellungen auf dieser Website sind auf "Cookies zulassen", um Ihnen das beste Surferlebnis möglich zu geben. Wenn Sie diese Website ohne Änderung Ihrer Cookie-Einstellungen zu verwenden fortzufahren, oder klicken Sie auf "Akzeptieren" unten, dann erklären Sie sich mit diesen.

Schließen