ike-scan - クラウド上のオンライン

これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド ike-scan です。

プログラム:

NAME


ike-scan - IKE ホスト (IPsec VPN サーバー) を検出してフィンガープリントします。

SYNOPSIS


ikeスキャン [オプション] [ホスト...]

ターゲット ホストはコマンド ラインで指定する必要があります。 - ファイル オプションが指定されています。

DESCRIPTION


ikeスキャン IKE ホストを検出し、再送信を使用してそれらのフィンガープリントを実行することもできます。
バックオフパターン。

ikeスキャン 次の XNUMX つのことを行います。

1) 検出: IKE を実行しているホストを特定します。 これはそれらを表示することで行われます
によって送信された IKE リクエストに応答するホスト イケスキャン。

2) フィンガープリンティング: ホストが使用している IKE 実装を特定します。 がある
これを行うにはいくつかの方法があります: (a) バックオフ フィンガープリンティング - 時間の記録
ターゲット ホストからの IKE 応答パケットと、観察されたパケットの比較
既知のパターンに対する再送信バックオフ パターン。 (b) ベンダー ID のフィンガープリンティング
- ベンダー固有のベンダー ID を既知のベンダー ID パターンと照合する。 および (c)
独自の通知メッセージ コード。

再送信バックオフ フィンガープリンティングの概念については、UDP で詳しく説明されています。
バックオフ指紋採取用紙は、ike-scan キットに含まれている必要があります。 udp-バックオフ-
指紋採取用紙.txt。

プログラムは、指定されたホストに IKE フェーズ 1 リクエストを送信し、応答があれば表示します。
受け取ったもの。 パケットに対処するためにバックオフを使用して再試行および再送信を処理します。
損失。 また、送信 IKE パケットによって使用される帯域幅の量も制限されます。

IKE は、鍵交換と認証を行うインターネット鍵交換プロトコルです。
IPsec で使用されるメカニズム。 最新のほぼすべての VPN システムは IPsec を実装しており、
ほとんどの IPsec VPN はキー交換に IKE を使用します。

フェーズ 1 には、メイン モードとアグレッシブ モードの XNUMX つのモードがあります。 ike-scan は Main と
アグレッシブ モード。デフォルトでメイン モードを使用します。 RFC 2409 (IKE) セクション 5 では、次のように規定されています。
メイン モードを実装する必要があるため、すべての IKE 実装は次のことを期待できます。
メインモードをサポートします。

OPTIONS


- 助けて or -h
この使用法メッセージを表示して終了します。

--file= or -f
コマンドからではなく、指定されたファイルからホスト名またはアドレスを読み取ります。
ライン。 XNUMX 行に XNUMX つの名前または IP アドレス。 標準入力には「-」を使用します。

--スポーツ= or -s
UDP 送信元ポートを次のように設定します、デフォルト = 500、0 = ランダム。 一部の IKE 実装
クライアントは UDP ソース ポート 500 を使用する必要があり、他のポートとは通信しません。
ゼロ以外の送信元ポートを使用するには、通常、スーパーユーザー権限が必要であることに注意してください。
また、システム上の 1024 つのプロセスのみが、指定されたソース ポートにバインドできます。
いつでも。 --nat-t オプションを使用すると、デフォルトの送信元ポートが 4500 に変更されます

--dポート= or -d
UDP 宛先ポートを次のように設定します、デフォルト = 500。 UDP ポート 500 が割り当てられたポートです
ISAKMP の番号。これは、すべてではないにしても、ほとんどの IKE 実装で使用されるポートです。
--nat-t オプションを使用すると、デフォルトの宛先ポートが 4500 に変更されます。

--再試行= or -r
ホストごとの合計試行回数を次のように設定します。 、デフォルト = 3。

--タイムアウト= or -t
ホストごとの初期タイムアウトを次のように設定しますミリ秒、デフォルト = 500。 このタイムアウトは最初のものです
パケットが各ホストに送信されます。 後続のタイムアウトにはバックオフ係数が乗算されます
これは --backoff で設定されます。

