当前位置:首页 > 技术知识 > 正文内容

GNOME桌面环境官方邮件客户端被曝隐私漏洞

maynowei8个月前 (08-07)技术知识92

IT之家 7 月 19 日消息,科技媒体 NeoWin 昨日(7 月 19 日)发布博文,报道称系统管理员 Mike Cardwell 曝光 Evolution 邮件客户端存在隐私问题,DNS 预取功能会泄露用户活动。

IT之家注:Evolution 是 GNOME 桌面环境的官方个人信息管理器和邮件客户端,集成邮件、日历和地址簿功能,方便用户管理电子邮件、日历、联系人和任务等。

Cardwell 指出在 Evolution 客户端中,电子邮件可以包含一个带有 rel 属性设置为 dns-prefetch 的链接 HTML 标签,并且 href 属性中包含一个跨域,用于告诉浏览器或邮件客户端预先解析该域的 IP 地址。

通常,对于任何远程内容,Evolution 使用的 Web 渲染引擎 WebKitGTK 应该发出一个名为 WebPage::send-request 的信号,并根据“加载远程内容”设置决定是否阻止连接,该设置禁用时应该阻止追踪器和其他不良内容。

不过其中的问题是,WebKit 并不发送该信号,而是直接进行 DNS 查询。这完全绕过了 Evolution 的隐私防护措施。因此,发件人可以不需要收件方同意,可以看到收件方是否打开了他们的邮件、何时打开。

Cardwell 后续还挖掘发现,利用该漏洞,不仅可以知道以及 DNS 解析器的 IP 地址,而且还能知道用户的实际 IP 地址。

不过 GNOME 开发者并不认同这个漏洞,一位开发者指责他在博客上“抹黑项目”,称其“自以为是”,并认为他的报告是“适得其反且令人沮丧的”。

相关文章

C++并发同步核心-mutex深度解析:守护共享数据的关键

在多线程编程中,当多个线程需要访问和修改共享数据时,如果没有任何同步机制,就可能发生数据竞争(Data Race),导致程序行为不可预测、数据损坏甚至崩溃。C++标准库通过<mutex>头...

掌握C语言多线程:高效并发编程指南

一、多线程基础概念介绍多线程编程是现代软件开发中提高程序性能和响应性的重要技术。在C语言中,pthread(POSIX Threads)库是实现多线程编程的标准工具。本节将通俗易懂地介绍多线程的核心概...

C++11 同步机制:互斥锁和条件变量

前段时间,我研究了 ROS2(Jazzy)机器人开发系统,并将官网中比较重要的教程和概念,按照自己的学习顺序翻译成了中文,进行了整理和记录。到目前为止,已经整理了20多篇文章。如果你想回顾之前的内容,...

Linux系统编程:条件变量为什么要用锁

条件变量可以解决线程同步和共享资源访问的问题,条件变量是对互斥锁的补充,它允许一个线程阻塞并等待另一个线程发送的信号,当收到信号时,阻塞的线程被唤醒并试图锁定与之相关的互斥锁。具体定义如下:等待:in...

Navicat Premium 连接 Oracle 数据库

Navicat Premium是一个可多重连接的数据库管理工具,它可让你以单一程序同時连接到 MySQL、SQLite、Oracle 及 PostgreSQL 数据库,让管理不同类型的数据库更加方便。...

python-oracledb——利用python连接Oracle数据库的好用方法

这篇文章最早发布在CSDN了,最近想尝试使用一下头条,重新转移过来了。背景介绍之前使用的数据库一直是MySql,偶尔使用PostgreSQL,都是利用的数据库连接池使用;最近需要在Oracle数据库取...