lwindolf / liferea

Liferea (Linux Feed Reader), a news reader for GTK/GNOME
https://lzone.de/liferea
GNU General Public License v2.0
824 stars 129 forks source link

Proxy settings ignored when fetching feed icon/favicon #1374

Open RecusantBias opened 4 months ago

RecusantBias commented 4 months ago

Hello,

I've noticed that Liferea appears to disregard my proxy configuration when fetching feed icons.

This came to my attention when I added a feed from a website that is blocked at the network level, but which is accessible via my proxy. Due to the filtering, this icon is displayed: image

On opening the link to the icon in Liferea, I get the message "Error performing TLS handshake: An unexpected TLS packet was received." This is a result of the network filtering, and does not happen when I attempt to access the icon in any other program using the same proxy configuration.

Aside from the cosmetic issue, I think this bug has privacy implications, as requests are being leaked and would be visible to the user's ISP or another third party with access to network flow data.

Edit: The issue doesn't occur in version 1.14.6, but it does when compiling from the current Git version.

Edit 2: The earliest version I still have that's compiled against the Git repo is 1.15.6.r1.g918c7b8. This one still exhibits the bug, so the breaking change must have happened at some point between 1.14.6 and then.

lwindolf commented 3 months ago

The large difference between 1.14 and 1.15 is the switch from libsoup2 to libsoup3.

What I do not yet understand: is this about favicons display in the feed list or in the HTML pane when navigating to other websites?

RecusantBias commented 3 months ago

It seems to be happening in the feed list, as well as in the header for each feed entry when the feed includes a logo element. By the header, I mean this area:

image

Opening the URL for the favicon or logo in a Liferea browser tab results in the handshake error.

sjehuda commented 2 months ago

Do you have external observation with WireShark, for example?