--帯域幅= or -B
必要な送信帯域幅を次のように設定します。 、デフォルト=56000 値はビット/あたりです。
デフォルトでは XNUMX 番目です。 値に「K」を追加すると、単位はキロビットあたりになります。
XNUMX番; 値に「M」を追加すると、単位はメガビット/秒になります。 の
「K」および「M」の接尾辞は、64 進数ではなく XNUMX 進数の倍数を表します。 つまり XNUMXK は
64000ではなく65536です。

--間隔= or -i
最小パケット間隔を次のように設定します。 MS。 パケット間隔は次の値以上になります。
この番号。 デフォルトでは、指定される間隔はミリ秒単位です。 もし「あなた」が
値に追加される場合、間隔はマイクロ秒単位であり、「s」が
追加される間隔は秒単位です。 指定された帯域幅まで使用したい場合は、
その場合は、代わりに --bandwidth オプションを使用する方が簡単です。 両方を指定することはできません
--interval と --bandwidth は、同じ変更方法が異なるだけなので、
基礎となる変数。

--バックオフ= or -b
タイムアウト バックオフ係数を に設定します(デフォルト = 1.50)。 ホストごとのタイムアウトは次のとおりです。
タイムアウトごとにこの係数が乗算されます。 したがって、再試行回数が 3 回の場合、
ホストごとの初期タイムアウトは 500 ミリ秒、バックオフ係数は 1.5 で、その後、最初の
タイムアウトは 500 ミリ秒、750 番目は 1125 ミリ秒、XNUMX 番目は XNUMX ミリ秒になります。

-詳細 or -v
詳細な進行状況メッセージを表示します。 複数回使用すると効果が高まります: 1 - 表示
各パスが完了したとき、および無効な Cookie を含むパケットが受信されたとき。 2
- 送受信された各パケットと、ホストがいつリストから削除されたかを表示します。 3 -
スキャンを開始する前に、ホスト、ベンダー ID、およびバックオフのリストを表示します。

- 静かな or -q
返されたパケットをデコードしないでください。 これにより、出力されるプロトコル情報が少なくなるため、
出力行が短くなります。

-マルチライン or -M
ペイロードのデコードを複数の行に分割します。 このオプションを使用すると、
各ペイロードは、TAB で始まる別の行に出力されます。 このオプションにより、
特にペイロードが多い場合、出力が読みやすくなります。

--ライフタイム= or -l
IKE の有効期間を秒に設定します (デフォルト = 28800)。 RFC 2407 では、28800 を
デフォルトですが、実装によっては異なる値が必要になる場合があります。 指定する場合
これを 86400 進整数 (例: 4) にすると、属性は XNUMX バイトを使用します。
価値。 0 進数 (XNUMXxFF など) で指定した場合、属性は次の値を使用します。
適切なサイズ値 (この例では XNUMX バイト)。 文字列を指定する場合
「none」の場合、ライフタイム属性はまったく追加されません。 このオプションを使用できます
--trans オプションと組み合わせて複数回実行すると、複数のファイルが生成されます。
異なる有効期間を持つペイロードを変換します。 各 --trans オプションは、
以前に指定されたライフタイム値。

--lifesize= or -z
IKE ライフサイズをキロバイト (デフォルト = 0) に設定します。 これを XNUMX 進数で指定すると
整数 (例: 86400) の場合、属性は 4 バイト値を使用します。 指定する場合
0 進数 (例: XNUMXxFF) の場合、属性は適切なサイズを使用します。
値 (この例では XNUMX バイト)。 このオプションは複数回使用できます。
--trans オプションと組み合わせて、複数の変換ペイロードを生成します。
さまざまな等身大。 各 --trans オプションは、以前に指定したものを使用します。
等身大の価値。

--auth= or -m
認証を設定します。 する方法、デフォルト = 1 (PSK)。 RFC で定義されている値は 1 ~ 5 です。RFC を参照してください。
2409 付録 A. チェックポイント ハイブリッド モードは 64221 です。GSS (Windows "Kerberos") は
65001。XAUTH は 65001 ~ 65010 を使用します。これは IKEv2 には適用されません。

- バージョン or -V
プログラムのバージョンを表示して終了します。

--ベンダー= or -e
ベンダー ID 文字列を XNUMX 進値に設定します。 このオプションを複数回使用すると、
複数のベンダー ID ペイロードを送信します。

