Redian新闻
>
Linux 系统随你玩之——网络上的黑客帝国

Linux 系统随你玩之——网络上的黑客帝国

公众号新闻

转自:CSDN 作者:风一样的美狼子

1、前言

黑客帝国系列片 大家都看过了,知道网络黑客尼奥发现看似正常的现实世界实际上是由一个名为 “矩阵” 的计算机人工智能系统控制的,然后尼奥见到了黑客组织的首领墨菲斯,三人走上了抗争矩阵征途的故事 。
那么黑客都是些什么人了?
黑客如今在互联网上已经不再是鲜为人知的人物,他们已经发展成网络上的一个独特的群体。他们有着与常人不同的理想和追求,有着自己独特的行为模式,网络上出现了很多由一些志同道合的人组织起来的黑客组织。
在[信息安全]里,“黑客” 指研究智取计算机安全系统的人员。利用公共通讯网路,如互联网和电话系统,在未经许可的情况下,载入对方系统的被称为黑帽黑客(英文:black hat,另称 cracker);调试和分析计算机安全系统的白帽黑客(英语:white hat)。“黑客” 一词最早用来称呼研究盗用电话系统的人士。
他们有个共同点都是利用公共通讯网路,进行着不同的活动。
而今天我们的主角也是针对网络进行[数据采集]与分析的工具,它就是TCPDump
老样子,我们本文主要介绍了 LinuxTCPDump 命令使用详解,文中会通过非常详细的示例代码介绍,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随我来一起学习!

2、[TCPDump] 介绍

Linux 作为网络服务器,特别是作为路由器和网关时,数据的采集和分析是不可少的。
Tcpdump 是一个用于截取网络分组,并输出分组内容的工具。
tcpdump 凭借强大的功能和灵活的截取策略,使其成为类 UNIX 系统下用于网络分析和问题排查的首选工具。
  • 1.tcpdump 可以将网络中传送的数据包的 “头” 完全截获下来提供分析。
它支持针对网络层、协议、主机、网络或端口的过滤,并提供 and、or、not 等逻辑语句来帮助你去掉无用的信息。
  • 2. 同时 tcpdump 提供了源代码,公开了接口,因此具备很强的可扩展性。
基本上 tcpdump 的总的输出格式为:系统时间 来源主机. 端口 > 目标主机. 端口 数据包参数
2.1、问题来了:所有用户都可以采用该命令吗?
虽然 tcpdump 提供源代码,公开了接口,具备很强的可扩展性,对于网络维护和入侵者都是非常有用的工具。
但 tcpdump普通用户不能正常执行,需要具备 root 权限的用户才可以直接执行它来获取网络上的信息。
2.2、抓包原理
linux 抓包是通过注册一种虚拟的底层网络协议来完成对网络报文(准确的是网络设备)消息的处理权。
当网卡接收到一个网络报文之后,它会遍历系统中所有已经注册的网络协议,如以太网协议、x25 协议处理模块来尝试进行报文的解析处理。
当抓包模块把自己伪装成一个网络协议的时候,系统在收到报文的时候就会给这个伪协议一次机会,让它对网卡收到的保温进行一次处理,此时该模块就会趁机对报文进行窥探,也就是啊这个报文完完整整的复制一份,假装是自己接收的报文,汇报给抓包模块。

2.3、特点

2.3.1.参数化支持
1. 参数
tcpdump 支持相当多的不同参数。
如使用 - i 参数指定 tcpdump 监听的网络接口, 使用 - c 参数指定要监听的数据包数量, 使用 - w 参数指定将监听到的数据包写入文件中保存等。
2. 安全
一般情况下网络硬件和 TCP/IP 堆栈不支持接收或发送与本计算机无关的数据包,为了接收这些数据包,就必须使用网卡的混杂模式,并绕过标准的 TCP/IP 堆栈才行。
在 FreeBSD 下,这就需要内核支持伪设备 bpfilter。因此,在内核中取消 bpfilter 支持,就能屏蔽 tcpdump 之类的网络分析工具。
并且当网卡被设置为混杂模式时,系统会在控制台和日志文件中留下记录,提醒管理员留意这台系统是否被用作攻击同网络的其他计算机的跳板。
3. 解码
tcpdump 对截获的数据并没有进行彻底解码,数据包内的大部分内容是使用十六进制的形式直接打印输出的。显然这不利于分析网络故障,通常的解决办法是先使用带 - w 参数的 tcpdump 截获数据并保存到文件中,然后再使用其他程序进行解码分析。当然也应该定义过滤规则,以避免捕获的数据包填满整个硬盘。

2.2.2.TCP 功能

tcpDump 将搜索系统中第一个网络接口,并显示它截获的所有数据,这些数据对我们不一定全都需要,
数据太多不利于分析。所以,我们应当先想好需要哪些数据,TcpDump 提供了很多参数供我们选择数据过滤。

3.服务器安装 Tcpdump

