Skip to main content

A golang scanner

Project description

English

介绍

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

特性

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

使用

发布包里下载的对应系统和架构的可执行文件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 扫描

待补充。

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.2.1.tar.gz (32.0 MB view details)

Uploaded Source

Built Distribution

gscan-0.2.1-py3-none-any.whl (32.2 MB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for gscan-0.2.1.tar.gz
Algorithm Hash digest
SHA256 6b51fcc0d7bcfad941db7f939fb7b9cce0852f383778ed7566453984870ec92f
MD5 9266c3180832faaaddc0b04c18df0126
BLAKE2b-256 bce93ef4301c7a84c10823233d42fa2cb95d3aea0e3ed385987d1964d859d078

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for gscan-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4023d25cfbaf9a3197c24479e398f4d510557d9bd0a7252d1089745229f39cbf
MD5 9781d10663866a7c86152149cd63e00a
BLAKE2b-256 28f162e9bbbb266d4643fbbb5a6f658220180f0f159bc667855e874e0ded4c4f

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