Giter Club home page Giter Club logo

gonmap's People

Contributors

haibatu avatar lcvvvv avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gonmap's Issues

A way to run NSE scripts

Hi there, I wonder if there is a way to run lua scripts of nmap with GoNmap

Is there anyway ?

大佬我又来提意见了

用了一段时间 gonmap在并发上 是有问题的 原因不详
还有端口+服务+指纹的一体化优秀扫描
kscan中fingerprint.txt有大量的优秀指纹库
如果可以
open/filter/closed 443 https apache2 2.4.7 wordpress
会更加的优秀和强大
希望大佬在重构的时候 可以考虑一下

UDP端口无法扫描

逻辑问题,导致UDP端口无法扫描
type-nmap.go

func (n *Nmap) Scan(ip string, port int) (status Status, response *Response) {
	var probeNames ProbeList
	if n.bypassAllProbePort.exist(port) == true {
		probeNames = append(n.portProbeMap[port], n.allProbeMap...)
	} else {
		probeNames = append(n.allProbeMap, n.portProbeMap[port]...)
	}
	probeNames = append(probeNames, n.sslProbeMap...)
	//探针去重
	probeNames = probeNames.removeDuplicate()

	firstProbe := probeNames[0]
	status, response = n.getRealResponse(ip, port, n.timeout, firstProbe)  //如果目标为UDP端口这里就直接退出函数了
	if status == Closed || status == Matched {
		return status, response
	}
	otherProbes := probeNames[1:]
	return n.getRealResponse(ip, port, 2*time.Second, otherProbes...)
}

如果目标端口为UDP端口,该函数首次使用TCP协议连接会返回closed,导致无法准确识别端口

func (n *Nmap) getResponseByProbes(host string, port int, timeout time.Duration, probes ...string) (status Status, response *Response) 函数中也有相似问题,目标端口如果是TCP端口,但是做循环的时候如果遇到requestName为UDP_*这类的规则,也会由于TCP端口无法使用UDP协议连接导致判断为close退出函数。

可不可以TCP和UDP分开扫

源码编译报错

command-line-arguments

./gonmap.go:69:15: undefined: port
./gonmap.go:70:26: undefined: probe
./gonmap.go:76:9: undefined: target
./gonmap.go:79:11: undefined: response
./gonmap.go:80:12: undefined: TcpFinger
./gonmap.go:83:42: undefined: TcpBanner
./gonmap.go:139:32: undefined: probe
./gonmap.go:139:46: undefined: target
./gonmap.go:139:65: undefined: TcpBanner
./gonmap.go:233:59: undefined: TcpFinger
./gonmap.go:233:59: too many errors

指纹不够灵活

看了一下,指纹都是写死的,并不是一些配置文件,端口也不一定是指纹当中的服务
我的想法是 先用快速扫描扫描主机端口,比如半开放扫描 只发送握手包之类的,去判定一个端口有没有开放,只有扫描到端口开放了,才建立完整链接,然后把响应报文送到指纹匹配的模块当中
nmap很多指纹都是用的外部的配置文件配置的,还有比如用于HTTP指纹的wappalyzer 也有一堆指纹,这些都可以进行用来配置扫描器的

Print banner

How can I make it to print the banner that it will retrieve from target?

关于编译及release

作者你好,是否可以在release中存放已经编译好的各平台的二进制,或者在readme中新增编译说明>?

readme

不该给个说明文档吗 上手很懵啊 项目可以

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.