3.1、安装
一般情况下 Linux 系统会自带 tcpdump 工具,如果系统没有安装,直接用命令安装就行了。
在 linux 服务器上我们使用 yum install -y tcpdump 命令来安装 tcpdump 工具。
3.2、检查安装是否正常。
查看安装版本命令:tcpdump --help

4.tcpdump 命令

4.1.常用功能选项
tcpdump [-adeflnNOpqStvx][-c 数据包数量 >][-dd][-ddd][-F < 表达文件 >][-i < 网络界面 >][-r < 数据包文件 >][-s < 数据包大小 >][-tt][-T < 数据包类型 >][-vv][-w < 数据包文件 >][输出数据栏位]
参数说明:

  • -a 尝试将网络和广播地址转换成名称。
  • -c <数据包数目> 收到指定的数据包数目后,就停止进行倾倒操作。
  • -d 把编译过的数据包编码转换成可阅读的格式,并倾倒到标准输出。
  • -dd 把编译过的数据包编码转换成 C 语言的格式,并倾倒到标准输出。
  • -ddd 把编译过的数据包编码转换成十进制数字的格式,并倾倒到标准输出。
  • -e 在每列倾倒资料上显示连接层级的文件头。
  • -f 用数字显示网际网络地址。
  • -F <表达文件> 指定内含表达方式的文件。
  • -i <网络界面> 使用指定的网络截面送出数据包。
  • -l 使用标准输出列的缓冲区。
  • -n 不把主机的网络地址转换成名字。
  • -N 不列出域名。
  • -O 不将数据包编码最佳化。
  • -p 不让网络界面进入混杂模式。
  • -q 快速输出,仅列出少数的传输协议信息。
  • -r <数据包文件> 从指定的文件读取数据包数据。
  • -s <数据包大小> 设置每个数据包的大小。
  • -S 用绝对而非相对数值列出 TCP 关联数。
  • -t 在每列倾倒资料上不显示时间戳记。
  • -tt 在每列倾倒资料上显示未经格式化的时间戳记。
  • -T <数据包类型> 强制将表达方式所指定的数据包转译成设置的数据包类型。
  • -v 详细显示指令执行过程。
  • -vv 更详细显示指令执行过程。
  • -x 用十六进制字码列出数据包资料。
  • -w <数据包文件> 把数据包数据写入指定的文件。

4.2、输出内容
基本上 tcpdump 总的的输出格式为:系统时间 来源主机. 端口 > 目标主机. 端口 数据包参数

5、实操

5.1、常见用法
1. 查看网卡命令:ifconfig
知道了网卡,就可以使用 tcpdump 工具针对服务器上的网卡进行监控、过滤网络数据了。
2. 查看本地网卡状态


Iface:存在的网卡。
MTU:最大传输单元。
RX-OK RX-ERR RX-DRP RX-OVR:正确接收数据报的数量以及发生错误、流式、碰撞的总数。TX-OK TX-ERR TX-DRP TX-OVR:正确发送数据报的数量以及发生错误、流式、碰撞的总数。
3. 指定网卡
普通情况下,直接启动 tcpdump 将监视第一个网络端口所有流过的数据包。 如果不指定网卡,默认 tcpdump 只会监视第一个网络接口。
tcpdump -i ens33(网卡名)

4. 监视所有进入或离开主机 xps 的数据包。xps 为主机名。
tcpdump host xps
5. 监视指定 ip,截获指定主机收到和发出的所有数据包。
tcpdump host 192.168.1.5 
6.截获主机 192.168.1.5 和 192.168.1.10 或 192.168.1.113 的通信包
tcpdump host 192.168.1.5 and (192.168.1.10 or 192.168.1.13)  
7.打印 xps 与任何其他主机之间通信的 IP 数据包,但不包括与 xps1 之间的通信包
tcpdump ip host xps and not xps1  
8.截获主机 192.168.1.5 除了和 192.168.1.13 之外所有的主机通信的 ip 包
tcpdump ip host 192.168.1.5 and ! 192.168.1.13  
9.截获主机 hostname 发送的所有数据
tcpdump -i ens33 src host hostname  
10.截获送到主机 hostname 的所有数据
tcpdump -i ens33 dst host hostname
5.2、监听指定域名 TCP 协议数据包
  • 步骤一、开始监听指定域名的 ip 包流量:
tcpdump host baidu.com。  
  • 步骤二、打开浏览器、访问 baidu.com
此时、命令行下可以看到客户端和 baidu 服务之间的 TCP 协议 IP 包、学习网络协议的时候、配合使用很方便。
2、监听来自指定域名的 TCP 协议包数据包:
  • 步骤一、开始监听指定域名的 ip 包流量:
tcpdump src host baidu.com。  
  • 步骤二、打开浏览器、访问 baidu.com
此时、命令行下可以看到客户端和 baidu 服务之间的 TCP 协议 IP 包、学习网络协议的时候、配合使用很方便。
  • 3、监听发送到指定域名的 TCP 协议包数据包:
