网络安全之tcpdump工具

server/2025/3/13 23:07:51/

引言

    wireshark是一款非常不错的抓包软件,在图形化界面占绝对统治地位;尽管其在字符界面下有些许选项可供使用,但终究不太方便,下面我再介绍一款NB的终端抓包工具 tcpdump

1、混杂模式

    linux的网卡有混杂模式一说,当开启混杂模式后,网卡可以抓取所有的数据包,不管这个包是不是发给自己或自己发出的。由于随意截取别人的数据包存在一定安全问题,因此linux对于网卡默认是关闭混杂模式的,切只有root用户能够开启网卡混杂模式,开启方式:

ifconfig ethX promisc

    2、常用选项

    参数参数说明样例
    -D查看可通过哪些网卡抓包
    -i name指定通过该name网卡抓包

    tcpdump -i eth0

    tcpdump -i any

    -w file将抓取的包存入file文件中(该文件可被wireshark使用),默认打印到终端tcpdump -i eth0 -w packet.pcap
    -r file读取前面抓取的包,将其作为输入tcpdump -r file
    -s length抓取数据包的长度,默认68个字节;设置为0,表示抓取全部数据
    -c count抓取的数据包个数
    -t 不显示时间戳
    -S打印绝对的sequence number
    -x/-xx按HEX打印每个包的头信息/包含链路信息
    -n不要将ip转换为主机名
    -nn不要转换ip与端口为对应的名字tcpdump -nnSs 0 tcp port ! 22
    -e显示链路层信息,默认不显示
    -F file过滤条件从file文件内容获取,命令行内容忽略
    -X/-XX按HEX与ASCII打印每个包的头部信息/包含链路信息
    -C file_size指定每个文件最大长度为30M,与 -W一起使用tcpdump -i eth0 -C 30 -W 50 -w /tmp/net.pcap
    -W filecount指定最多生成50个文件,与-C一起使用tcpdump -i eth0 -C 30 -W 50 -w /tmp/net.pcap

    3、过滤器

    3.1、host

        指定主机或网络抓取,可用ip或域名或网段

    tcpdump host 192.168.12.1
    tcpdump net 192.168.12.0/24

          也可以设置源或则目的端

      tcpdump [src|dst] host 192.168.12.1

            指定抓取多个ip的包,不能加方向,如src或dst

        tcpdump host 10.27.82.223 and \(10.27.82.222 or 10.27.82.221\)

              排除方式指定目标

          tcpdump ip net 192.168.12.0/24 and ! 192.168.12.3

            3.2、port / portrange

                指定端口/端口范围(0-1024)与主机,可同时指定方向

            tcpdump tcp [src|dst] port 23 and [src|dst] host 192.168.12.1

                  排除某个端口的数据包

              tcpdump tcp port ! 22

                3.3、循环覆盖抓取网络包,存储到30个文件中,每个文件最大50M

                tcpdump -i eth0 -C 30 -W 50 -w /tmp/net.pcap

                  4、高级特性

                  4.1、指定数据包标志位

                  tcpdump 'tcp[tcpflags] & (tcp-syn|tcp-fin) != 0' #获取开始或则结束的数据包
                  tcpdump 'tcp[tcpflags] & (tcp-fin) != 0'            #获取连接结束的数据包
                  tcpdump 'tcp[tcpflags] & (tcp-syn) != 0'            #获取连接开始的数据包tcpdump -AXtnni eth0 'src host 192.168.12.1 and dst port 9876 and tcp[((tcp[12:1] & 0xf0) >> 2):4]=0x47455420'      #获取GET请求数据

                    5、输出结果

                        打印格式:

                        系统时间              来源主机.端口            > 目标主机.端口      数据包参数

                    eg:20:09:53.584715 IP 100.109.225.128.30207 >  10.27.82.228.443: Flags [R.], seq 241841040, ack 631822021, win 58, options [nop,nop,TS val 144058912 ecr 3829113521], length 0    

                    6、问题

                        加上-C选项后提示“Permission denied”

                        解决办法是,加上 "-Z root"

                    网络安全学习路线

                    对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

                    同时每个成长路线对应的板块都有配套的视频提供:

                    需要网络安全学习路线和视频教程的可以在评论区留言哦~

                    最后

                    给小伙伴们的意见是想清楚,自学网络安全没有捷径,相比而言系统的网络安全是最节省成本的方式,因为能够帮你节省大量的时间和精力成本。坚持住,既然已经走到这条路上,虽然前途看似困难重重,只要咬牙坚持,最终会收到你想要的效果。

                    黑客工具&SRC技术文档&PDF书籍&web安全等(可分享)

                    结语

                    网络安全产业就像一个江湖,各色人等聚集。相对于欧美国家基础扎实(懂加密、会防护、能挖洞、擅工程)的众多名门正派,我国的人才更多的属于旁门左道(很多白帽子可能会不服气),因此在未来的人才培养和建设上,需要调整结构,鼓励更多的人去做“正向”的、结合“业务”与“数据”、“自动化”的“体系、建设”,才能解人才之渴,真正的为社会全面互联网化提供安全保障。

                    特别声明:
                    此教程为纯技术分享!本教程的目的决不是为那些怀有不良动机的人提供及技术支持!也不承担因为技术被滥用所产生的连带责任!本教程的目的在于最大限度地唤醒大家对网络安全的重视,并采取相应的安全措施
                    ,从而减少由网络安全而带来的经济损失


                    http://www.ppmy.cn/server/174741.html

                    相关文章

                    CUDA编程之OpenCV与CUDA结合使用

                    OpenCV与CUDA的结合使用可显著提升图像处理性能。 一、版本匹配与环境配置 CUDA与OpenCV版本兼容性‌ OpenCV各版本对CUDA的支持存在差异,例如OpenCV 4.5.4需搭配CUDA 10.0‌2,而较新的OpenCV 4.8.0需使用更高版本CUDA‌。 需注意部分模块(…

                    Python实现网络通信:Socket模块与TCP/IP协议全解析

                    Langchain系列文章目录 01-玩转LangChain:从模型调用到Prompt模板与输出解析的完整指南 02-玩转 LangChain Memory 模块:四种记忆类型详解及应用场景全覆盖 03-全面掌握 LangChain:从核心链条构建到动态任务分配的实战指南 04-玩转 LangChai…

                    【web前端开发】HTML排版标签、HTML语义化标签、常用的文本标签

                    1、HTML排版标签 标签名 标签含义 单/双标签 h1~h6 …

                    批量将 Excel 转换 PDF/Word/CSV以及图片等其它格式

                    Excel 格式转换是我们工作过程当中非常常见的一个需求,我们通常需要将 Excel 转换为其他各种各样的格式。比如将 Excel 转换为 PDF、比如说将 Excel 转换为 Word、再比如说将 Excel文档转换为图片等等。 这些操作对我们来讲都不难,因为我们通过 Office 都…

                    Kubernetes开发环境minikube | 开发部署apache tomcat web集群应用

                    minikube是一个主要用于开发与测试Kubernetes应用的运行环境,本文主要描述在minikube运行环境中部署J2EE tomcat web应用。 单节点Node多Pod实例部署 如上所示,在minikube运行的Linux部署环境中启动单节点Node 如上所示,在minikube的容器环境…

                    GitHub上传项目

                    总结(有基础的话直接执行这几步,就不需要再往下看了): git init 修改git的config文件:添加:[user]:name你的github用户名 email你注册github的用户名 git branch -m master main git remote add origin 你的URL gi…

                    PHPCMS V9 登录加密改造

                    要改造 phpcms 的后台登录,使其前端使用加密方式提交,后端解密,你可以采用 RSA 非对称加密 或 AES 对称加密 方式来增强安全性。 方案设计 前端加密 生成公私钥对(推荐使用 RSA)。前端使用公钥加密密码,然…

                    解锁MATLAB语言:从入门到实战的编程秘籍

                    目录 一、MATLAB 是什么? 二、搭建 MATLAB 环境 三、基础语法入门 3.1 特殊符号与运算符 3.2 变量命名与赋值 3.3 向量与矩阵创建 四、实战演练 4.1 简单数学运算 4.2 绘制函数图像 五、深入学习建议 一、MATLAB 是什么? MATLAB,即 Matrix Laboratory(矩…