[tor-project] OONI Monthly Report: March 2021

Maria Xynou maria at openobservatory.org
Fri Apr 9 16:24:41 UTC 2021


Throughout March 2021, the OONI team worked on the following sprints:

* Sprint 34 - Hapi (1 - 14 March 2021)
* Sprint 35 - Octariinae (15 - 28 March 2021)

Our work can be tracked through the various OONI GitHub repositories:

Highlights are shared in this report below.

## Published report on internet blocks and outages in Myanmar

In collaboration with IODA and MIDO, we published a new research report
which shares network measurement data on the internet blocks and
internet outages in Myanmar, following the military coup.

Our report is available here:

In the report, we share OONI data on:

* Blocking of social media (Facebook, Facebook Messenger, WhatsApp,
Instagram, Twitter) in Myanmar;

* Blocking of Wikipedia (primarily seen from 20th February 2021 onwards);

* Blocking of circumvention tool websites (such as protonvpn.com);

* Blocking of Justice for Myanmar (www.justiceformyanmar.org): an
activist campaign which aims to pressure businesses and investors around
the world to divest from Myanmar military businesses;

* Blocking of a COVID-19 website (coronavirus.app);

* Ongoing blocking of news media (which started last year), including a
few ethnic media sites.

Through OONI data, we observe the following:

1) Censorship variance across networks: Internet censorship appears to
vary across networks in Myanmar, as we observe different sites being
blocked on different networks (and the blocks are not implemented on all

2) Variance in censorship techniques:

* IP blocking: In many cases, we observe the IP blocking of websites and
apps across networks in Myanmar.

