Skip to main content

A golang scanner

Project description

GitHub language count GitHub top language GitHub Repo stars Docker Image Version (latest by date) GitHub go.mod Go version Docker Stars piwheels GitHub tag (latest by date) Codacy Badge Discord GitHub code size in bytes GitHub all releases GitHub issues GitHub GitHub last commit

English

介绍

gscan最初是为项目gosam提供基础扫描支持的。后来独立出来成为一个类似 nmap的扫描工具,目前正在努力加强和完善中,项目很期待其他开发者的加入。也欢迎您下载发布包来体验它,帮我们测试并反馈问题给我们。

特性

  • ARP scan
  • ICMP scan
  • TCP port scan
  • Domain support
  • Random port support
  • UDP port scan
  • Service discovery
  • Vulnerability discovery
  • Adaptive binary overflow

使用

发布包里下载的对应系统和架构的可执行文件 gscan

查看帮助

$ gscan help
Gscan
   ____  ______ ____ _____    ____  
  / ___\/  ___// ___\\__  \  /    \ 
 / /_/  >___ \\  \___ / __ \|   |  \
 \___  /____  >\___  >____  /___|  /
/_____/     \/     \/     \/     \/ 
https://github.com/LanXuage/gosam/gscan

A Scanner.

Usage:
  gscan [flags]
  gscan [command]

Available Commands:
  arp         ARP Scanner
  completion  Generate the autocompletion script for the specified shell
  help        Help about any command
  icmp        ICMP Scanner
  port        PORT Scanner

Flags:
  -A, --arp             with arp scan
  -D, --debug           set debug log level
  -F, --file string     file to output(unrealized)
  -H, --help            help for this command
  -I, --icmp            with icmp scan
  -O, --output string   normal, json or xml(unrealized) (default "normal")
  -T, --timeout int     global timeout(ms) (default 6500)
  -V, --version         version for gscan

Use "gscan [command] --help" for more information about a command.

详细命令作用参考这里

简单例子

ARP 扫描

对本地的整个局域网进行 arp 扫描

$ gscan arp -a
192.168.50.179  00:15:5d:fa:d7:e7       Microsoft Corporation
192.168.48.1    00:15:5d:ab:10:3a       Microsoft Corporation
Cost: 6.514218807s

对指定 IP 进行 arp 扫描

$ gscan arp -h 192.168.50.179
192.168.50.179  00:15:5d:fa:d7:e7       Microsoft Corporation
Cost: 6.500702247s

注意:默认超时为6500毫秒,可以使用 -T进行指定,单位为毫秒。

ICMP 扫描

单IP or 网段 主机存活探测

$ gscan icmp -h 192.168.1.1/24 
IP			        Status
192.168.1.1     Alive
Cost: 4.009240208s

多目标 存活探测

$ gscan icmp -h 192.168.1.1 -h 192.168.2.2
IP              Status
192.168.1.1     Alive
192.168.2.2     Alive
Cost: 4.002214791s

TCP Port 扫描

对一个 IP 进行全端口探测

$ gscan port -h 192.168.48.1 -p 0-65535
IP                                      PORT                    TYPE    STATE
192.168.48.1                            135(epmap)              tcp     open
192.168.48.1                            5091                    tcp     open
192.168.48.1                            7680(pando-pub)         tcp     open
192.168.48.1                            5040                    tcp     open
192.168.48.1                            5357(wsdapi)            tcp     open
192.168.48.1                            2179(vmrdp)             tcp     open
192.168.48.1                            10808                   tcp     open
192.168.48.1                            10809(nbd)              tcp     open
Cost: 6.00483283s

对一个 IP 进行全端口探测,结合 ARP 扫描结果

