• XSS.stack #1 – первый литературный журнал от юзеров форума

прочее Быстрый сканер портов на Golang

Gr00ve

RAM
Пользователь
Регистрация
12.12.2019
Сообщения
102
Реакции
92
Мелкими шагами изучаю GO, буду делиться написанным софтом по мере изучения.

1) Задаем адрес для сканирования - Пример: - Enter the address: site.com and 127.0.0.1.
2) Указываем диапазон портов какой вам нужен - Пример: Start port: 1, Last port: 50000.


Если не хватает прав - chmod +x ./port

Для старта программы - ./port

Скачать

VirusTotal

Код:
package main

import (
    "fmt"
    "net"
    "time"
)



func scanPort()  {
    var ip string
    fmt.Print("Enter the address: ")
    fmt.Scanf("%s\n", &ip)

    var first int
    fmt.Print("Start port: ")
    fmt.Scanf("%d", &first)

    var last int
    fmt.Print("Last port: ")
    fmt.Scanf("%d", &last)

    for i := first; i <= last; i++ {
        time.Sleep(5 * time.Millisecond)
        go func(j int) {
            address := fmt.Sprintf("%s:%d", ip, j)

            timeout := net.Dialer{Timeout: 3*time.Second}
            conn, err := timeout.Dial("tcp", address)
            if err != nil {
                return

            }
            conn.Close()
            text := fmt.Sprintf("%s:%d -> open", ip, j)
            fmt.Println(text)

        }(i)
    }



func main()  {
    scanPort()

}
 
Последнее редактирование:


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх