Skip to content

Latest commit

 

History

History
142 lines (122 loc) · 5.02 KB

README.md

File metadata and controls

142 lines (122 loc) · 5.02 KB

EN

GenGoPortScanner is a high-performance, multi-threaded port scanner written in Go. It is designed to scan ports on a given target quickly and efficiently, providing detailed information about open ports.

Features

  • High-performance multi-threaded scanning
  • Supports CIDR notation and files with multiple targets
  • Outputs results in various formats (JSON, CSV, Qubo)
  • Customizable timeout and retry settings

Installation

  1. Clone the repository:

    git clone https://github.com/geniuszlyy/GenGoPortScanner.git
    cd GenGoPortScanner
  2. Initialize Go modules:

    go mod tidy

Usage

go run .\cmd\gengoscanner\main.go -t <target> -p <ports> -c <threads> --timeout <timeout> -o <output> -f <format>

image

Parameters

  • -t, --target: Target CIDR or file with targets (required)
  • -p, --ports: Ports or port ranges to scan (required)
  • -c, --threads: Number of concurrent threads (required)
  • --timeout: Timeout in milliseconds (required)
  • -r, --retries: Number of ping retries (default: 1)
  • -o, --output: Output file (default: target.GenGoPortScanner.txt)
  • -f, --format: Output format (qubo/json/csv) (default: qubo)

Examples

  1. Scan a single IP with default ports:
    go run .\cmd\gengoscanner\main.go -t 192.168.1.1 -p 80,443 -c 10 --timeout 500 -o result.txt -f json
  2. Scan a range of IPs with all ports:
    go run .\cmd\gengoscanner\main.go -t 192.168.1.0/24 -p 1-65535 -c 100 --timeout 500 -o result.txt -f json
  3. Scan targets from a file:
    go run .\cmd\gengoscanner\main.go -t targets.txt -p 80,443 -c 50 --timeout 300 -o output.csv -f csv

Output Formats

JSON

{
    "target": "192.168.1.1",
    "version": "1.16.5",
    "players": "5/100",
    "description": "Minecraft server"
}

CSV

"192.168.1.1","1.16.5","5/100","Minecraft server"

qubo

(192.168.1.1)(5/100)(1.16.5)(Minecraft server)

RU

GenGoPortScanner — это высокопроизводительный многопоточный сканер портов, написанный на Go. Он предназначен для быстрого и эффективного сканирования портов на заданной цели, предоставляя подробную информацию об открытых портах.

Особенности

  • Высокопроизводительное многопоточное сканирование
  • Поддержка CIDR нотации и файлов с несколькими целями
  • Вывод результатов в различных форматах (JSON, CSV, Qubo)
  • Настраиваемые параметры тайм-аута и количества попыток

Установка

  1. Клонируйте репозиторий:

    git clone https://github.com/geniuszlyy/GenGoPortScanner.git
    cd GenGoPortScanner
  2. Инициализируйте модули Go:

    go mod tidy

Использование

go run .\cmd\gengoscanner\main.go -t <цель> -p <порты> -c <потоки> --timeout <тайм-аут> -o <файл вывода> -f <формат>

image

Параметры

  • -t, --target: Целевой CIDR или файл с целями (обязательно)
  • -p, --ports: Порты или диапазоны портов для сканирования (обязательно)
  • -c, --threads: Количество потоков (обязательно)
  • --timeout: Таймаут в миллисекундах (обязательно)
  • -r, --retries: Количество попыток пинга (по умолчанию: 1)
  • -o, --output: Файл вывода (по умолчанию: target.GenGoPortScanner.txt)
  • -f, --format: Формат вывода (qubo/json/csv) (по умолчанию: qubo)

Примеры

  1. Сканирование одного IP с портами по умолчанию:
    go run .\cmd\gengoscanner\main.go -t 192.168.1.1 -p 80,443 -c 10 --timeout 500 -o result.txt -f json
  2. Сканирование диапазона IP с всеми портами:
    go run .\cmd\gengoscanner\main.go -t 192.168.1.0/24 -p 1-65535 -c 100 --timeout 500 -o result.txt -f json
  3. Сканирование целей из файла:
    go run .\cmd\gengoscanner\main.go -t targets.txt -p 80,443 -c 50 --timeout 300 -o output.csv -f csv

Форматы вывода

JSON

{
    "target": "192.168.1.1",
    "version": "1.16.5",
    "players": "5/100",
    "description": "Minecraft server"
}

CSV

"192.168.1.1","1.16.5","5/100","Minecraft server"

qubo

(192.168.1.1)(5/100)(1.16.5)(Minecraft server)