linux 普通用户默认是没有权限使用tcpdump的,
所以需要root 用户赋权:
root# setcap cap_net_raw=eip /usr/sbin/tcpdump
不要为普通用户添加tcpdump的sudo权限,
zhangsan ALL=(root) NOPASSWD: /usr/bin/awk, /usr/bin/less /tmp/abc.text, /usr/sbin/tcpdump
很容易通过tcpdump 提权root
sudo tcpdum -i any -w /dev/null -G 1 -z /tmp/test.sh -Z root
在执行test.sh 时候是以root权限执行的, 所以在这个脚本中完全可以修改/etc/sudoers 文件,将zhangsan 提权
tcpdump
TCP标记值:tcp-fin, tcp-syn, tcp-rst, tcp-push, tcp-push, tcp-ack, tcp-urg
tcpdump -i any tcp dst port 6379 and 'tcp[tcpflags] & tcp-push != 0' -w 1234.cap
tcpdump -i any dst host 10.100.125.22 and tcp dst port 8082 and 'tcp[tcpflags] & tcp-push != 0'