温馨提示×

Ubuntu Sniffer怎样识别异常流量

小樊
39
2025-12-08 00:14:29
栏目: 智能运维

Ubuntu 下识别异常流量的实用方法

一、识别思路与流程

  • 建立“正常行为”基线:统计接口的带宽使用率协议占比连接数/会话时长服务响应时间等,后续出现显著偏离即标记为可疑。
  • 抓包与解析:在需要时启用混杂模式抓取全量流量,按协议/主机/端口进行过滤与解析,便于定位异常会话与载荷。
  • 统计与可视化:用实时工具观察突发流量、异常连接与异常主机,再结合协议解析确认是否为恶意行为。
  • 签名与规则检测:使用Snort等 IDS 加载规则,对已知攻击特征(如异常 ICMP、SQLi、XSS 特征等)进行匹配告警。
  • 合规与性能:抓包与分析涉及敏感数据与资源占用,务必在合法授权范围内使用,并控制抓包规模与保存时长。

二、快速发现异常的工具与命令

  • 实时带宽与连接异常
    • 使用iftop查看按源/目的 IP 与端口的实时带宽:sudo iftop -i ens33
    • 使用nethogs定位按进程占用带宽:sudo nethogs ens33
    • 使用nload观察接口总吞吐:sudo nload
    • 使用bmon查看更细的统计与图形:sudo bmon
    • 使用vnstat查看历史与按日/月统计:vnstat -i ens33
  • 抓包与深度解析
    • 抓取并写盘:sudo tcpdump -i ens33 -w capture.pcap
    • 按主机/协议过滤:sudo tcpdump -i ens33 host 192.0.2.10 and tcp;sudo tcpdump -i ens33 port 80
    • Wireshark打开 capture.pcap,结合过滤器做协议与载荷分析(如 http、dns、icmp 等)
  • 可视化拓扑与协议分布
    • 使用Etherape观察节点/协议的实时关系与流量占比,快速发现异常热点主机或异常协议。

三、用 Snort 做特征规则检测

  • 安装与验证(示例为 Snort 3)
    • 编辑规则文件(如**/usr/local/etc/rules/local.rules**)添加测试规则:
      alert icmp any any -> any any (msg:“ICMP Traffic Detected”; sid:10000001; metadata:policy security-ips alert;)
    • 验证规则:snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/local.rules
    • 在接口ens33上以检测模式运行并输出到控制台:
      sudo snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/local.rules -i ens33 -A alert_fast -s 65535 -k none
  • 规则示例(异常 ICMP 与超大 ICMP)
    • 超大 ICMP 报文:
      alert icmp any any -> any any (msg:“ICMP Large ICMP Packet”; dsize:>800; reference:arachnids,246; classtype:bad-unknown; sid:499;)
  • 运行与告警查看
    • 运行后从另一终端执行 ping,若规则生效将在控制台看到对应告警输出(可用于验证环境)。

四、常见异常场景与排查要点

  • DDoS/突发大流量:iftop/nload 显示某接口或某 IP 的突发吞吐远超基线;抓包可见SYN Flood、UDP/ICMP 洪泛等特征。
  • 扫描与探测:tcpdump/Wireshark 发现大量SYN 扫描(半开连接)、端口枚举;可结合 Snort 规则识别常见扫描特征。
  • 可疑应用与横向移动:nethogs 发现未知进程占用带宽;抓包/Wireshark 可见异常C&C 域名/IP、非常规端口通信。
  • 协议滥用与异常载荷:Wireshark 检索 HTTP 中的SQL 注入关键字(如 ’ OR 1=1)、异常User-Agent;识别 XSS 可疑脚本片段;Snort 规则可对这些特征做精确匹配告警。

五、合规与性能建议

  • 仅在授权范围内抓包与分析,避免收集、存储不必要的隐私数据;对抓包文件设置合适的保留周期与访问控制。
  • 控制抓包规模(BPF 过滤、采样)、避免在高负载接口长期全量抓包;必要时将抓包与分析分离到不同主机,降低对业务的影响。

0