--trans= or -a
カスタム変換を使用するデフォルトのセットの代わりに。 このオプションは以下以外にも使用できます
任意の数のカスタム変換を一度送信します。 方法は XNUMX つあります
変換を指定します。属性と値のペアを指定する新しい方法です。
もう XNUMX つは、属性の固定リストの値を指定する古い方法です。 ために
新しいメソッド、トランスフォーム(attr=value, attr=value, ...) として指定されます。
ここで、「attr」は属性番号、「value」はその属性に割り当てる値です。
属性。 任意の数の属性と値のペアを指定できます。 RFCを参照
2409 属性と値の詳細については、付録 A を参照してください。 括弧は次のとおりであることに注意してください。
一部のシェルに特殊なため、引用符で囲む必要がある場合があります。
--trans="(1=1,2=2,3=3,4=4)". For example, --trans=(1=1,2=2,3=1,4=2) specifies
Enc=3DES-CBC、ハッシュ=SHA1、認証=共有キー、DHグループ=2; と
--trans=(1=7,14=128,2=1,3=3,4=5) は、Enc=AES/128、Hash=MD5、Auth=RSA sig、DH を指定します。
グループ=5。 古いメソッドの場合、transform として指定されます
enc[/len]、ハッシュ、認証、グループ。 ここで、enc は暗号化アルゴリズム、len はキーです
length は可変長暗号の場合、hash はハッシュ アルゴリズム、group は DH です。
グループ。 たとえば、--trans=5,2,1,2 は、Enc=3DES-CBC、Hash=SHA1、Auth=shared を指定します。
キー、DH グループ = 2; --trans=7/256,1,1,5 は Enc=AES-256、Hash=MD5 を指定します。
認証 = 共有キー、DH グループ = 5。 このオプションは IKEv2 ではまだサポートされていません。

