
様々なツールで使用するためのターゲットリストを生成するnmapスクリプトです。
各種ツールで使用するためのターゲットリストを生成するNmapスクリプトです。
このスクリプトをすべてのスクリプトスキャン(-sC)の一部としてデフォルトで実行するには、Nmapデータディレクトリのscriptsサブディレクトリにnlist.confファイルと一緒に保存する必要があります。
ユーザーのホームディレクトリに配置された.nlistファイルは、nlist.config引数で別の設定ファイルが指定されていない場合、デフォルトのnlist.confファイルの代わりに使用されます。
バージョンスキャン(-sV)の一部として実行すると最も効果的です。
nmap [-sV] --script nlist [--script-args nlist.config=<config_file>,nlist.ignorehome,nlist.outdir=<output_directory>,nlist.overwrite] [-p-] <target>
-- nlist.config=<config_file>: nList configuration file
-- nlist.ignorehome: If specified, the '.nlist' configuration file in the user's home directory is ignored
-- nlist.outdir=<output_directory>: Output directory to write list files to ('./target_lists' by default)
-- nlist.overwrite: If specified, existing output files are overwritten
すべての引数は設定ファイルで指定された設定を上書きします!
設定ファイルは、このリポジトリで提供されているnlist.confファイルと同じ構造に従う必要があります。独自の設定ファイルを作成する前に、このファイルをよく理解しておくことをお勧めします。
設定ファイルには次のオプションを含めることができます:
overwrite: 既存の出力ファイルを上書きするか(true)または追記するか(false)を指定するブール値。output_directory: 出力ファイルを保存するディレクトリを含む文字列(存在しない場合は作成されます)。use_default_rules: nlist.confファイルで定義されたデフォルトルールに加えて、この設定ファイルで定義されたルールも使用するか(true)使用しないか(false)を指定するブール値。use_home_rules: ユーザーのホームディレクトリ内の.nlistファイルで定義されたルールに加えて、この設定ファイルで定義されたルールも使用するか(true)使用しないか(false)を指定するブール値。output_files: スクリプトが生成する各出力ファイルの仕様の配列(詳細は以下のサブセクションを参照)。output_files の仕様各output_files仕様は、次のオプションで構成されています:
name: 出力ファイルへのパスを含む文字列。rules: ファイルの内容を決定するために使用されるルールの配列(詳細は以下のサブセクションを参照)。output_format: ファイル内の各行が取るべき形式を指定する配列(詳細は以下のサブセクションを参照)。rules ルールポートが出力ファイルに含まれるためには、出力ファイルに指定されたルールのうち1つだけが満たされていれば十分です(そのポートに対しては、その出力ファイルの後続のルールはスキップされます)!
ルールは、次の条件の組み合わせで構成できます:
port_protocol: 許容されるポートプロトコル(tcp および/または udp)を含む配列。port_number: 許容されるポート番号を含む配列。service: 許容されるサービスを含む配列(大文字と小文字を区別しません)。service_type: 許容されるサービス種別を含む配列(現在、有効な値はhttpとssl/tlsのみです)。output_format の形式この配列の最初の文字列は、後続の値が挿入される%sを含むフォーマット文字列である必要があります(これらは指定された順序で表示されます)。続く文字列は、次の値の任意の組み合わせにすることができます:
ip: ホストのIPアドレス。port_number: ポート番号。port_protocol: ポートプロトコル(tcp または udp)。service: ポートで実行されているサービス。フォーマット文字列内の%sの出現回数と同じ数の値を指定する必要があります!
リテラルの%文字はバックスラッシュでエスケープする必要があります(\%)!