📜 ⬆️ ⬇️

The developers explained why Chrome connects to three random domains at startup.

Mike West from the Google Chrome group in Munich explains why the browser tries to connect to three random domains every time it loads, like hxxp://aghepodlln/ or hxxp://lkhjasdnpr/ . He says that he has seen several strange conspiracy theories on this subject on the Internet, so he considers it sensible to clarify the situation.

The real reason for such requests is simple: quickly determine whether a client is on a network that intercepts and forwards requests to non-existent hosts. Sometimes it happens that some Internet providers redirect requests like hxxp://text/ to something like hxxp://your.helpful.isp/search?q=text . Leaving aside the discussion, such “help” from the provider is correct or incorrect, but it causes problems for the Chrome browser. Specifically, it interferes with the operation of Omnibox heuristic algorithms that recognize search queries in the address entry line.

For example, if you enter the word go in the address bar, Chrome will perform a search query, but in the background will send a HEAD request to the hxxp://go/ domain hxxp://go/ . If such a domain exists, the user is shown an information panel asking if he wants to visit this site, and the browser will remember this answer for the future.

Obviously, this function stops working normally if the ISP intercepts such requests.
')
Therefore, Chrome and checks when you run the program. The browser code is open, and therefore you can see how it is implemented in the program.

The IntranetRedirectDetector module, when the program starts, creates a new IntranetRedirectorDetector object. It sets a short delay (currently 7 seconds) to let all important browser modules load, and then the IntranetRedirectDetector :: FinishSleep () function is triggered and the real work begins. The method generates three random character sets and sends asynchronous HEAD requests to each of these domain names, so that the cache is not executed and the cookies are not saved . After each query is executed, the IntranetRedirectDetector :: OnURLFetchComplete () function is called to record the result. If two of the three requests are resolved to the same host, then that host is saved as a network "redirect origin". It's simple.

The information is used by AlternateNavURLFetcher to determine whether to show the user an information panel for each of the requests that Omnibox processes. If the HEAD request returns the same site as specified in the "redirect origin", then it is ignored. If different, the information panel can be displayed.

Google representatives once again emphasize that random requests when loading a browser do not send anywhere any private information about the user and are not used for tracking. These requests just fix the crbug.com/18942 bug, and nothing more.

Source: https://habr.com/ru/post/138498/


All Articles