首页/网络/抓包与流量分析速查/非 root 抓包权限配置
抓包工具链61 条

非 root 抓包权限配置

Linux 下给二进制授予抓包能力(cap_net_raw/cap_net_admin)即可免 sudo:授权范围要限定到具体工具文件,并纳入审计。

非 root 抓包权限

在使用能力机制的 Linux 上,给抓包程序授予网络相关的细粒度能力,就可以在非 root 身份下完成采集,风险比直接使用 root 或放宽文件权限小得多。授权对象必须是真正的可执行文件,而不是解释器脚本——能力不会随解释器传递,对脚本授权通常无效。另一个容易被忽略的点是软件包升级:升级后权限信息可能被重置,需要重新确认。这类权限变更属于安全敏感操作,应当限定到具体文件并纳入清单定期复核。

基本信息

适用系统使用能力机制的 Linux
授予对象可执行文件本身,而不是脚本
常用能力网络原始套接字与网络管理相关能力
主要风险权限过宽或长期未复核
维护要点软件升级后重新确认权限是否还在

典型使用场景

  • 非 root 采集:让分析人员不依赖 root 即可完成抓包
  • 权限收敛:用细粒度能力替代宽权限
  • 合规审计:核对当前哪些文件持有相关能力
  • 升级后维护:软件更新后确认能力是否被重置
  • 交接复核:人员或职责变更时复核权限清单

授权与核对

授权与核对
# 授予可执行文件网络相关能力
sudo setcap cap_net_raw,cap_net_admin+eip /usr/bin/dumpcap
getcap /usr/bin/dumpcap            # 确认当前持有情况
# 对脚本文件授权通常无效,能力不随解释器传递
# 软件包升级后能力可能被重置,需要重新确认

授权要点

要点说明风险
授权对象真实可执行文件对脚本授权无效
权限范围按最小必要授予范围过宽会增加风险
维护升级后复核权限被重置会导致采集中断
对解释器脚本授权是常见的误解:能力附着在可执行文件上,不会随解释器向下传递,所以被授权的必须是抓包程序本体。
权限变更要按组织流程执行与记录;授权范围越小越容易复核,也越不容易被滥用。

易错点

  • 对脚本授权通常无效,能力不随解释器传递,授权对象必须是真实的抓包程序
  • 权限范围给得过大等于变相放宽系统权限,应按最小必要范围授予并记录
  • 软件包升级后能力可能被重置,采集失败时先核对该项再排查其他原因
  • 授权后不纳入清单定期复核,人员与职责变更时会留下无人认领的权限

数据来源与参考

  • Linux capabilities 文档
  • Wireshark 手册(捕获权限)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