Network: Monitor & Scanner

常用网络工具介绍

涉及工具主要分为两类

本地socket监视器

  • netstat (net-tools)
  • ss: netstat 的替代 (iproute2)
  • somo: netstat 的替代

网络扫描器

ToolCategoryDescription
netstatMonitor基于/procfs的过时老东西
somoMonitornetstat 的用户友好替代 原理没区别
ssMonitornetstat 的新协议替代 效率更高
rustscanScanner快速的端口扫描器 (nmap的扫雷工具)
nmapScanner网络发现工具

Monitor

netstat 属于很经典的工具 不过在新一点的系统上 已经被 ss 替代了

netstat 解析 /procfs 获取信息 当系统socket多时 性能较差

somo 原理与 netstat 相同 只是CLI更友好

ss (Socket Statistics) 使用 netlink 与内核通信 效率更高

Scanner

nmap 核心机制为直接构造并发送原始 IP 数据包

  • TCP SYN(-sS): 需要root的半开放扫描 直接发送 TCP SYN 包 通过回复判断端口是否开放
  • TCP Connect(-sT): 非root扫描 通过connect函数来建立完整连接
  • UDP(-sU): 扫描 UDP 端口 通过ICMP消息来判断

rustscan 核心任务是快速找到开放端口 (nmap 的前置过滤)

  • 异步高并发
  • 速度主要由timeout限制

这两者都提供了脚本引擎来丰富功能

rustscan 的脚本引擎默认是后处理脚本 调用格式为 {{script}} {{ip}} {{port}}

默认脚本为 nmap -vvv -p {{port}} {{ip}}

1
2
3
4
5
# 最干净的用法
rustscan --no-banner --scripts none  -r 1-2048 -a 127.0.0.1
# -r, --range
# -a, --address
# --scripts default (default)

只扫描 不使用nmap来进一步处理

Built with Hugo
主题 StackJimmy 设计