Skip to content

Latest commit

 

History

History
163 lines (124 loc) · 9.22 KB

README-RU.md

File metadata and controls

163 lines (124 loc) · 9.22 KB

SNI Finder

GitHub CI Status GitHub CI Status GitHub GitHub tag


English / Русский

Это приложение сканирует диапазон IP-адресов на наличие доменов с включенными TLS 1.3 и HTTP/2 (h2). Оно предназначено для определения полезных SNI (Server Name Indication) доменов для различных конфигураций и тестов.

Оглавление

Особенности

Характеристика Описание
TLS 1.3 и HTTP/2 Сканирует домены, поддерживающие TLS 1.3 и HTTP/2, чтобы определить современные безопасные конфигурации.
Отображение TLS Ping Показывает результаты TLS Ping для просканированных доменов, помогая оценить время отклика.
Топ-серверы Выводит топ-серверы на основе наименьших значений пинга, что полезно для определения приоритета быстрых серверов.

Выходные файлы

  • results.txt: Содержит подробный журнал сканирования.
  • domains.txt: Содержит только обнаруженные доменные имена.

Примечание: Рекомендуется запускать этот сканер локально (с вашим домашним интернетом). Запуск сканера в облаке может привести к тому, что VPS-провайдеры пометят ваш аккаунт как подозрительный.

Установка

Загрузите исполняемый файл, соответствующий архитектуре вашей системы (amd64 или arm64).

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

Запуск в Linux/Mac OS

  1. Скачайте и установите бинарник:
    wget «https://github.com/v-kamerdinerov/SNI-Finder/releases/latest/download/SNI-Finder-$(uname -s | tr A-Z a-z)-amd64» -O SNI-Finder && chmod +x SNI-Finder
  2. Запустите сканер:
    ./SNI-Finder -addr <ip-адрес>

Запуск под Windows

  1. Загрузите .exe файл с сайта Releases.
  2. Откройте CMD или Powershell в директории загрузки.
  3. Запустите сканер:
    .\SNI-Finder-windows-amd64.exe -addr <ip-address>

Замените <ip-адрес> на диапазон IP-адресов, который вы хотите просканировать.

Параметры

Аргумент Тип Значение по умолчанию Описание
-addr string 0.0.0.0 Начальный адрес для сканирования.
-num int 10000 Количество IP-адресов для сканирования.
-o bool true Включить или отключить вывод в файл results.txt.
-port string 443 Порт для сканирования.
-showFail bool false Показать логи для неудачных сканирований.
-thread int 128 Количество потоков для параллельной работы при сканировании.
-timeOut int 4 Таймаут сканирования в секундах.
-top int 10 Количество отображаемых наилучших серверов.

Пример вывода

Вот пример вывода программы:

2024-09-08 22:25:49 37.139.62.38:443      TLS v1.3    ALPN: h2  pixelproof.ru         Ping: 22.315ms                      

2024-09-08 22:25:51 37.139.62.151:443     TLS v1.3    ALPN: h2  maelia.rs             Ping: 34.011ms                      

2024-09-08 22:25:51 37.139.62.192:443     TLS v1.3    ALPN: h2  doterra-challenge.ru  Ping: 22.68ms                       

2024-09-08 22:28:06 Scan completed.

Top servers by TLS Ping:
1: 37.139.41.28:443      TLS v1.3    ALPN: h2  jsdaddy.tech          Ping: 3.121ms                       
2: 37.139.42.255:443     TLS v1.3    ALPN: h2  malyi-biznes.ru       Ping: 3.496ms                       
3: 37.139.42.35:443      TLS v1.3    ALPN: h2  88date.co             Ping: 3.797ms                       
4: 37.139.41.247:443     TLS v1.3    ALPN: h2  you-note.ru           Ping: 3.804ms                       
5: 37.139.43.113:443     TLS v1.3    ALPN: h2  medvuza.ru            Ping: 4.029ms                       
6: 37.139.40.192:443     TLS v1.3    ALPN: h2  xn--8f9ac.xn--p1ai    Ping: 9.772ms                       
7: 37.139.42.68:443      TLS v1.3    ALPN: h2  mega74.ru             Ping: 11.621ms                      
8: 37.139.62.38:443      TLS v1.3    ALPN: h2  pixelproof.ru         Ping: 22.315ms                      
9: 37.139.62.192:443     TLS v1.3    ALPN: h2  doterra-challenge.ru  Ping: 22.68ms                       
10: 37.139.62.151:443     TLS v1.3    ALPN: h2  maelia.rs             Ping: 34.011ms

Сборка из исходного кода

Пререквизиты

Установите wget:

sudo apt install -y wget

Запустите этот скрипт для установки Go и других зависимостей (Debian & Ubuntu & RedOS $ RHEL):

wget «https://raw.githubusercontent.com/v-kamerdinerov/SNI-Finder/main/install-go.sh» -O install-go.sh && chmod +x install-go.sh && bash install-go.sh

Совет: После установки рекомендуется перезагрузить систему.

Шаги сборки

  1. Клонируем репозиторий:
    git clone https://github.com/v-kamerdinerov/SNI-Finder.git 
  2. Перейдите в каталог репозитория:
    cd SNI-Finder 
  3. Скачайте и установите все необходимые пакеты:
    go mod tidy
  4. Соберите проект:
    CGO_ENABLED=0 go build

Этика использования

Данный инструмент предназначен только для образовательных и легальных целей тестирования. Несанкционированное сканирование сетей без разрешения может нарушить законы и привести к серьезным наказаниям. Пользуйтесь ответственно.

Вклад

Вклад приветствуется! Пожалуйста, сделайте форк репозитория и отправьте запрос на исправление. Убедитесь, что ваш код придерживается существующего стиля и тщательно протестирован.

Лицензия

Этот проект лицензируется по лицензии MIT. Подробности смотрите в файле LICENSE.