Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/allanpk716/go-protocol-detector
Network protocol detector by golang. Support RDP、SSH、FTP、Telnet、VNC、SFTP etc.
https://github.com/allanpk716/go-protocol-detector
detect ftp protocol rdp scanner sftp ssh telnet vnc
Last synced: about 1 month ago
JSON representation
Network protocol detector by golang. Support RDP、SSH、FTP、Telnet、VNC、SFTP etc.
- Host: GitHub
- URL: https://github.com/allanpk716/go-protocol-detector
- Owner: allanpk716
- License: mit
- Created: 2021-03-16T11:21:25.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2024-08-16T07:41:20.000Z (6 months ago)
- Last Synced: 2024-12-19T04:06:50.426Z (about 1 month ago)
- Topics: detect, ftp, protocol, rdp, scanner, sftp, ssh, telnet, vnc
- Language: Go
- Homepage:
- Size: 760 KB
- Stars: 45
- Watchers: 3
- Forks: 6
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Go Protocol Detector
[[中文]](https://github.com/allanpk716/go-protocol-detector/blob/master/ReadMeThings/readme_cn.md)
Network protocol detector.
**Not Stable Version !**
May be refactored in future use.
## Support Protocol
* RDP
* FTP
* SFTP
> Something you should know, first, SSH validation is required, then check SFTP Client protocol.
>
> I think it need implemented by [gopacket](https://github.com/google/gopacket)* SSH
* VNC
* Telnet
## How to use
### Use From Code:
* [detector_test.go](https://github.com/allanpk716/go-protocol-detector/blob/master/pkg/detector_test.go)
* [scan_tools_test.go](https://github.com/allanpk716/go-protocol-detector/blob/master/pkg/scan_tools_test.go)### Use From Executable Program:
[Releases](https://github.com/allanpk716/go-protocol-detector/releases)
```powershell
NAME:
go-protocol-detector - use like: go-protocol-detector --protocol=rdp --host=172.20.65.89-101 --port=3389USAGE:
go-protocol-detector [global options] command [command options] [arguments...]VERSION:
v0.10.0DESCRIPTION:
Multi-protocol scan toolCOMMANDS:
help, h Shows a list of commands or help for one commandGLOBAL OPTIONS:
--help, -h show help (default: false)
--host value support 3 diffs types: 192.168.1.1,192.168.1.100-254,192.168.1.0/24 (default: "192.168.1.1")
--password value if you scan sftp, need give a Password: root (default: "root")
--port value support like: 22,80,443,3380-3390 (default: "22")
--prikey value if you scan sftp, need give a pri key Full Path( user name or this priKeyFPath only chose one): ~/.ssh/id_rsa (default: "~/.ssh/id_rsa")
--protocol value select only one protocol: rdp | ssh | ftp | sftp | telnet | vnc | common (default: "common")
--thread value 10 (default: 10)
--timeout value 1000 ms (default: 1000)
--user value if you scan sftp, need give a UserName: root (default: "root")
--version, -v print the version (default: false)
```Example:
```powershell
go-protocol-detector --protocol=rdp --host=172.20.65.89-101 --port=3389go-protocol-detector --protocol=rdp --host=172.20.65.89-101 --port=3389,1024-2000
go-protocol-detector --protocol=sftp --host=172.20.65.89-101 --port=3389 --user=root --password=123
go-protocol-detector --protocol=sftp --host=172.20.65.1/24 --port=3389 --password=123 --prikey=/keys/privatekey
```## TODO
- [ ] SFTP detected by [gopacket](https://github.com/google/gopacket)
## Give a reward
If the tools I have made are of some help to you, you can buy me a cup of coffee or sponsor a little server fee.
![收款码](ReadMeThings/pics/收款码.png)
## How to implement
[[中文教程]](https://github.com/allanpk716/go-protocol-detector/blob/master/ReadMeThings/readme_cn_tutorial.md)
## Thanks
* [ziutek/telnet](ziutek/telnet)