* DNS based interference: In some cases, ISPs in Myanmar block sites by
means of DNS based interference, returning IP addresses that host block
pages (, or an address in private IP space
(such as or We were able to automatically confirm
these censorship cases.

3) Non-deterministic censorship: Not all IP blocks appear to be
effective. OONI data shows that it is sometimes possible for connections
to go through (even though IP blocks appear to be in place), which is
likely why we observe inconsistent measurements (in terms of
accessibility and blocking).

The report also shares IODA data (along with Google traffic data &
Oracle Internet Intelligence data) on the nightly internet outages that
Myanmar has been experiencing. The first internet disruption was
observed in the early hours of 1st February 2021 (on the day of the
military coup), followed by a second, higher impact internet outage on
6th February 2021 (which lasted for almost 30 hours). As of 15th
February 2021, Myanmar has been experiencing complete internet outages
every night (between around 1am to 9am local time).

The findings of this study suggest an alarming shift in Myanmar’s
internet censorship landscape. In our 2017 study (which examined
internet censorship in Myanmar based
on the analysis of all OONI measurements collected between 2016-2017),
we barely found any internet censorship in the country. Now, the ongoing
social media blocks and nightly internet outages raise major human
rights concerns, particularly in light of the current political environment.

Our report received media coverage from Deutsche Welle (DW):

* English article:
* German article:

VPNCompare also wrote an article about the report:

## OONI Probe Desktop

We released OONI Probe Desktop 3.3.0
(https://github.com/ooni/probe-desktop/releases/tag/v3.3.0) which
includes support for regular automated testing on Windows and macOS.

We also implemented the new Signal test in OONI Probe Desktop
(https://github.com/ooni/probe/issues/1408) and worked on adding RTL
support in the OONI Probe desktop app

### Automated testing on OONI Probe Desktop

The OONI Probe Desktop App now supports automated testing!

Automated testing was added in OONI Probe Desktop 3.3.0 on Windows and
macOS: https://ooni.org/install/desktop

Instead of having to remember to manually run tests, users can now
enable "automated testing" in the settings of their OONI Probe desktop
app (version 3.3.0) and OONI Probe will automatically run tests every
hour in the background (without user intervention). OONI Probe test
results will automatically get published on OONI Explorer (in near
real-time): https://explorer.ooni.org/

With automated testing, OONI Probe users can regularly contribute
censorship measurements (without having to do anything), enhancing the
internet freedom community’s ability to monitor and detect censorship
events around the world.

## OONI Probe Mobile

In March 2021, we released OONI Probe mobile 2.10.0 and 2.10.1 on:

* Android: https://github.com/ooni/probe-android/releases/tag/v2.10.0 &
* iOS: https://github.com/ooni/probe-ios/releases/tag/v2.10.0 &

With these releases, we added support for dark mode, improved the API
calls to the Citizen Lab test lists, removed the collection of app usage
metrics entirely, removed all analytics from F-Droid (i.e. removed the
collection of crash reports), and we made bug fixes and other improvements.

We decided to remove the collection of app usage metrics entirely from
the OONI Probe mobile apps, since we concluded that this information was
not as useful as we originally thought (and we wanted to increase user
privacy). We also decided to remove Firebase analytics and only use
Sentry for the collection of crash reports (when users opt-in to this)
and Countly for sending push notifications (on Android). We reached
these decisions following a careful audit of these tools
(https://github.com/ooni/probe/issues/1399), with the goal of ensuring
greater data minimization and only collecting data that is necessary.

We also implemented the new Signal test in OONI Probe Mobile:
https://github.com/ooni/probe-android/pull/422 &

### Progress on automated testing on OONI Probe Mobile

We made significant progress in adding support to the OONI Probe mobile
app for automated testing, as documented through the following pull
request: https://github.com/ooni/probe-android/pull/380

Throughout March 2021, we created 2 APKs for automated OONI Probe
testing on Android. We tested these APKs extensively and based on our
testing, we made a series of improvements. Currently, the OONI Probe APK
for automated testing on Android performs all tests automatically every
hour, testing 100 URLs each time. We have configured it to only run
these tests when the user is connected to WiFi and when their mobile
device is charging (though we have also added settings which allow users
to enable and/or disable these options).

We will soon release a beta version for more extensive testing by
community members, in preparation for the upcoming stable release.

## Publication of OONI Probe user guides

We published 2 new user guides for the OONI Probe apps!

1) User Guide: OONI Probe Mobile:

2) User Guide: OONI Probe Desktop:

These guides share step-by-step instructions (with screenshots) on how to:

* Install and run OONI Probe (to measure various forms of internet

* Access and share OONI censorship measurement data

* Customize the use of OONI Probe (for example, to test websites of
your choice)

* Configure OONI Probe settings

With our new user guides, we share detailed information that will
hopefully enable many community members to become OONI Probe power
users, and to share their OONI Probe knowledge and skills with others.

## OONI Probe Command Line Interface (CLI)

We released OONI Probe CLI 3.6.0
(https://github.com/ooni/probe-cli/pull/239) which includes the new
Signal experiment, data quality improvements, exposing a new API to call
the URLs endpoint from mobile devices, end-to-end tests, and other
improvements (as documented here:
https://github.com/ooni/probe-cli/releases/tag/v3.6.0). Details from
this release are also documented through the following ticket:
https://github.com/ooni/probe/issues/1340. We also implemented a fix for
the TRR2 DoH resolver: https://github.com/ooni/probe/issues/1365 

We added support for go 1.16 in the OONI Probe CLI
(https://github.com/ooni/probe/issues/1367) and we started adding
support for a new experimental test card, which would include the
DNSCheck experiment (https://github.com/ooni/probe/issues/1262). We also
implemented the check-in API in OONI Probe CLI

## OONI Probe Engine

We continued to work on a Go-based nettest API for the OONI Probe mobile
app (https://github.com/ooni/probe/issues/1346). We continued to
redesign the probe-services package to add circumvention support
(https://github.com/ooni/probe/issues/1355), making OONI Probe more
resilient to censorship. We also continued to redesign the
probe-services package to increase its reliability

## Expanding OONI Probe measurement methodologies

In preparation for the release of the new OONI Probe test for the Signal
Private Messenger app, we implemented the test in the OONI Probe mobile
and desktop apps (as discussed previously), and we published a Signal
test description on our website: https://ooni.org/nettest/signal. This
description explains how the OONI Probe test for Signal works, linking
to our test specification

As part of efforts to improve OONI data quality, we tested bootstrapping
Psiphon with a pre-existing cache
(https://github.com/ooni/probe-engine/issues/1192) in order to
understand the impact of using a cache directory. We improved upon the
data quality of Web Connectivity measurements by adding support for
exporting all URLGetter fields
(https://github.com/ooni/probe-engine/issues/1157). We also fixed a
critical issue in our STUN reachability experiment

## OONI Explorer

We made progress on creating multi-dimensional charts for the
Measurement Aggregation Toolkit of OONI Explorer
(https://explorer.ooni.org/experimental/mat). This work is documented
through the following ticket: https://github.com/ooni/explorer/issues/536

We also looked into and evaluated self-hosted crash reporting solutions
for OONI Explorer: https://github.com/ooni/probe/issues/1401

A number of developers joined the OONI Slack/IRC channel, expressing
interest in our Google Summer of Code (GSoC) OONI Explorer project
(“Improving OONI Explorer code quality”):
https://community.torproject.org/gsoc/ooni-explorer-code-quality/. Some
of these developers have already worked on OONI Explorer tickets (see:
https://github.com/ooni/explorer/pulls?q=is%3Apr+author%3AEddges and
https://github.com/ooni/explorer/pulls?q=is%3Apr+author%3Amsaaddev)! We
therefore coordinated with prospect GSoC students who are interested in
working on OONI Explorer.

## OONI backend

Throughout March 2021, we worked on the following backend activities:

* Completed the process of reprocessing old measurements in the OONI
fastpath pipeline
* Deployed quic.ooni.org
* Added support to the API for an experimental test group:
* Completed an initial experiment which involved correlating domains and
server IP addresses in Web Connectivity measurements
* Worked on investigating duplicate measurements with different
* Worked on implementing the first login and registration backend prototype
* Continued to look into bintray alternatives

## Data analysis for Cameroonian partner

We analyzed all OONI measurements collected from Cameroon to identify
cases of website blocking. Based on the analysis, we generated and
shared charts (that summarize the findings) with our local partner
(COMPSUDEV), and we shared instructions for further testing.

## Data analysis for researchers in Uganda

Two independent researchers from Uganda are using OONI Probe and OONI
data as part of their work. In support of their research, we analyzed
relevant OONI measurements (collected from Uganda) and provided them
charts (summarizing key findings) that they will use in their research

## Updated test lists

Throughout March 2021, we contributed updates to the following test lists:

* Global: https://github.com/citizenlab/test-lists/pull/732,
* Senegal: https://github.com/citizenlab/test-lists/pull/733
* Myanmar: https://github.com/citizenlab/test-lists/pull/744

We also started a new test list for Togo:

## Collaboration with Netalitica on test lists

We continued to collaborate with Netalitica researchers, who did
excellent work updating more Citizen Lab test lists.

Throughout March 2021, we reviewed (and shared feedback on) Netalitica
updates to the Malaysian and Palestinian
(https://github.com/citizenlab/test-lists/pull/745) test lists.

## Google Summer of Code (GSoC) 2021

This year, we have 5 OONI Google Summer of Code (GSoC) projects
(https://community.torproject.org/gsoc/) that students can apply to:

1) OONI: Implement Roaming Test Helpers:

2) OONI: Integration And Unit Testing Of OONI Probe Desktop Apps:

3) OONI Probe Network Experiments:

4) OONI: Measure The Accuracy Of OONI GeoIP Lookup:

5) OONI: Improve OONI Explorer Code Quality:

Accepted students will work on an OONI GSoC project (paid by Google)
during the summer of 2021 (between 7th June 2021 to 16th August 2021)
with mentorship from the OONI team.

Information about GSoC is available here:

Students can apply until 13th April 2021:

## Micro-course on Internet censorship

Asuntos del Sur (https://asuntosdelsur.org/) launched Plataforma
Inteligencia de Riesgos
(https://riesgosdigitales.academiainnovacionpolitica.org/), an online
platform that provides micro-courses on digital security and digital
rights related topics.

This platform features a micro-course on internet censorship, which we
had the opportunity to contribute:

For the micro-course on Internet censorship, we created 3 short videos on:

1) What is Internet censorship?
2) The Problem of Internet censorship
3) Detecting Internet censorship with OONI Probe

The micro-course also includes the slides from each video presentation,
as well as relevant resources for further reading.

All of the above are available through the “Curriculum” section of this

As these micro-courses are primarily geared towards civil society groups
in Latin America, the materials include Spanish translations.

We are grateful to Asuntos del Sur for offering us the opportunity to
contribute to this project!

## Community use of OONI data

### Lebanon blocking currency exchange rate sites

SMEX published an article on the blocking of currency exchange rate
websites in Lebanon:

In their article, SMEX shared an OONI Run link for the OONI Probe
testing of specific currency exchange rate websites, and a link to OONI
measurements collected from Lebanon. They also shared their OONI Probe
findings (from the testing of currency exchange rate sites in Lebanon)
on social media: https://twitter.com/alisibai/status/1369943574054375424

## Community activities

### DigitalReach event

On 17th March 2021, OONI’s Simone participated as a speaker on
DigitalReach’s webinar, “From Beijing with Love: The Internet Firewall
in Southeast Asia”. This online event was hosted for civil society
groups in Southeast Asia, and information about the event is available

As part of his participation, Simone presented OONI’s methodologies and
explained how civil society groups in Southeast Asia can use OONI Probe
and OONI data to investigate internet censorship. He also discussed some
of OONI’s recent censorship findings from Myanmar, as well as how
communities in Cambodia and China can participate in censorship
measurement research.

### MozFest 2021

On 17th March 2021, OONI’s Arturo and Sarath facilitated a workshop at
MozFest 2021, during which they demoed OONI Explorer and explained how
human rights defenders can use the platform to investigate internet
censorship around the world.

Information about our MozFest session (“Exploring Internet censorship
through OONI data”) is available here:

### OONI Community Meeting

On 30th March 2021, we hosted the monthly OONI Community Meeting on our
Slack channel (https://slack.ooni.org/), during which we discussed the
following topics:

1. Automated testing on OONI Probe Desktop and OONI GSoC projects.

2. Updates regarding the web platform for contributing to the Citizen
Lab test lists.

3. We know that OONI Probe tests a sample of the URLs included in a
given country list. If I run in parallel network tests on both Desktop
and Mobile (mobile connected to wifi), will the apps sample the test
list in the same way? Is there a way to make the probe go through the
entire test list instead of testing a random sample of URLs?

## Userbase

In March 2021, 7,960,987 OONI Probe measurements were collected from
5,408 networks in 204 countries around the world.

This information can also be found through our measurement stats on OONI
Explorer (see chart on “monthly coverage worldwide”):

~ OONI team.

Maria Xynou
Research & Partnerships Director
Open Observatory of Network Interference (OONI)
PGP Key Fingerprint: 2DC8 AFB6 CA11 B552 1081 FBDE 2131 B3BE 70CA 417E

More information about the tor-project mailing list