--showbackoff[= ] or -o[ 】
バックオフフィンガープリントテーブルを表示します。 バックオフテーブルを表示してフィンガープリントを行う
リモートホスト上の IKE 実装。 オプションの引数は時間を指定します
最後のパケットを受信して​​から秒単位で待機します。デフォルト = 60。 使用している場合
オプションの短縮形 (-o) の場合、値はオプションの直後に続く必要があります
スペースを含まない文字、たとえば -o 25 ではなく -o25。

--fuzz= or -u
パターンマッチングファズを次のように設定しますミリ秒、デフォルト = 500。 これにより、許容可能な最大値が設定されます
観測されたバックオフ時間と基準時間の差
バックオフパターンファイル。 値を大きくすると分散が大きくなりますが、分散も増加します。
誤検知のリスク。 パターンエントリーごとのファズ
パターン ファイル内の仕様は、ここで設定された値をオーバーライドします。

--パターン= or -p
IKE バックオフ パターン ファイルを使用する、デフォルト=/usr/local/share/ike-scan/ike-backoff-
パターン。 これは、IKE バックオフ パターンを含むファイルの名前を指定します。
このファイルは、--showbackoff が指定されている場合にのみ使用されます。

--vidpatterns= or -I
ベンダー ID パターン ファイルを使用する、デフォルト=/usr/local/share/ike-scan/ike-vendor-ids。
ベンダー ID パターンを含むファイルの名前を指定します。 これらのパターン
ベンダー ID フィンガープリンティングに使用されます。

- 攻撃的 or -A
IKE アグレッシブ モードを使用します (デフォルトはメイン モードです) --aggressive を指定すると、
--dhgroup、--id、--idtype も指定できます。 カスタムを使用する場合
--trans オプションを使用したアグレッシブ モードでの変換。すべての変換が行われることに注意してください。
同じ DH グループを持つ必要があり、これはで指定されたグループと一致する必要があります。
--dhgroup、または --dhgroup が使用されない場合のデフォルト。

--id= or -n
使用識別値として。 このオプションはアグレッシブにのみ適用されます
モード。 --id=test などの文字列として、または を使用した XNUMX 進値として指定できます。
先頭に「0x」を付けます (例: --id=0xdeadbeef)。

--idtype= or -y
識別タイプを使用する。 デフォルトは 3 (ID_USER_FQDN)。 このオプションはあくまで
アグレッシブモードに適用されます。 識別の詳細については、RFC 2407 4.6.2 を参照してください。
タイプ。

--dhgroup= or -g
ディフィー・ヘルマン・グループを使用する。 デフォルト 2。このオプションは次の場合にのみ適用されます。
アグレッシブ モードと IKEv2。 どちらの場合も、次のサイズを決定するために使用されます。
鍵交換ペイロード。 カスタム変換でアグレッシブ モードを使用する場合、
デフォルトを使用していない限り、通常は --dhgroup オプションを使用する必要があります。
DHグループ。 許容値は 1,2,5,14,15,16,17,18、XNUMX、XNUMX、XNUMX、XNUMX、XNUMX、XNUMX、XNUMX (MODP のみ) です。

--gssid= or -G
GSS ID を使用するどこは 16384 進文字列です。 これは、変換属性タイプ XNUMX を使用します。
Windows-07 では、draft-ietf-ipsec-isakmp-gss-auth-2000.txt で指定されているとおりです。
32001 も使用されていることが観察されています。 Windows 2000 の場合は、次を使用する必要があります。
--auth=65001 は、Kerberos (GSS) 認証を指定します。

- ランダム or -R
ホストリストをランダム化します。 このオプションは、ホスト内のホストの順序をランダム化します。
リストに含まれるため、IKE プローブはランダムな順序でホストに送信されます。 クヌートを使用します
シャッフルアルゴリズム。

--tcp[= ] or -T[ ]
UDP の代わりに TCP トランスポートを使用します。 これにより、IKE を実行しているホストをテストできます。
TCP。 通常、このオプションは必要ありません。なぜなら、IPsec の大部分は
システムは IKE over UDP のみをサポートします。 オプションの値のタイプを指定します
TCP 経由の IKE。 現在、可能な値は 1 つあります。 XNUMX = RAW IKE over TCP
チェックポイントによって使用されます (デフォルト)。 2 = シスコが使用するカプセル化された IKE over TCP。 もしも
オプションの短縮形 (-T) を使用している場合、値はすぐに入力する必要があります。
オプション文字の後にはスペースを入れません。たとえば、-T 2 ではなく -T2 を指定します。指定できるのは、
このオプションを使用する場合は、ターゲット ホストが XNUMX つだけになります。

--tcptimeout= or -O
TCP 接続タイムアウトを次のように設定します秒 (デフォルト = 10)。 これは以下にのみ適用されます
TCP トランスポート モード。

--pskcrack[= 】 or -P[ 】
アグレッシブ モードの事前共有キーをクラックします。 このオプションはアグレッシブ モードを出力します。
「psk-crack」プログラムを使用したオフラインクラッキング用の事前共有キー(PSK)パラメータ
これは ike-scan に付属しています。 オプションでファイル名を指定できます。 、 に
PSKパラメータをに書き込みます。 ファイル名を指定しない場合、PSK
パラメータは標準出力に書き込まれます。 の短い形式を使用している場合、
オプション (-P) の場合、オプション文字の直後に値を指定する必要があります。
スペース、たとえば -P file ではなく -Pfile。 次の場合は、ターゲット ホストを XNUMX つだけ指定できます。
このオプションを使用してください。 このオプションは、IKE アグレッシブ モードにのみ適用されます。

--うなずく or -N
名前解決に DNS を使用しないでください。 このオプションを使用する場合は、すべてのホストが
IPアドレスとして指定します。

--ノンセレン= or -c
ノンスの長さを次のように設定します。 バイト。 デフォルト = 20 このオプションは、
アグレッシブ モードまたは IKEv2 リクエストで送信される nonce ペイロード。 通常は
nonce サイズを小さくしたい場合を除き、このオプションを使用する必要はありません。
事前共有キーのクラッキングを高速化する場合、または特定のサーバーがどのようにクラッキングするかを確認したい場合
異なる長さの nonce ペイロードを処理します。 RFC 2409 では、ノンスの長さは次のように規定されています。
ペイロードは 8 ~ 256 バイトである必要がありますが、ike-scan はこれを強制しません。
長いノンス長を指定すると、ike- によって送信されるパケットのサイズが増加します。
スキャン。 ノンスの長さが非常に長いと、断片化が発生したり、最大 IP を超える可能性があります。
パケットサイズ。 このオプションは、IKE アグレッシブ モードにのみ適用されます。

--headerlen= or -L
ISAKMP ヘッダーの長さを次のように設定します。 バイト。 このオプションを使用すると、
ISAKMP ヘッダー長に使用する値を手動で指定します。 デフォルトでは、
ike-scan は正しい値を入力します。 このオプションを使用して、手動で指定します。
長さが間違っています。 長さを n バイトに設定する「+n」として指定できます。
必要以上に大きい場合、「-n」を指定すると n バイト少なくなり、「n」を指定すると n バイト減ります。
まさにバイト。 ヘッダーの長さを間違った値に変更すると、場合によっては
VPN サーバーを中断します。

--mbz= or -Z
値を使用する予約済み (MBZ) フィールドの場合、デフォルト = 0。 このオプションを指定すると
発信パケットを RFC 非準拠にするため、次の場合にのみ使用してください。
VPN サーバーが無効なパケットにどのように応答するかを確認してください。 の値あるべきです
0 ~ 255 の範囲で指定します。

--headerver= or -E
ISAKMPヘッダーのバージョンを指定します。 デフォルトは 0x10 (16) で、これは次の値に相当します。
v1.0。 デフォルト以外の値を指定すると、送信パケットが非 RFC になります。
に準拠しており、VPN サーバーがどのように反応するかを確認したい場合にのみ使用してください。
奇妙なバージョン。 値は 0 ~ 255 の範囲内である必要があります。

--certreq= or -C
CertificateRequest ペイロードを追加する。 XNUMX 進値として指定する必要があります。
XNUMX 進値の最初のバイトは証明書のタイプとして解釈されます。 の
残りのバイトは、RFC 2408 3.10 に記載されている認証局として使用されます。 の
証明書の種類は RFC 2408 sec 3.9 にリストされています。 RFC 2048 には、「証明書
リクエストのペイロードは交換中のどの時点でも受け入れられなければなりません」

--doi= or -D
SA DOI を次のように設定します。 、デフォルトは 1 (IPsec)。 通常は変更したくないでしょう
これは、VPN サーバーが非標準の DOI にどのように応答するかを確認したい場合を除きます。

--状況= or -S
SA 状況を次のように設定します。 、デフォルトは 1。状況の意味は以下によって異なります。
DOI であり、適切な DOI 文書に詳細が記載されています。 IPsec DOI の場合、
デフォルトの状況 1 は SIT_IDENTITY_ONLY を表します。 通常はそうしたくないでしょう
VPN サーバーが非標準にどのように応答するかを確認したくない場合は、これを変更してください。
状況。

--プロトコル= or -j
プロポーザルプロトコル ID を次のように設定します。 、デフォルト 1. 提案の意味
プロトコル ID は DOI によって異なり、適切な DOI 文書に詳細が記載されています。
IPsec DOI の場合、デフォルトのプロポーザル プロトコル ID 1 は PROTO_ISAKMP を表します。
VPN サーバーがどのように動作するかを確認したい場合を除き、通常はこれを変更する必要はありません。
非標準のプロトコル ID に応答します。

--transid= or -k
変換 ID を次のように設定します。 、デフォルトは 1。変換 ID の意味は次によって異なります。
DOI であり、適切な DOI 文書に詳細が記載されています。 IPsec DOI の場合、
デフォルトの変換 ID の 1 は KEY_IKE を表します。 通常は変更したくないでしょう
VPN サーバーが非標準の変換にどのように応答するかを確認したくない場合を除き、これは必要です。
IDを指定します。

--spisize=
プロポーザル SPI サイズを次のように設定します。 。 デフォルト = 0 これがゼロ以外の場合、ランダムな SPI
指定されたサイズのデータ​​がプロポーザルのペイロードに追加されます。 デフォルトはゼロ
SPIがないことを意味します。

--hdrflags=
ISAKMP ヘッダー フラグを次のように設定します。 。 デフォルト = 0 フラグの詳細は RFC 2408 に記載されています。
セクション3.1

--hdrmsgid=
ISAKMP ヘッダーのメッセージ ID を次のように設定します。 。 デフォルト = 0 IKE の場合はゼロにする必要があります。
フェーズ1。

--クッキー=
ISAKMP イニシエーター Cookie を次のように設定します。 Cookie 値は XNUMX 進数で指定する必要があります。
デフォルトでは、Cookie は自動的に生成され、一意の値を持ちます。 もし、あんたが
このオプションを指定すると、ike-scan のため XNUMX つのターゲットのみを指定できます。
応答パケットを照合するには一意の Cookie 値が必要です。

--交換=
交換タイプを次のように設定します。 このオプションを使用すると、交換タイプを変更できます。
ISAKMP ヘッダーを任意の値に変更します。 ike-scan は Main と
アグレッシブ モード (それぞれ値 2 と 4)。 他の値を指定すると、
ISAKMP ヘッダーの交換タイプの値を変更しますが、他の値は調整しません
ペイロード。 交換タイプは RFC 2408 sec 3.1 で定義されています。

--nextpayload=
ISAKMP ヘッダーの次のペイロードを次のように設定します。 通常、次のペイロードは
自動的に正しい値に設定されます。

--ランダムシード=
使用擬似乱数ジェネレーターをシードします。 このオプションは PRNG をシードします
指定した数値を使用します。これは、
パケット データにランダム データを含むペイロードが含まれる場合、パケット データは正確に再現可能です。
キー交換または nonce として。 デフォルトでは、PRNG には予測不可能なデータがシードされます。
の値です。

-タイムスタンプ
受信したパケットのタイムスタンプを表示します。 このオプションにより、タイムスタンプは次のようになります。
受信したパケットごとに表示されます。

--sourceip=
送信パケットの送信元 IP アドレスを に設定します。 このオプションにより、送信が行われます。
指定された送信元 IP アドレスを持つ IKE パケット。 アドレスは次のいずれかになります。
ドット区切りのクワッド形式の IP アドレス、または別の文字列「ランダム」を使用します。
送信される各パケットのランダムな送信元アドレス。 このオプションを使用した場合、いいえ
パケットが受信されます。このオプションには生のソケットのサポートが必要です。
高い送信元ポートを指定した場合でも、このオプションを使用するにはスーパーユーザー権限が必要です。
このオプションは、すべてのオペレーティング システムで機能するわけではありません。

--shownum
受信したパケットのホスト番号を表示します。 これにより、通常のホストが表示されます
IP アドレスの前に応答ホストの番号を付けます。 送るときに便利かもしれません
同じターゲット IP への多数のパケットを送信して、無視されているプローブがあるかどうかを確認します。

--nat-t
RFC 3947 NAT-Traversal カプセル化を使用します。 このオプションは、非 ESP マーカーを
送信パケットの先頭を取り出し、説明のように受信パケットからそれを取り除きます。
また、デフォルトの送信元ポートを 3947 に変更し、デフォルトのポートを 4500 に変更します。
宛先ポートを 4500 に設定します。これは NAT-T IKE 用のポートです。 これらのポート番号
--sport および --dport オプションを使用して変更できます。ただし、これらのオプションは後で使用されます。
--nat-t オプション。

--rcookie=
ISAKMP レスポンダー Cookie を次のように設定します。 。 これにより、レスポンダー Cookie が次のように設定されます。
指定された XNUMX 進値。 デフォルトでは、レスポンダー Cookie はゼロに設定されます。

--ikev2 or -2
IKE バージョン 2 を使用します。これにより、送信パケットは定義どおりに IKEv2 形式を使用します。
デフォルトのIKEv4306形式ではなくRFC 1で。 返されるパケットはすべて、
に関係なく、ペイロードに応じて IKE または IKEv2 として自動的にデコードされます。
このオプション。 --ikev2 オプションは現在実験段階です。 そうではありません
広範囲にテストされており、デフォルトのプロポーザルの送信のみをサポートしています。

onworks.net サービスを使用してオンラインで ike-scan を使用する



最新のLinuxおよびWindowsオンラインプログラム