栏目分类
热点资讯
你的位置:欧冠体育游戏手机登录注册 > 车床资料 > 巧妙的应用 tcpdump 查察原始数据包

车床资料

巧妙的应用 tcpdump 查察原始数据包

发布日期:2022-08-07 18:11    点击次数:55

应用 'tcpdump' 查察原始数据包

诚然像 Snort 这样的器材在挑拣经由过程我们网络的全体内容方面做得极度精彩,但偶尔需求查察原始数据。为此,我们最佳的器材是“tcpdump”。

应用 tcpdump 最根抵的编制是俭朴地收回敕令:

您可应用 -v 选项获取更多详细信息,应用 -vv 可以或许获取更多信息。 有效的选项

假设您已登录到您打点的近程计算机。平日,您将应用 SSH。假设您在没有任何选项的环境下运行“tcpdump”,则输出将被来自您的 SSH 跟尾的数据包覆没。为防止这类环境,只有从输出中删除端口 22:

您可应用不少差别的端口来执行此操作:

代码:

tcpdump not port 143 and not port 25 and not port 22 

假设你想做相反的事变,即只照管某个端口——这对调试网络应用顺序很有益处——你可以或许执行下列操作:

您还可以或许从网络上的特定主机获取数据:

假设您的古板有多个网络接口,您还可以或许指定要收听的一个:

您还可以或许指定和谈:

您将在 /etc/protocols 中找到和谈列表。 为当前生活生涯输出

在某些环境下,您兴许停留将输出重定向到一个文件,以便当前可以或许详细研究它或应用其余顺序来剖析输出。在下列示例中,您仍然可以或许在将输诞生活生涯到文件时查察输出:

代码:

tcpdump -l | tee tcpdump_`date +%Y%m%e-%k.%M` 

在上面的示例中,我们可应用日期和时光来识别每个转储。在处理惩罚一天中某些时光出现的成就时,这兴许会派上用处。

tcpdump 还可以或许抉择将其输出转储为二进制项目,以便当前读取。创立二进制文件:

代码:

tcpdump -w tcpdump_raw_`date +%Y%m%e-%k.%M` 

稍后,您可应用 tcpdump 读取文件

代码:

tcpdump -r tcpdump_raw_YYYMMDD-H.M 

您还可应用 ethereal 顺序关上原始转储并对其举行说明。我们将在下一节中更多地探究空灵。

要查找的内容

tcpdump 为我们供应了无关出入我们网络的全体数据包的信息。但这通通意味着什么?

将 Ethereal 与 tcpdump 联结应用 Ethereal

是一个也可用于捕获网络数据包的器材。按部就班后,您可以或许关上您制作的原始转储文件。它看起来像这样:

这使得查察正在发生的事变变得相当苟且。您可以或许看到源 IP 和目标 IP 是什么以及它是什么范例的数据包。尔后很苟且经管您兴许遇到的网络成就并阐发可疑动作。顺便说一句,当我在写这节课并说明我自身的转储时,我在我的集团事变站上看到了一些稀罕的流动。险些每隔一段时光,我就会活着界上差别 IP 的古板上查询端口 32772。我为端口 32772 运行了一个特定的转储,以下所示:

代码:

tcpdump port 32772 -w dump_32772 

我失去切实凿看起来很稀罕。纵然在google征采当前,我也找不就任何相干信息,所以我思疑我兴许有木马。我运行了“rootkit hunter”(下一节将详细介绍),但终局却满载而归。最后,车床资料逐个关机,原来是我一贯关上的Skype。尽管这被证明是无害的,但我很欢娱我有 tcpdump 向我指出这一点。

读取原始输出

如您所见,纵然从 tcpdump 读取所谓的“人类可读”输出也兴许有点奥密。看看上面的例子,一个我适才从转储中捞出的随机数据包:

代码:

17:26:22.924493 IP www.linux.org.www > test.linux.org.34365: P 2845:3739(894) ack 1624 win 9648  

我们拥有的是对www.linux.org的网络服务器要求. 在时光戳当前,您会留心到主机名末端的 .www(默示端口 80)。这将被发送到要求主机 test.linux.org 的端口 34365。'P' 代表 TCP “oush” 功用。这意味着该当登时发送数据。在后面的数字中,2845:3739(894),2845 标记了第一个数据包的八位字节数。数字 3739 是数据包发送的最后一个字节的编号加 1。数字 894 是发送的数据包的长度。上面写着:“ack 1624”的部份是“acknowledge”的 TCP 术语——即数据包已被担任,接上去预期的数据包号是 1624。当前,我们看到“win 9648”发送主机等待窗口大小为 9648 个八位字节的数据包。这后面是时光戳。

今朝,假设您觉得这有点难以说明,假设您应用 -x 选项,它将在十六进制输出中包孕数据包内容。在这里,您需求埃及学家来疏解输出:

代码:

 

18:12:45.149977 IP www.linux.org.www > test.linux.org.34536: . 1:1449(1448)  ack 487 win 6432 <nop,nop,timestamp 329284215 27156244>         0x0000:  4500 05dc 6a81 4000 4006 493b c0a8 0006  E...j.@.@.I;....         0x0010:  c0a8 0009 0050 86e8 8fa4 1d47 1c33 e3af  .....P.....G.3..         0x0020:  8010 1920 b4d9 0000 0101 080a 13a0 7a77  ..............zw         0x0030:  019e 5f14 4854 5450 2f31 2e31 2032 3030  .._.HTTP/1.1.200         0x0040:  204f 4b0d 0a44 6174 653a 2054 6875 2c20  .OK..Date:.Thu,.         0x0050:  3135 

我们可以或许从输出中采集到,这是一个 HTTP 要求。至于其余的,它不是人类可读的,但我们很苟且晓得这是一个非法的数据包。应用这类项目标另外一个益处是,纵然我们不克不迭正确地说明这个数据包发生了什么,我们也可以将它发送给兴许兴许理解的人。最后,这是未经任何过滤就经由过程网络传输的原始数据。