アプライアンスのアクティベーション コードとしてイーサネット MAC アドレスを使用しますか?
-
09-06-2019 - |
質問
ネットワーク接続アプライアンス (小型フォーム ファクター PC) を現場に導入すると仮定します。これらが電源投入後にコール ホームになり、エンド ユーザーが識別してアクティブ化できるようにしたいと考えています。
現在の計画では、ユーザーが Web サイトのアクティベーション ページに MAC アドレスを入力する必要があります。その後、ソフトウェア (ボックス上で実行) がインターフェイスからアドレスを読み取り、これを「コール ホーム」パケットで送信します。一致する場合、サーバーは顧客情報を含む応答を返し、ボックスがアクティブになります。
アクセスが簡単で、通常は外部ラベルに印刷されるため (FCC 要件?)、このアプローチが気に入っています。
注意すべき問題はありますか?(使用しているハードウェアはスモール フォーム ファクターであるため、すべての NIC などが埋め込まれており、変更するのは非常に困難です。通常、顧客はいかなる方法でも OS に直接アクセスできません)。
Microsoft が PCI デバイス ID やメモリ サイズなどを使用して Windows アクティベーションのためにクレイジーなファジー ハッシュ関数を実行していることは知っています。しかし、それは私たちのニーズにとってはやりすぎのように思えます。
--
@Neall 基本的に、サーバーに呼び出します。この議論の目的のために、私たちをメーカーと呼ぶことができます。
ニールの言うとおりです。アドレスを定数として使用しているだけです。イーサネット フレームから何らかの方法で取得することに依存せず、それを読み取って別のパケット (HTTP POST としましょう) 内で送信します。
解決
あなたがここでやっていることには何も魔法があるとは思えません - あなたがやっていることは次のように説明できませんか?
「生産時には、エンドユーザーが読み取ることができる (ラベルに記載されています) だけでなく、内部プロセッサーもアクセスできる一意の番号を各デバイスに焼き付けています。当社のユーザーは、クレジット カードの詳細とともにこの番号を当社の Web サイトに入力する必要があり、その後、ボックスは操作の許可を得るために Web サイトに連絡します。」
"偶然に いずれにせよ運用中に一意に割り当てる必要があるため、この番号をネットワーク パケットの MAC アドレスとしても使用します。そのため、この部分の作業を重複して行う必要がなくなりました。」
明らかな危険性は次の 2 つだと思います。
人々はあなたのデバイスをハッキングし、このアドレスを他の誰かがすでにアクティブ化したアドレスに変更します。これが起こりそうかどうかは、それがどれほど難しいか、そして彼らが盗むものはどれだけ高価であるかの間の何らかの関係によって決まります。ファームウェア アップグレード ファイルを取得してそこからコードを取り出すのがいかに簡単かについて考えてみるとよいでしょう。
誰かがファイアウォール/ルータールールと少しのカスタムソフトウェアを組み合わせて使用し、サーバーの動作を複製するサーバーを生成します。 あなたの 「認証サーバー」を選択し、デバイスに続行する許可を与えます。プロトコルの一部としてハッシュ/PKE を組み合わせることで、これをさらに困難にすることができます。
これまで同様、退屈で高価な 1 回限りのハッキングはほとんど意味がありません。望まないのは、インターネットを介してすべての窃盗犯に配布できる授業の中断です。
他のヒント
この場合、よく知られている MAC アドレスのスプーフィングが問題になるとは思いません。tweakt は単に最初の識別に使用したいだけだと思います。デバイスは自身の MAC アドレスを読み取ることができ、設置者は (ラベルに印刷されている限り) 同じ番号を読み取り、「OK、これは場所 A に置いた箱だ」と認識します。
微調整 - これらのボックスは製造元のサーバー、またはそれらを使用している会社/個人のサーバーに呼び出しを行っているのでしょうか (または、この場合、それらは同じものですか)。
MAC アドレスは、マニュアルやステッカーに記載されているシリアル番号と同じように固有です。
Microsoft は、MAC アドレスのスプーフィングを防止し、プライバシーを少しでも確保するためにハッシュを行っています。
唯一の MAC アプローチを使用すると、同じサブネット内に存在するだけでデバイスと顧客を簡単に照合できます。ハッシュは、使用される基準が不透明であり、個々の部分をリバース エンジニアリングする方法がないため、これを防ぎます。
(パスワードのハッシュ化を参照)
セキュリティの観点から見ると、MAC をスプーフィングすることが可能であることはわかっていますが、それがどれほど難しいのか、どのようなことが伴うのかは完全にはわかりません。
それ以外の場合、顧客がハードウェアや OS に簡単にアクセスできない場合は、これをかなり安全に実行できるはずです...おそらく、何かをいじるとサーバーとの通信が中断されるという警告ステッカーを貼るのが最善でしょう。