Opened 3 months ago

Closed 2 months ago

#26355 closed task (fixed)

Make sure only Windows users on Windows7+ are trying to use Tor Browser based on ESR60

Reported by: gk Owned by: pospeselr
Priority: High Milestone:
Component: Applications/Tor Browser Version:
Severity: Normal Keywords: ff60-esr, TorBrowserTeam201807R
Cc: mcs, brade, boklm, tbb-team Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

The miminum requirement for Firefox 60 is Windows 7 (which means there is no Windows XP and no Windows Vista anymore supported). We should make sure that

a) Tor Browser users on Windows XP and Windows Vista are not updated to the new Tor Browser (ideally they would get to know what is going on at least once).

b) Tor Browser users on Windows XP and Windows Vista are not trying to install Tor Browser 8 in the first place.

Child Tickets

Change History (18)

comment:1 Changed 3 months ago by gk

Cc: mcs brade boklm added

comment:2 Changed 3 months ago by boklm

For a), it seems we could use the minSupportedOSVersion attribute that was added in #13047.

I see that the updater is checking minSupportedOSVersion like this:

  if (update.hasAttribute("unsupported")) {
    this.unsupported = ("true" == update.getAttribute("unsupported"));
  } else if (update.hasAttribute("minSupportedOSVersion")) {
    let minOSVersion = update.getAttribute("minSupportedOSVersion");
    try {
      let osVersion = Services.sysinfo.getProperty("version");
      this.unsupported = (Services.vc.compare(osVersion, minOSVersion) < 0);
    } catch (e) {}
  }

So we need to find what is the value of Services.sysinfo.getProperty("version") on Windows 7.

comment:3 in reply to:  2 Changed 3 months ago by mcs

Replying to boklm:

So we need to find what is the value of Services.sysinfo.getProperty("version") on Windows 7.

The short answer is "6.1".

The longer answer is that PR_GetSystemInfo() is used by Services.sysinfo to obtain OS version information. On Windows, the implementation is in _MD_WindowsGetSysInfo() which constructs a string as dwMajorVersion.dwMinorVersion from a OSVERSIONINFO struct that is filled in via a call to the Windows API function GetVersionEx(). I used the Firedox browser console in to obtain the 6.1 answer, and it matches the data in the table that is included in the following page:

https://msdn.microsoft.com/en-us/library/windows/desktop/ms724834(v=vs.85).aspx

comment:4 Changed 3 months ago by cypherpunks

Type: enhancementtask

Dropping support can't be an enhancement, it's a shame of Mozilla corp.

comment:5 in reply to:  4 Changed 3 months ago by cypherpunks

Replying to cypherpunks:

Dropping support can't be an enhancement, it's a shame of Mozilla corp.

Yeah let's keep supporting the meme of security that is WinXP.

comment:6 Changed 3 months ago by sukhbir

Sorry for missing something obvious here, but for "b) Tor Browser users on Windows XP and Windows Vista are not trying to install Tor Browser 8 in the first place.", would it make sense to initiate a check from NSIS rather than Tor Browser?

comment:7 in reply to:  6 Changed 3 months ago by gk

Replying to sukhbir:

Sorry for missing something obvious here, but for "b) Tor Browser users on Windows XP and Windows Vista are not trying to install Tor Browser 8 in the first place.", would it make sense to initiate a check from NSIS rather than Tor Browser?

Yes, that check needs to be in the NSIS script that generates the .exe.

Last edited 3 months ago by gk (previous) (diff)

comment:8 Changed 3 months ago by pospeselr

Owner: changed from tbb-team to pospeselr
Status: newassigned

comment:9 Changed 3 months ago by boklm

Cc: tbb-team added

comment:10 Changed 3 months ago by pospeselr

Two small patches to fix this, one in the update_response config, adding "minSupportedOSVersion: 6.1" string for win32 and win64 builds. The other is to the nsis build script which adds the following pop-up to the installer when it's detected to be running on a version of windows older than Windows 7 (verified in Vista and 7 VMs).

https://trac.torproject.org/projects/tor/raw-attachment/ticket/26355/error_popup.png

One other thing I noticed while looking at the nsis script is that we're providing the option to add Desktop and Start Menu shortcuts. Since we don't provide an uninstaller to clean up the Start Menu, should that be removed, or at least put the Start Menu shortcut generation into a second not auto-selected option? I would think most users probably wouldn't remember to delete the Start Menu shortcut if they delete Tor Browser.

Changed 3 months ago by pospeselr

Attachment: error_popup.png added

comment:11 Changed 3 months ago by pospeselr

Keywords: TorBrowserTeam201806R added; TorBrowserTeam201806 removed
Status: assignedneeds_review

comment:12 Changed 3 months ago by boklm

I merged the update_responses_config.yml patch to master as commit 2b04f4ee916a43a70c436a52c83205eda5f38648.

comment:13 Changed 3 months ago by gk

Keywords: TorBrowserTeam201807R added; TorBrowserTeam201806R removed

Moving reviews to July.

comment:14 Changed 2 months ago by boklm

The patch for the installer looks good to me, so I opened a pull request to get it merged in the upstream git repository:
https://github.com/moba/tbb-windows-installer/pull/2

comment:15 in reply to:  14 Changed 2 months ago by boklm

Resolution: fixed
Status: needs_reviewclosed

Replying to boklm:

The patch for the installer looks good to me, so I opened a pull request to get it merged in the upstream git repository:
https://github.com/moba/tbb-windows-installer/pull/2

The patch has been merged and a new version tagged. Commit 7903f5828c835e52722101a83450bbeb29fc2007 is using the new tbb-windows-installer tag.

Note: See TracTickets for help on using tickets.