步骤一、开始监听指定域名的 ip 包流量:
tcpdump dst host baidu.com。  
  • 步骤二、打开浏览器、访问 baidu.com
此时、命令行下可以看到客户端和 baidu 服务之间的 TCP 协议 IP 包、学习网络协议的时候、配合使用很方便。
  • 4、监听指定端口的 tcp 包
    步骤一、开始监听:
tcpdump tcp port 80。  
  • 步骤二、打开另外一个终端、使用 nc 192.168.10.188 80 命令访问 80 端口。
此时、tcpdump 监听终端下可以看到请求和返回的 ip 包。同理、如果要监听 udp 包可以用:tcpdump udp port 9999
5.3、tcpdump 与 Wireshark
我们可以把二者进行结合,在 Linux 中抓包,在 windows 中分析包。
tcpdump tcp -i ens33 -t -s 0 -c 5 and dst port !22 and src net 192.168.1.10/24 -w ./targetfile.cap
  • 1.tcp: ip icmp arp rarp 和 tcp、udp、icmp 这些选项等都要放到第一个参数的位置,用来过滤数据报的类型;
  • 2.-i eth1 : 只抓取经过 ens33 的数据包
  • 3.-t: 不显示时间戳
  • 4.-s 0 : 抓取数据包时默认抓取长度为 68 字节,加上 - S 0 后可以抓取完整的数据包
  • 5.-c 5: 只抓取 5 个数据包
  • 6.dst port ! 22 : 不抓取目标端口为 22 的数据包
  • 7.src net 192.168.1.10/24: 数据包的源网络地址是 192.168.1.10/24
  • 8.-w ./targetfile.cap: 保存为 cap 文件,方便用 ethereal(wireshark) 分析。

6、结语

tcpdump 针对网络进行数据采集与分析, 同时保存到指定文件,用 wireshark 来打开查看。可以快速查看符合网络接口符合某一条件的抓包,方便我们确定网络问题。

END

官方站点:www.linuxprobe.com

Linux命令大全:www.linuxcool.com

刘遄老师QQ:5604215

Linux技术交流群:3861509

(新群,火热加群中……)

想要学习Linux系统的读者可以点击"阅读原文"按钮来了解书籍《Linux就该这么学》,同时也非常适合专业的运维人员阅读,成为辅助您工作的高价值工具书!


微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
Alpine Linux 3.18 发布 | Linux 中国8 个比 Linux 系统本身还要古老的 Linux 概念使用 ChatGPT AI 从英文文本生成 Linux 命令 | Linux 中国如何在 Rocky Linux 9 / AlmaLinux 9 上安装 KVM | Linux 中国8 款最佳的 Linux 远程桌面工具 | Linux 中国无题外派故事 (28)风花雪月的结局终端基础:在 Linux 中删除文件和文件夹 | Linux 中国硬核观察 #1083 MacBook 上的 Asahi Linux 将基于 Fedora Linux华女曝光“海王”华男:网络上猎艳众多华人女生,拍不雅视频,警局有前科...如何入门 Linux Shell 脚本编写 | Linux 中国测评适用于 Linux 中 Wayland 的最佳屏幕录制软件 | Linux 中国7 个超轻量级 Linux 发行版 | Linux 中国辨认不出亲人的遗书,他们开始在网络上求助……570个常用的Linux命令,1349页Linux命令速查手册(附PDF)武汉地震监测网络遭境外具有政府背景的黑客攻击!警方已立案侦查为什么黑客更喜欢使用 Kali Linux? | Linux 中国Voyager Linux 23.04:具有华丽外观且无 Snap 的 Ubuntu 体验 | Linux 中国在 Linux 上用 Kdenlive 编辑视频 | Linux 中国红楼闲话-宝黛钗凤的星座外交部:美国才是“黑客帝国”拿到奥运会入场券的是她,狂欢的是网络上骂不够乖的一群爹11 个不可变 Linux 发行版,适合那些想要拥抱未来的人们 | Linux 中国Linux 桌面上的 Firefox 面临着大问题 | Linux 中国优化 Linux 服务器的 9 个小技巧,让 Linux 服务器效率起来当你的私人信息在网络上出现 谷歌可以提醒你Kali Linux 简介:你需要了解的一切 | Linux 中国手握美国核弹数据的黑客去世了,他后半生竟然全在反黑客。Linux 有多重要?这么说吧,只要是干 IT 相关的,学 Linux 是绕不过去的 “坎儿”小说:兰欣语乌茶 19和评理丨冷战遗产中情局如何摇身变为“黑客帝国”?risiOS:一个易于使用的基于 Fedora 的 Linux 发行版 | Linux 中国【老键曲库】Somewhere in Time piano rendition by Roy Tan大模型思维链经典论文阅读之——Zero-shot CoT, Manual CoT, AutoCoT一键AI绘画平台上线——网易邀你SD内测!
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。