gpt4 book ai didi

linux - 如何使用 Wireshark 解密 TCP 流量?

转载 作者:太空宇宙 更新时间:2023-11-04 05:19:34 25 4
gpt4 key购买 nike

我使用的是带有 PostgreSQL 5.5 的 Linux。我正在尝试监控主从之间与 PostgreSQL 相关的所有流量。为此,我使用 Wireshark 来监控流量。然后,我启动 PostgreSQL 并运行各种查询。在这些查询期间,我在主服务器上运行 Wireshark 只是为了捕获主服务器和从服务器之间的流量。

但是使用 Wireshark 捕获的 PostgreSQL 流量存在一个问题。所有流量均以 TCP 数据包的形式发送/接收,并且流量采用编码形式。我无法读取该数据。请看下图:

Wireshark File's Image for PostgreSQL DB .

我想找出我在 PostgreSQL 数据库中插入的来自 Wireshark 的确切查询。查找 PostgreSQL 查询的最佳方法是什么?

另一方面,我在 MySQL 数据库上运行了相同的查询并重复了上述实验。我可以轻松地读取 Wireshark 转储中的所有这三个查询,因为它们不是编码形式。请看下图:

Wireshark File's Image for MySQL DB

在图像的末尾,显示了我在 MySQL 中插入的确切查询。但我无法在 PostgreSQL 案例中读取相同的查询(请参阅第一张图片)。

我需要从 Wireshark 文件中找出上述查询。

关于文件:

  • 192.168.50.11 是我向远程 PostgreSQL 主服务器插入查询的源计算机
  • 192.168.50.12是master服务器的IP
  • 192.168.50.13是从站的IP地址

查询从 .11 执行并插入到 .12 中,然后使用主从方法复制到 .13 中。非常欢迎指点。

最佳答案

我自己的问题的解决方案:

我的问题得到了解答。

我使用 Python 代码将查询插入到远程 PostgreSQL 数据库中。我在 PostgreSQL 中使用以下行来连接数据库。 con = psycopg2.connect(host="192.168.50.12",database="postgres", user="postgres",password="faban")如果您使用上述方法,那么所有数据都将以加密形式发送。如果您在 python 代码中使用下面给出的方法,那么所有数据都将以解密的形式发送。您可以轻松阅读 Wireshark 中的所有查询。 con = psycopg2.connect("host=192.168.50.12 dbname=postgres user=postgres password=faban sslmode=disable") C 代码中的情况也是如此。解密数据 sprintf(conninfo, "dbname=postgres hostaddr=192.168.50.12 user=postgres password=faban sslmode=disable"); 加密数据 sprintf(conninfo, "dbname=postgres hostaddr=192.168.50.12 user=postgres password=faban");

关于linux - 如何使用 Wireshark 解密 TCP 流量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43627042/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com