Freigeben über


Überlegungen zur Gerätehostsicherheit

Die Verwendung des Gerätehosts verursacht Sicherheitsprobleme aufgrund der folgenden Punkte:

  • Geräte, die auf einem Computer mit Windows XP gehostet werden, senden Ankündigungen in allen Netzwerken.
  • Geräte, die auf einem Computer mit Windows XP gehostet werden, ermöglichen die Steuerung von Geräten aus allen Netzwerken.

Dies erhöht das Risiko für Heimanwender, da Geräte wie ein Media Player oder ein überbrückte Beleuchtungs- oder HVAC-System, das auf einem Computer mit Windows XP gehostet wird, sichtbar sind und von Kontrollpunkten außerhalb des Hauses gesteuert werden können.

Beim Erstellen eines gehosteten Geräts müssen Sie einige Sicherheitsprobleme berücksichtigen.

  • Um den Umfang der Ermittlung und des Angriffs von UPnP-basierten Geräten zu verringern, beträgt die TTL aller SSDP-Nachrichten 1. Dies bedeutet, dass ein registriertes Gerät nur von Kontrollpunkten im selben Netzwerk erkannt wird. Sie können eine höhere TTL in der Registrierung konfigurieren.
  • Für die Registrierung eines nicht ausgeführten Geräts ist die Vorabregistrierung des Geräts .dll mit COM erforderlich, was Administratorrechte erfordert.
  • Für die Registrierung eines ausgeführten Geräts sind Administrator-, lokale Dienst- oder lokale Systemberechtigungen erforderlich.
  • Wenn der Gerätehost gestartet wird, wird er als LocalService-ausgeführt. Dadurch erhält das Gerät die Möglichkeit, Audits zu generieren und den HKEY_LOCAL_MACHINE Registrierungsschlüssel zu lesen. Das Gerät hat Zugriff auf HKEY_CURRENT_USER. Das LocalService-Konto kann Ressourcen verwenden, auf die LocalService Zugriff gewährt wurde, sowie diejenigen, die Zugriff auf AuthenticatedUser gewähren. Das Gerät verfügt über eingeschränkten Dateisystemzugriff.
  • Die Dateisystem-ACLs müssen aktualisiert werden, um LocalService Zugriff auf das Ressourcenverzeichnis zu ermöglichen.
  • Wenn Ihr Gerät mehr Sicherheitszugriff benötigt, können Sie einen eigenen Prozess für das Gerät erstellen und registrieren, indem Sie IUPnPRegistrar::RegisterRunningDeviceverwenden.