Frage

Nehmen wir an, Sie stellen vor Ort vernetzte Geräte (PCs mit kleinem Formfaktor) bereit.Sie möchten zulassen, dass diese nach dem Einschalten zu Hause anrufen und dann von Endbenutzern identifiziert und aktiviert werden.

Unser aktueller Plan sieht vor, dass der Benutzer die MAC-Adresse auf einer Aktivierungsseite auf unserer Website eingibt.Später wird unsere Software (die auf der Box läuft) die Adresse aus der Schnittstelle lesen und diese in einem „Call Home“-Paket übertragen.Bei Übereinstimmung antwortet der Server mit Kundeninformationen und die Box wird aktiviert.

Uns gefällt dieser Ansatz, weil er leicht zugänglich ist und normalerweise auf externen Etiketten aufgedruckt ist (FCC-Anforderung?).

Gibt es Probleme, auf die Sie achten sollten?(Die verwendete Hardware hat einen kleinen Formfaktor, sodass alle Netzwerkkarten usw. eingebettet sind und sehr schwer zu ändern wären.Kunden haben normalerweise in keiner Weise direkten Zugriff auf das Betriebssystem.

Ich weiß, dass Microsoft eine verrückte Fuzzy-Hashing-Funktion für die Windows-Aktivierung unter Verwendung von PCI-Geräte-IDs, Speichergröße usw. durchführt.Aber das scheint für unsere Bedürfnisse zu viel des Guten.

--

@Neall Im Grunde genommen könnten Sie uns für die Zwecke dieser Diskussion beim Aufruf unseres Servers als Hersteller bezeichnen.

Neall hat recht, wir verwenden die Adresse nur als Konstante.Wir werden es lesen und in einem anderen Paket (sagen wir HTTP POST) übertragen, unabhängig davon, ob wir es irgendwie von Ethernet-Frames erhalten.

War es hilfreich?

Lösung

Ich glaube nicht, dass an dem, was Sie hier tun, etwas Magisches ist – könnte man das, was Sie tun, nicht so beschreiben:

„Bei der Produktion brennen wir in jedes unserer Geräte eine eindeutige Nummer ein, die sowohl für den Endbenutzer lesbar (auf dem Etikett) als auch für den internen Prozessor zugänglich ist.Unsere Benutzer müssen diese Nummer zusammen mit ihren Kreditkartendaten auf unserer Website eingeben, und die Box kontaktiert anschließend die Website, um eine Betriebserlaubnis einzuholen.

"Zufällig Wir verwenden diese Nummer auch als MAC-Adresse für Netzwerkpakete, da wir sie während der Produktion ohnehin eindeutig zuweisen müssen, sodass wir uns die doppelte Arbeit erspart haben.“

Ich würde sagen, die beiden offensichtlichen Gefahren sind:

  1. Die Leute hacken mit Ihrem Gerät herum und ändern diese Adresse in eine, die bereits jemand anderes aktiviert hat.Ob dies wahrscheinlich der Fall ist, hängt von einem Zusammenhang zwischen der Schwierigkeit und dem Preis des Diebstahls ab.Vielleicht möchten Sie darüber nachdenken, wie einfach sie aus einer Firmware-Upgrade-Datei den Code herausholen können.

  2. Jemand verwendet eine Kombination aus Firewall-/Routerregeln und etwas benutzerdefinierter Software, um einen Server zu erstellen, der den Betrieb von repliziert dein „Authentifizierungsserver“ und erteilt dem Gerät die Erlaubnis, fortzufahren.Sie könnten dies mit einer Kombination aus Hashing/PKE als Teil des Protokolls erschweren.

Wie immer ist ein mühsamer, teurer einmaliger Hack weitgehend irrelevant. Was Sie nicht wollen, ist eine Klassenpause, die über das Internet an jeden Diebesdweep verteilt werden kann.

Andere Tipps

Ich glaube nicht, dass die bekannte Spoofbarkeit von MAC-Adressen in diesem Fall ein Problem darstellt.Ich denke, bei Tweakt geht es nur darum, sie zur ersten Identifizierung zu verwenden.Das Gerät kann seine eigene MAC-Adresse lesen, und der Installateur kann (sofern sie auf einem Etikett aufgedruckt ist) dieselbe Nummer lesen und wissen: „OK – das ist das Kästchen, das ich an Position A platziert habe.“

Tweakt – würden diese Boxen den Server des Herstellers oder den Server des Unternehmens/der Person, die sie verwendet, anrufen (oder ist das in diesem Fall dasselbe)?

Die MAC-Adresse ist so einzigartig wie eine auf einem Handbuch/Aufkleber aufgedruckte Seriennummer.

Microsoft führt Hashing durch, um das Spoofing von MAC-Adressen zu verhindern und etwas mehr Privatsphäre zu gewährleisten.

Mit dem Nur-MAC-Ansatz können Sie ein Gerät problemlos einem Kunden zuordnen, indem Sie sich nur im selben Subnetz befinden.Der Hash verhindert dies, indem er nicht erkennt, welche Kriterien verwendet werden, und keine Möglichkeit bietet, einzelne Teile zurückzuentwickeln.

(siehe Passwort-Hashing)

Aus Sicherheitsgründen weiß ich, dass es möglich ist, einen MAC zu fälschen, obwohl ich nicht ganz sicher bin, wie schwierig das ist und was es mit sich bringt.

Andernfalls sollten Sie auf ziemlich sichere Weise vorgehen, wenn die Kunden keinen einfachen Zugriff auf die Hardware oder das Betriebssystem haben ...Wahrscheinlich ist es am besten, einen Warnaufkleber anzubringen, der darauf hinweist, dass das Herumhantieren mit irgendetwas die Kommunikation mit dem Server unterbricht.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top