What updates traffic can network observers see when proxy set to TOR?

I’m looking for information about what my ISP can see while my Qubes connected to clearnet fetches repository metadata as they check for any updates available. I found such a topic on github

And comment by user marmarek (Marek Marczykowski-Górecki):

Another comment is that “updates check” is very different from “downloading updates” in terms of what info a network parth observer gets. With updates check, only repository metadata gets downloaded, which at most leaks info what distribution one uses (depending on some details, it could be just “some Debian”, or “Debian version X”, and that qubes is being used due to connecting to qubes repos too). Downloading updates potentially leaks more info - careful observer may try to guess what packages are being updated. With HTTPs, exact file names should be hidden, but one can still see amount of data, and correlating that with package sizes is possible. Furthermore, targeted attacks (like preventing an update) would need to target the “download updates” stage, targeting just “updates check” is not enough. So, it’s still quite valuable configuration to route just “download updates” over Tor, while doing “updates check” using any available network.

When writing about “network parth observer” and “careful observer” did user marmarek mean my ISP?

Does my ISP, when my Qubes has connected to clearnet and is downloading repository metadata to check for updates, can only see:

a) distributions of this Qube that fetches repository metadata to check for updates?

b) information that I use Qubes because I connect to Qubes repositories?

Is this all the information my ISP sees?

Hello @iobkvc,

I also was interested when I read this. It does not really affect me, I believe, but this is what I thought…

An “observer” can be anywhere in the routes between your machine (M) and the remote servers you contact.

It is sure that your ISP, and all devices between M and ISP can see the most, but there can also be national and international observers who can filter and examine your packets.

Update checking will tell what OS/distribution/repositories are used by you, and how many examples of each, and when they are running. Each AppVM does a periodic check for its parent template. I think the first one is just after startup, then at the usual interval (48 hrs for fedora?)

Other traffic can maybe be correlated in time to infer the use of each machine, if they are networked - clearnet DNS requests, HTTPS, etc. For example, a Debian update check just before connecting to the sports TV website - that is the football VM. This is easier if specific repositories are used per templateVM.

If you do use your ISP DNS, then it could play with TTL of different responses, for extra profiling, if there are mirrors without DNSSEC, but that seems unlikely and would be easy to detect, if we looked for it.

When you do updates, the sizes and order of downloads can reveal what packages are being updated. This is where the connection can be interfered with - for blocking security update. This is done only by templates and standalones, normally, but if you use e.g. Chrome browser only for sports TV, then there is a little bit more information there about template<->VM relationships.

One must be very interesting for the ISP to be interested in all this.

Not sure for me:

  • DNSsec - where it is used, checked…
  • Plain DNS vs DNS over HTTPS/TLS - trust ISP vs trust Google/Cloud flare/who else?
  • Is it time to get VPN everywhere?

Your ISP is one example of a network path observer, but there could be others, such as governments, other corporations, and hackers – basically anyone who has access to the servers and networking equipment through which your traffic flows.

1 Like

You can install Wireshark in sys-net and observe all the traffic that goes through. If you’ve never used it it may take a while to get used to it, but with some nice capture and display filters you should be able to only capture and display unencrypted traffic, which you can analyse by hand (there’s lots of guides to Wireshark available online).

1 Like