この設計の欠陥はその独自性で、変更されていない MAC アドレスを使用して追跡できる可能性があります。スターバックスの WiFi に接続していますか? OK、気づきました。ロンドンの地下鉄で? それも録音してください。
WiFi 認証ページに本名を入力したことがある場合は、自分自身をこの MAC アドレスに関連付けたことになります。ライセンスのサービス規約を注意深く読まなければ、空港の無料 WiFi はいわゆる「顧客分析データ」 (個人情報) の販売によって利益を得ていると考えることができます。ホテル、レストラン、その他あなたと知り合いになりたい人に販売します。
情報が記録されて複数の企業に販売されることを望まなかったので、解決策を考えるのに数時間を費やしました。
幸いなことに、ネットワークを切断せずに疑似 MAC アドレスをランダムに生成できます。
MAC アドレスをランダムに生成したいのですが、次の 3 つの要件があります:
最初に macchanger というツールを使用しようとしましたが、失敗しました。 Network Manager は独自の設定に従ってデフォルトの MAC アドレスを復元するためです。
Network Manager 1.4.1 以降ではランダムな MAC アドレスを自動的に生成できることを知りました。 Ubuntu バージョン 17.04 を使用している場合は、この構成ファイルに基づいてこれを行うことができます。しかし、これは私の 3 つの要件を完全には満たしていません (2 つのオプション random と stable のどちらかを選択する必要があります)ただし、1 日同じままにするオプションはありません)
私は Ubuntu 16.04 を使用しており、ネットワーク マネージャーのバージョンは 1.2 であるため、上位バージョンの新機能を直接使用することはできません。おそらくネットワーク管理者はランダム化方法をサポートしているのでしょうが、私は成功しませんでした。そこで、これを実現するためのスクリプトを書きました。
幸いなことに、Network Manager 1.2 では MAC アドレスのエミュレーションが可能です。接続されたネットワークに「接続の編集」オプションが表示されます。
Network Manager はフックもサポートしています。/etc/NetworkManager/dispatcher.d/pre-up.d/ にあるスクリプトは、ネットワーク接続が確立される前に実行されます。
ネットワーク ID と日付に基づいて新しいランダムな MAC アドレスを生成したいと考えています。ネットワーク マネージャーのコマンド ライン ツール nmcli を使用して、利用可能なすべてのネットワークを表示できます。
リーリー各ネットワークには一意の識別子 (UUID) があるため、計画を実装するために、UUID と日付を連結し、MD5 を使用してハッシュ値を生成しました。
リーリー生成された結果は、MAC アドレスの最後の 8 バイトを置き換えることができます。
最初のバイト 02 は、このアドレスが自己指定であることを意味することに注意してください。実際、実際の MAC アドレスの最初の 3 バイトは製造元によって決定されます。たとえば、b4:b6:76 は Intel を表します。
一部のルーターが指定した MAC アドレスを拒否する可能性がありますが、私はそのような状況に遭遇したことはありません。
ネットワークに接続するたびに、このスクリプトは nmcli を使用して、ランダムに生成された擬似 MAC アドレスを指定します。
最後に、ifconfig の出力を確認したところ、MAC アドレス HWaddr が実際の MAC アドレスではなく、ランダムに生成されたアドレス (Intel をシミュレート) になっていることがわかりました。
リーリー ######脚本######
以上がUbuntu 16.04でWiFi MACアドレスをランダム化する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。