Why does Chromium connect to Google on startup?

22

2

I installed Chromium on Ubuntu from the official repositories. I

  • disabled everything in the "Privacy" section
  • am not logged in
  • set my default search to duckduckgo
  • set my first page to an empty tab

Then I closed Chromium, launched Wireshark, started a capture and opened Chromium again. After a few seconds I saw an https connection to 173.194.40.83, which is a Google IP.

Why does Chromium connect to Google at every startup? Unfortunately it's an SSL connection so I can't see what is being sent. Is there any way to see the unencrypted content of that traffic?

Simon

Posted 2013-03-21T19:12:19.520

Reputation: 343

Have you tried to open chrome://net-internals/#events ? I guess, it must be done BEFORE chromium connects to google. Not sure about this. – int – 2013-03-21T19:22:54.223

I see a URL_REQUEST to https://www.google.com/searchdomaincheck?format=url&type=chrome and then a SOCKET to ssl/www.google.com:443

– Simon – 2013-03-21T19:27:01.473

If it is only url, chromium connects at startup, you should't worry. Otherwise you can just block all connections to google via firewall. – int – 2013-03-21T19:30:16.427

Do you know what this request is for? – Simon – 2013-03-21T19:32:16.187

It lets chromium to find default search domain for google (for example, google.co.uk, if user is from UK). I do now know why it sends this request, if you set another default search engine. – int – 2013-03-21T19:36:56.947

Answers

13

The page searchdomaincheck returns your preferred Google domain. For me, visiting it returns https://www.google.com/ normally, but https://www.google.com.py/ in a temporary profile and incognito mode.

This is its main function, although I fail to see why it is needed if you're not using the Google search engine. To make this possible, Chromium has to be sending your Google cookies.

The request to searchdomaincheck is made by the GoogleURLTracker class, which says in its comments:

// This object is responsible for checking the Google URL once per network
// change, and if necessary prompting the user to see if they want to change to
// using it.  The current and last prompted values are saved to prefs.

A "network change" will be detected, e.g., by the function OnIPAddressChanged().

I'm desperately trying not to behave tinfoilhattish here, but this sounds like a cheap way to associate a tracking cookie with an IP address.

According to List of Chromium Command Line Switches, the command-line switch --google-search-domain-check-url should be able to stop this behavior.

Try invoking Chromium as follows:

chromium-browser --google-search-domain-check-url=localhost

Dennis

Posted 2013-03-21T19:12:19.520

Reputation: 42 934

1That command-line switch appears to no longer be listed on that link – el_stack – 2014-10-23T16:51:03.890

6I will report this as a bug to the chromium devs. – Simon – 2013-03-22T14:01:02.643

If it is of any help, I wrote an extension with which a user can see (and optionally block) all net requests, including those made behind the scene like the above searchdomaincheck. Cookies can also be stripped from outgoing headers, etc. Name: HTTP Switchboard. Works on any Chromium-based browser.

– rhill – 2014-01-11T00:16:57.377