A golang scanner
Project description
介绍
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)
Built Distribution
gscan-0.2.1-py3-none-any.whl
(32.2 MB
view details)
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6b51fcc0d7bcfad941db7f939fb7b9cce0852f383778ed7566453984870ec92f |
|
MD5 | 9266c3180832faaaddc0b04c18df0126 |
|
BLAKE2b-256 | bce93ef4301c7a84c10823233d42fa2cb95d3aea0e3ed385987d1964d859d078 |
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4023d25cfbaf9a3197c24479e398f4d510557d9bd0a7252d1089745229f39cbf |
|
MD5 | 9781d10663866a7c86152149cd63e00a |
|
BLAKE2b-256 | 28f162e9bbbb266d4643fbbb5a6f658220180f0f159bc667855e874e0ded4c4f |