このリポジトリは unixpickle/JamWiFi の継続です。非推奨になったため更新されません。
追加された参加オプション (BSSID による参加を対象)
スキャン エラーに説明が追加されました (コンソールのみ)
追加された設定 (隠しネットワークなど)
列の並べ替えを追加しました
Swiftで書き直す
MacOS Mojave/Catalina のサポートを追加
ダークモードのサポートを追加
最新のコンパイル済みファイルをダウンロード
ビルド 2018 以降のデバイスは、パケット インジェクションを実行するとクラッシュするようです。残念ながら、私自身そのようなデバイスを所有していないため、今すぐ修正することはできません
JamWiFi を使用すると、近くにある 1 つ以上のワイヤレス ネットワークを選択し、そのネットワーク上で現在アクティブなクライアントのリストを表示できます。さらに、JamWiFi を使用すると、選択したクライアントを好きなだけ切断できます。
JamWiFi は内部的に、チャネル ホッピングとネットワーク スキャンに Apple の CoreWLAN API を使用します。 raw パケット インターフェイスの場合、libpcap は、MAC 層で raw 802.11 フレームを送受信するための優れた抽象化ポイントを提供します。すべての 802.11 MAC パケットには、MAC アドレスの送信元と宛先が含まれます。これにより、JamWiFi は特定のアクセス ポイント上のステーションを特定できるようになります。
JamWiFi は、関連付け解除フレームを使用してクライアントを「キックオフ」します。クライアントがアクセス ポイントからアソシエーション解除フレームを受信すると、クライアントは AP との接続がアクティブでなくなったとみなします。ただし、クライアントはアソシエーション解除フレームを受信すると、すぐに AP との新しいセッションを確立しようとする可能性があります。これを防ぐために、JamWiFi はすべてのクライアントに関連付け解除フレームを非常に頻繁に送信し続けます。
ネットワークによっては、複数のアクセス ポイントが含まれる場合があります。さらに、クライアントが複数の使用可能な WiFi ネットワークを利用できるシナリオも考えられます。このシナリオでは、クライアントが 1 つの AP からアソシエートを解除された場合でも、別の AP とのセッションを正常に確立できる可能性があります。これを克服するために、JamWiFi は、クライアントが AP にアソシエートされているかどうかに関係なく、すべての AP からすべてのクライアントにアソシエーション解除フレームを送信します。これは不必要なオーバーヘッドのように思えるかもしれませんが、アクセス ポイントが 1 つを超える複雑なネットワークでは必要です。
ちょっとそこ。このツールを使用して誰かに与えた損害については、私は責任を負いません。これは実験と学習のみを目的としています。どうか、どうか、これで愚かなことをする前に、よく考えてください。隣人に嫌な思いをしたせいで WiFi が使えなくなったらどう思いますか?