超级快的端口扫描工具blackwater吊打NMAP

https://github.com/dollarkillerx/blackwater

Blackwater是锈编写基于SCP并发模型的扩展扫描器
官方测试1秒内扫描6W个端口并且极少的丢包率

吊打传统测试软件NMAP

官方貌似还打算更进分布式版本

 

 

blackwater

Blaskwate rust port scanner tool

Scan all ports in one second, basically no missing

Install

sudo curl -L "https://cdn.jsdelivr.net/gh/dollarkillerx/st/blackwater/v0.0.3/blackwater_x86_linux" -o /usr/local/bin/blackwater

sudo chmod +x /usr/local/bin/blackwater

Usage

blackwater -h

blackwater 0.1.0
Asynchronous Port Scanner written in rust  https://github.com/dollarkillerx/blackwater

USAGE:
    blackwater [FLAGS] [OPTIONS]

FLAGS:
    -h, --help       Prints help information
    -u, --udp        Scanning with UDP
    -V, --version    Prints version information

OPTIONS:
    -c, --concurrency <concurrency>    Number of concurrent scans [default: 65535]
    -i, --ip <ip>                      Scanned IP address
    -f, --outfile <outfile>            Result output file address
    -p, --port <port>                  Port Range <port,port,port> or <port-port> [default:
                                       21,22,23,25,69,79,80,88,110,113,119,220,443,1433,1521,2082,2083,2086,2087,2095,2096,2077,2078,3306,3389,5432,6379,8080,9000,9001,9200,9300,11211,27017]
    -t, --timeout <timeout>            Timeout  Milliseconds [default: 800]

speed

Amazing speed Not a single port is missed

ubuntu@ubuntu:~/$ time blackwater -i 110.242.68.3 -p1-65535

 _      _
| |    | |
| |_   | |   __
| | |  | |  |  |
| _ |  |_|  |  |
Black Water
Asynchronous Port Scanner written in rust
https://github.com/dollarkillerx/blackwater

110.242.68.3:80
110.242.68.3:443
110.242.68.3:2000
110.242.68.3:5060

real    0m1.637s
user    0m1.196s
sys     0m1.672s

ubuntu@ubuntu:~/$ time ./blackwater -i www.baidu.com -p1-65535 
 _      _
| |    | |
| |_   | |   __
| | |  | |  |  |
| _ |  |_|  |  |
Black Water
Asynchronous Port Scanner written in rust
https://github.com/dollarkillerx/blackwater

www.baidu.com:80
www.baidu.com:2000
www.baidu.com:443
www.baidu.com:5060

real    0m1.151s
user    0m0.654s
sys     0m0.697s

ubuntu@ubuntu:~/$ time ./blackwater -i www.bing.com -p1-65535 
 _      _
| |    | |
| |_   | |   __
| | |  | |  |  |
| _ |  |_|  |  |
Black Water
Asynchronous Port Scanner written in rust
https://github.com/dollarkillerx/blackwater

www.bing.com:80
www.bing.com:443
www.bing.com:2000

real    0m1.079s
user    0m0.589s
sys     0m0.442s

ubuntu@ubuntu:~/$ time ./blackwater -i github.com -p1-65535 
 _      _
| |    | |
| |_   | |   __
| | |  | |  |  |
| _ |  |_|  |  |
Black Water
Asynchronous Port Scanner written in rust
https://github.com/dollarkillerx/blackwater

github.com:2000
github.com:22
github.com:80
github.com:443
github.com:5060

real    0m1.137s
user    0m0.685s
sys     0m0.756s

build

make build

Development Plan

  •  c-segment scanning
  •  File import batch scanning
  •  Distributed
  •  Fingerprint recognition

参数调整,解决丢包问题

数据包丢失的原因有很多,大致分为两个原因。

  1. 网络问题(解决方案:1.切换到更好的网络2.修改 -t超时时间)
  2. cpu处理超级链接性能不足(解决方案:减少并发数量)
  • 外联网扫描,不丢失端口

    • 修改线程参数 -c计算公式:当前CPU逻辑内核数* 100
    • 示例:当前CPU逻辑内核为4个内核参数为 blackwater -i github.com -c 400 -p 1-65535
  • 内网扫描,不丢失端口

    • 修改线程参数 -c计算公式:当前CPU逻辑内核数* 250
    • 示例:当前CPU逻辑内核为4个内核参数为 blackwater -i 192.168.88.11 -c 1000 -p 1-65535

版权声明:本文为xyongsec原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/xyongsec/p/14168570.html