[tor-project] OONI Monthly Report: February 2021
maria at openobservatory.org
Thu Apr 8 11:24:38 UTC 2021
Apologies for sharing this late.
Throughout February 2021, the OONI team worked on the following sprints:
* Sprint 32 - Tursiop truncatus (1 - 14 February 2021)
* Sprint 33 - Actinia Equina (15 - 28 February 2021)
Our work can be tracked through the various OONI GitHub repositories:
Highlights are shared in this report below.
## New OONI Probe Command Line Interface (CLI) for Linux and macOS
We released a new OONI Probe Command Line Interface (CLI) for Linux and
OONI Probe can be installed on the command line on:
* Debian/Ubuntu: https://ooni.org/install/cli/ubuntu-debian
* macOS: https://ooni.org/install/cli/macos
Upon installation, OONI Probe will run all tests *automatically* every
day, enabling the regular contribution of measurements (without user
Given that all OONI Probe measurements are openly published in near
real-time (https://ooni.org/data/), this will enable the internet
freedom community to better investigate internet censorship.
As we are in the process of discontinuing the python legacy ooniprobe
version (https://github.com/ooni/probe-legacy), we encourage legacy
ooniprobe users to switch over to the new OONI Probe CLI:
Similarly to the legacy version, the new OONI Probe CLI runs all tests
automatically in the background every day and it will also receive
important future updates (such as new tests,
code improvements, etc.).
## OONI Probe Mobile
In February 2021, we released OONI Probe mobile 2.9.2 and 2.9.3 on:
* Android: https://github.com/ooni/probe-android/releases/tag/v2.9.2 &
* iOS: https://github.com/ooni/probe-ios/releases/tag/v2.9.2 &
With these releases, we added crash reporting tools (but removed Countly
for crash reports on F-Droid), fixed bugs, and made improvements to the
app. We also added dark mode support to OONI Probe on iOS
(https://github.com/ooni/probe/issues/925), and we added wrappers for
test list URLs (https://github.com/ooni/probe/issues/1331).
We also created a proof of concept for a Go API that runs Web
Connectivity measurements (and other tests) on mobile devices. This work
is documented through the following ticket:
## OONI Probe Desktop
In February 2021, we released OONI Probe Desktop 3.2.2
(https://github.com/ooni/probe-desktop/releases/tag/v3.2.2) and 3.2.3
With these new releases, we:
* Implemented a new Dashboard screen (with detailed screens for each
test group): https://github.com/ooni/probe/issues/1274
* Added support for running all OONI Probe tests with the click of a
* Added the “Choose websites” button inside the Websites card, enabling
users to test websites of their choice
* Added support for the new OONI Probe RiseupVPN test
* Added a setting for limiting the test duration of the Web Connectivity
test (default run time set to 90 seconds)
* Removed the setting for specifying the number of websites tested in
* Removed the setting which enabled users to share their IP address
With these latest releases, we made significant progress towards
achieving feature parity between the OONI Probe mobile and desktop apps,
as the OONI Probe desktop app now has the same design/layout and many of
the same features as the OONI Probe mobile app.
We also added support for automated OONI Probe testing on Windows and
macOS: https://github.com/ooni/probe-desktop/pull/198. As part of this,
we added the ability support for scheduling ooniprobe as a task on
## OONI Probe for Raspberry Pi
We worked on adding support for creating armv7 and arm64 builds of OONI
Probe CLI in our continuous integration (CI) platform. Through these
builds, we will be able to create Debian packages that can run on
Raspberry Pi computers.
Progress on this front is documented through the following pull requests:
## OONI Probe Engine
We merged the probe-engine and probe-cli codebases to make the build
process smoother and make maintenance easier in the long run. This work
is documented through the following ticket:
We also improved the data quality of measurements by addressing a bug,
as documented in this ticket:
https://github.com/ooni/probe-engine/issues/1191. We also made progress
on adding circumvention support to the OONI Probe apps.
## Expanding OONI Probe measurement methodologies
As part of our ongoing efforts to expand OONI Probe measurement
* Worked on implementing a new OONI Probe test for the Signal Private
Messenger app: https://github.com/ooni/probe-engine/issues/278
* Updated the Telegram endpoints (used in the OONI Probe Telegram test)
to new IPs: https://github.com/ooni/probe-cli/pull/232
* Investigated WireGuard blocking in the UAE and discussed the
implementation of a relevant test
* Carried out research on measuring QUIC blocking in Iran and Uganda
* Carried out research on alternative TLS stacks
## OONI Explorer
We created a UI for presenting blocked websites in the country pages of
OONI Explorer: https://github.com/ooni/explorer/issues/289
We aim to display the aggregates for tested websites within the selected
time period and we will expose functionality that will enable users to
filter websites based on “confirmed blocked” or “anomalous” measurement
values. When the user clicks on a row, we may display a chart of
measurements for that website over time. We also aim to add links to the
website-centric charts that will display metrics about that particular
URL around the world.
We made SEO improvements to OONI Explorer. We improved the meta tags in
the measurement and country pages to expose more useful information. The
title tags of the pages were also updated to contain more relevant
information about the page in question.
## OONI backend
Throughout February 2021, we worked on the following backend activities:
* Implemented the processing of minicans from S3 in the OONI fastpath
* Added YAML support in the OONI fastpath pipeline
* Worked on reprocessing old data in the OONI fastpath pipeline
* Looked into alternatives for bintray
* Looked into duckdb for the counters aggregation
* Looked into deploying new, dynamic “test helpers” on cloud services
* Looked into tracking and scoring measurements using stateful data
around DNS, SSL certificates and integration with our event detector
* Carried out an initial experiment with correlating domains and server
IP addresses in Web Connectivity measurements
* Added nspawn and Docker-based runners in the API
* Refactored the probe-services codebase to increase its reliability:
## Created mockups for URL submission web platform
To enable community contributions to the Citizen Lab test lists
(https://github.com/citizenlab/test-lists), we are creating a web
platform that will enable community members to add, edit, and remove
URLs (included in the Citizen Lab test lists), without using GitHub.
In February 2021, we created some initial mockups, outlining what the
web platform would look like and how community members would contribute
to the Citizen Lab test lists. These mockups are available here:
We subsequently shared the mockups with community members (particularly
Netalitica) in order to collect their feedback in the early stages of
design and development. We also opened a ticket, where community members
can share their feedback: https://github.com/ooni/ooni.org/issues/810
## Updated OONI Data Policy
We edited the OONI Data Policy to reflect changes with respect to our
use of analytics (primarily used for crash reports). On 12th February
2021, we published the updated version of the OONI Data Policy:
## Data analysis for Azerbaijan Internet Watch
In support of our partner, Azerbaijan Internet Watch, we analyzed OONI
measurements collected from Azerbaijan between December 2020 to February
We documented the findings of our analysis in a report (including
relevant charts), which Azerbaijan Internet Watch published here:
Azerbaijan Internet Watch also published a blog post, summarizing the
key findings from this report:
## OONI training
Between 9th-11th February 2021, we organized and facilitated a 3-day
OONI training for our partners: the Software Freedom Law Centre of India
The goal of this training was to familiarize SFLC.in staff with OONI’s
censorship measurement tools, dataset, and terminologies to enable
their use as part of research and advocacy in India. We also facilitated
this training with the goal of collecting feedback from SFLC.in on how
to improve our methods to better serve community needs.
In preparation for the training, we collected feedback from SFLC.in on
how to structure the training to best meet their needs, we prepared a
relevant agenda, created slides for each training session, and we
created a document which lists relevant resources for further reading.
The training consisted of the following 6 sessions:
1. Introduction to Network Measurement & Internet Censorship
2. Using the OONI Probe Mobile App
3. Using OONI Probe on GNU/Linux
4. Using OONI Run to coordinate censorship testing in your community
5. Using OONI Explorer
6. Interpreting and understanding OONI data
We demoed all OONI tools, and walked participants through each setting
with the goal of enabling them to become power users. This included
hands-on exercises, as well as practice on coordinating censorship
measurement (based on real-world scenarios). The sessions also included
theoretical components with the aim of introducing participants to
technical terms and concepts used by OONI and required for interpreting
and understanding OONI data.
At the end of the training, we shared a short survey with SFLC.in to
collect their feedback and learn how we can improve future training.
## Ford Foundation Financial Innovation & Resilience Training
Between 16th-18th February 2021, we participated in the Ford
Foundation’s 3-day intensive Financial Innovation & Resilience training
We were offered this great opportunity because we are a grantee of the
Ford Foundation, who support OONI’s community-related work. The
knowledge and skills gained through this training program have helped us
rethink and improve OONI’s fundraising strategies.
## Community activities
### NDSS DNS Privacy Workshop 2021
On 21st February 2021, OONI’s Simone presented our academic paper,
“Measuring DoT/DoH Blocking Using OONI Probe: a Preliminary Study”, at
the 2021 DNS Privacy Workshop of the NDSS Symposium. Information about
the event is available here:
We designed DNSCheck, an active network experiment to detect the
blocking of DoT/DoH services. We implemented DNSCheck into OONI Probe,
which we ran in Kazakhstan (AS48716), Iran (AS197207), and China
(AS45090) with the help of volunteer OONI Probe users. Our paper
presents preliminary results from measurements, having tested 123
DoT/DoH services, corresponding to 461 TCP/QUIC endpoints.
We found endpoints to fail or succeed consistently. On AS197207 (Iran),
50% of the DoT endpoints seem blocked. Otherwise, we found that more
than 80% of the tested endpoints were always reachable. The most
frequently blocked services are Cloudflare’s and Google’s. In most
cases, attempting to reach blocked endpoints failed with a timeout. We
observed timeouts connecting, during, and after the TLS handshake. TLS
blocking depends on either the SNI or the destination endpoint.
Our paper has been published by the NDSS Symposium here:
Information about Simone’s presentation (including the slides he used)
is available here:
We are working towards shipping DNSCheck as part of the OONI Probe apps.
### OutRight Action International webinar
On 24th February 2021, OONI’s Maria participated in OutRight Action
International’s webinar titled “Censored: How LGBTIQ People And
Activists Are Threatened By - And Surviving In - Restrictive And
Repressive Digital Environments”.
As part of her participation in this webinar, Maria presented OONI’s
work and discussed how OONI has been collaborating with OutRight Action
International (https://outrightinternational.org/) and the Citizen Lab
(https://citizenlab.ca/) on investigating the blocking of LGBTIQ
websites around the world. This webinar included a presentation of our
research findings, and we plan to co-publish a research report soon.
### OONI Community Meeting
On 23rd February 2021, we hosted the monthly OONI Community Meeting on
our Slack channel (https://slack.ooni.org/), during which we discussed
the following topics:
1. New OONI Probe Command Line Interface (CLI).
2. Can it happen that OONI Probe will test URLs that are not on the
Citizen Lab test list for a given country during a standard test in that
country? In a single run, does the probe test all URLs from a given list
or a sample of them? What variables determine the size of the sample? Is
it possible to use the probe remotely and collect data similar in
quality to that when using the probe locally?
3. Adding circumvention support to OONI Probe.
4. Developing a new OONI Probe Signal experiment.
5. OONI paper on measuring DoT/DoH blocking at the 2021 DNS Privacy
Workshop of the NDSS Symposium
(https://www.ndss-symposium.org/ndss-paper/auto-draft-123/) and making
this test (DNSCheck) available on OONI Probe.
In February 2021, 7,386,719 OONI Probe measurements were collected from
5,606 networks in 201 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.
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