$ gscan port -h 192.168.48.1 -p 0-65535 -A
IP                                      MAC                     VENDOR                                          PORT                    TYPE    STATE
192.168.48.1                            00:15:5d:ab:10:3a       Microsoft Corporation                           2179(vmrdp)             tcp     open
192.168.48.1                            00:15:5d:ab:10:3a       Microsoft Corporation                           135(epmap)              tcp     open
192.168.48.1                            00:15:5d:ab:10:3a       Microsoft Corporation                           5091                    tcp     open
192.168.48.1                            00:15:5d:ab:10:3a       Microsoft Corporation                           5357(wsdapi)            tcp     open
192.168.48.1                            00:15:5d:ab:10:3a       Microsoft Corporation                           5040                    tcp     open
192.168.48.1                            00:15:5d:ab:10:3a       Microsoft Corporation                           10809(nbd)              tcp     open
192.168.48.1                            00:15:5d:ab:10:3a       Microsoft Corporation                           7680(pando-pub)         tcp     open
192.168.48.1                            00:15:5d:ab:10:3a       Microsoft Corporation                           10808                   tcp     open
Cost: 9.013501996s

使用全连接模式对一个 IP 进行全端口探测

$ gscan port -h 192.168.48.1 -p 0-65535 -Af
IP                                      MAC                     VENDOR                                          PORT                    TYPE    STATE
192.168.48.1                            00:15:5d:ab:10:3a       Microsoft Corporation                           10808                   tcp     open
192.168.48.1                            00:15:5d:ab:10:3a       Microsoft Corporation                           7680(pando-pub)         tcp     open
192.168.48.1                            00:15:5d:ab:10:3a       Microsoft Corporation                           2179(vmrdp)             tcp     open
192.168.48.1                            00:15:5d:ab:10:3a       Microsoft Corporation                           5040                    tcp     open
192.168.48.1                            00:15:5d:ab:10:3a       Microsoft Corporation                           10809(nbd)              tcp     open
192.168.48.1                            00:15:5d:ab:10:3a       Microsoft Corporation                           135(epmap)              tcp     open
192.168.48.1                            00:15:5d:ab:10:3a       Microsoft Corporation                           5357(wsdapi)            tcp     open
Cost: 9.01656839s

注意:gscan使用的是 gopacket模拟的全连接,所以使用 -f参数时应该开启本地的防火墙,防止本机系统自动 rst连接导致全连接扫描失败。

开发

从源码构建

环境准备

debain/ubuntu

apt install docker

darwin(MacOS)

brew install libpcap-dev golang git

拉取源码

git clone https://github.com/LanXuage/gscan.git

编译

make linux

编译完成会在项目目录下的 bin目录生不同架构的 linux静态可执行文件。

开发规范

参考这里

感谢

开发者

项目

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gscan-0.3.3.tar.gz (34.9 MB view details)

Uploaded Source

Built Distribution

gscan-0.3.3-py3-none-any.whl (35.1 MB view details)

Uploaded Python 3

File details

Details for the file gscan-0.3.3.tar.gz.

File metadata

  • Download URL: gscan-0.3.3.tar.gz
  • Upload date:
  • Size: 34.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for gscan-0.3.3.tar.gz
Algorithm Hash digest
SHA256 ff3d36a4bb8632adca7c3beaffae5d8562e56ad9334cf040e44218f3759b32f5
MD5 15aadcb99155580894d9c3849fab6c1d
BLAKE2b-256 41e65af8c45233c2d8131203c8f02312129180a2d0640e6fbe3bd73ba7673296

See more details on using hashes here.

File details

Details for the file gscan-0.3.3-py3-none-any.whl.

File metadata

  • Download URL: gscan-0.3.3-py3-none-any.whl
  • Upload date:
  • Size: 35.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for gscan-0.3.3-py3-none-any.whl
Algorithm Hash digest
SHA256 067bc478445351bfe991c75cee99a4e51a49d4d8a056ee56a878d2b2bbbf06e4
MD5 57878b7163ab5039031940c6b73a76c1
BLAKE2b-256 fa3903df7fbb7241d2a1767df69bad8eae647067f74aecdae2776c70c2b54de9

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page