
Radar は、Rust で書かれた小型ながら効率的なネットワークスキャナです。masscan に強く影響を受けています。
主な機能は以下の通りです:
pnet によるユーザー空間での TCP、UDP、DHCP、ARP の実装masscan と同様、可能な限り高速であることを目指しています。私の 1Gbit ネットワークでは、約 300k パケット/秒を達成しています。
リリースページからバイナリをダウンロードした後、次のようにします:
xz -d radar-x86_64-musl.xz
mv radar-x86_64-musl radar
chmod +x radar
次のコマンドで簡単に nix シェルを取得できます: nix shell github:deade1e/radar
まず、radar コンソールを開きます:
$ sudo ./radar -i default console
sudo または同等の権限が必要です(raw ソケットを使用するため)。
これによりスキャナがコンソールモードで起動し、さまざまなコマンドを発行できるようになります。
すべてのコマンドを確認するには、help と入力してください。コンソールモードは
Hackshell に基づいています。
すべてのコマンドと簡単な説明を含むヘルプを表示:
radar> help
内部 ARP テーブルを表示:
radar> arp
インターフェースのすべてのサブネットで ARP スキャンを実行:
radar> arpscan -a
scan コマンドのヘルプを表示:
radar> scan --help
Error: Scan the network
Usage: scan [OPTIONS] -p <PORTS> <SUBNET>
Arguments:
<SUBNET> The subnet to scan
Options:
-p <PORTS> The ports to scan
-u, --udp Use UDP instead of TCP
-a, --arp-mode Enables ARP mode for scanning only the local network. When this option is enabled the packets are sent directly to the target MAC address instead of the router MAC address. An ARP
scan will be performed before the actual port scan while using this option
-r, --max-rate <MAX_RATE> The maximum rate of packets to send per second. Default = 1000
-j, --json JSON output
--json-content Include response packet content in the JSON output
-b, --blacklist <BLACKLIST> Blacklist file of subnets not to be scanned or ever contacted in any way. Mandatory when a /0 (global IPv4) scan is performed
-m, --router-mac <ROUTER_MAC> Router MAC address. Used when the router cannot be detected automatically or for benchmarking purposes
-c, --content <CONTENT> The content of the packet to send. Must be a base64 encoded string. Only used in UDP mode
-h, --help Print help
内部サブネットの基本スキャンを実行:
radar> scan -p 1-1000 192.168.1.0/24
このモードでは、masscan と同様にデフォルトゲートウェイを使用してパケットをルーティングします。
-a を追加すると ARP モードが有効になり、イーサネットフレームを送信する前に個々の MAC アドレスが解決されます。
より高速にしたい場合は、--max-rate パラメータを設定してください。ルーター/ネットワークがクラッシュする可能性があるため、注意してください。
DNS サーバーを探すために、事前にロードされたコンテンツで UDP スキャンを実行:
radar> scan -p 53 192.168.1.0/24 -u -c kOQBAAABAAAAAAABBmdvb2dsZQNjb20AAAEAAQAAKQSwAAAAAAAA
この base64 コンテンツは、google.com に対する DNS リクエストです。
UDP サービスはときに控えめなので、正しいペイロードを与えて助けてあげましょう!
インターフェース上で DHCP リクエストを監視:
radar> monitor -f dhcp-req
他のイベントも監視できます!すべて確認するには monitor --help をチェックしてください。
現在進行中のタスクを表示:
radar> task
Task Started at
---- ----------
monitor 2026-01-07 00:09:34
タスクを終了:
radar> task -t monitor
コンソールをスクリプト化し、起動時に一連のコマンドを実行:
$ sudo ./radar -i default console -r script.txt
出力を保存したいですか?
$ sudo ./radar -i default console -r script.txt > scan_output.log
ステータスメッセージは stderr に、コマンド実行結果は stdout に出力されます。
ワンショットスキャンコマンド:
$ sudo ./radar -i default scan --help
rustup default stable
rustup target add x86_64-unknown-linux-musl
rustup component add rustfmt rust-analyzer rust-src clippy
export CARGO_BUILD_TARGET="x86_64-unknown-linux-musl"
cargo build
nix build
nix develop
このプロジェクトは、masscan の拡張版であり、よりプラグイン可能/ハック可能なバージョンを目指しています。ローカルネットワークと非 RFC1918 ネットワークの両方で動作するため、理論上はインターネット全体をスキャンすることも可能です。
このプログラムを使用してインターネット全体や許可されていないホストをスキャンすると、罰金や逮捕の対象となる可能性があります。何かを行う前に必ず二重確認してください。
警告されました。