Hello,

OONI's September 2022 status report is shared below.

# OONI Monthly Report: September 2022

Throughout September 2022, the OONI team worked on the following sprints:

* Sprint 73 (1st-11th September 2022)
* Sprint 74 (12th-25th September 2022)
* Sprint 75 (26th-30th September 2022)

Our work can be tracked through the various OONI GitHub repositories: https://github.com/ooni

Highlights are shared in this report below.

## Published report on new censorship events in Iran

On 25th September 2022, we published a new research report documenting the latest censorship events in Iran amid the ongoing protests.

Read the report here: https://ooni.org/post/2022-iran-blocks-social-media-mahsa-amini-protests/

In this report, we share OONI network measurement findings from Iran on the blocking of WhatsApp, Instagram, Linkedin, Skype, Google Play Store, Apple App Store, and encrypted DNS (DNS over HTTPS). We also share IODA and Cloudflare Radar data on mobile network outages.

On 27th September 2022, we published an updated version of the report (“Network outages” section) including contributions from our partner, IODA: https://ooni.org/post/2022-iran-blocks-social-media-mahsa-amini-protests/#network-outages

This report received press coverage from a data journalism piece by Tagesspiegel (which also makes use of raw OONI data): https://interaktiv.tagesspiegel.de/lab/internet-sperren-im-iran-blackouts-gegen-die-freiheit/

## Published report on TikTok block in Azerbaijan and Armenia

On 16th September 2022, in collaboration with Azerbaijan Internet Watch, we published a new research report which shares OONI data on the blocking of TikTok in Armenia and Azerbaijan during the border clashes.

Read our report here: https://ooni.org/post/2022-azerbaijan-and-armenia-blocks-tiktok/

Overall, OONI data shows that Azerbaijan blocked TikTok by means of TLS level interference, while Armenia implemented both DNS level blocks and TLS level interference.

## Report for Azerbaijan Internet Watch

In support of our partner, Azerbaijan Internet Watch (https://ooni.org/partners/azerbaijan-internet-watch/), we analyzed OONI measurements collected from Azerbaijan between May 2022 to September 2022. Based on this analysis, we produced a report with the key findings, which Azerbaijan Internet Watch published on their website: https://www.az-netwatch.org/wp-content/uploads/2022/10/2022-09-OONI-Report-for-Azerbaijan-Internet-Watch.pdf

## OONI Probe Mobile

During September 2022, we made progress on implementing a functionality that enables OONI Probe Mobile users to view all logs (https://github.com/ooni/probe-android/pull/516, https://github.com/ooni/probe-ios/pull/499).  

This change stems from user requests. While OONI Probe already implements some form of logging, the app is not able to collect logs generated during the engine bootstrap. Crucially, these logs are key to debug and understand cases in which OONI services are blocked. The new design, instead, allows us to observe the engine bootstrap logs. Additionally, we added support for sharing the logs with OONI developers in an easier way, using the operating systems’ share functionality.

We also made progress in implementing new Experimental settings under the Test Options settings of the OONI Probe apps (https://github.com/ooni/probe-android/pull/543, https://github.com/ooni/probe-ios/pull/501). This will enable OONI Probe users to enable or disable experimental tests (https://github.com/ooni/probe/issues/2266). As these settings would apply to both manual and automated runs, we added relevant copy for clarification (https://github.com/ooni/probe/issues/2268). This work addresses community feedback that the OONI Probe Experimental card includes long-running tests which users may want to have disabled as part of automated testing. We are currently performing QA of these new mobile functionalities and we are confident we will be able to include them in the next OONI Probe mobile releases.

As part of our work on using Flutter for a shared codebase between the OONI Probe mobile and desktop apps, we wrote an internal guide to document the migration steps for all OONI Probe apps from Native Platforms to Flutter Application using OONI Test Descriptors.
Through this document, we aim to capture all components of the system that need to be changed in the process in order to attain complete migration of Android, iOS and Desktop applications to the respective Flutter versions.

## OONI Run

We added support to miniooni for running an OONI Run v2 descriptor saved on the local disk, as opposed to fetching it from a remote URL: https://github.com/ooni/probe-cli/pull/966

## OONI Probe Desktop

We released OONI Probe Desktop 3.8.0: https://github.com/ooni/probe-desktop/releases/tag/v3.8.0

This release uses the latest version of OONI Probe CLI and improvements to the Experimental card.

## OONI Probe localization

Thanks to the Localization Lab community, new OONI Probe strings were translated into the following languages: Farsi, Russian, Chinese, Turkish, Spanish, French, and Greek (https://explore.transifex.com/otf/ooniprobe/).  

## Updated localization guidelines

We worked towards updating the OONI Probe localization guidelines, and writing new localization guidelines for OONI Explorer. This work is documented through the following pull request: https://github.com/ooni/translations/pull/26

The new localization guidelines are available through the following links:
* OONI Probe localization guidelines: https://github.com/ooni/translations/blob/master/Guidelines%20for%20OONI%20Probe.md
* OONI Explorer localization guidelines: https://github.com/ooni/translations/blob/master/Guidelines%20for%20OONI%20Explorer.md

## Published updated versions of the OONI Probe user guides

In September 2022, we published updated versions (with extensive edits, and many new screenshots and steps) of the OONI Probe user guides:

* User Guide for OONI Probe Mobile: https://ooni.org/support/ooni-probe-mobile
* User Guide for OONI Probe Desktop: https://ooni.org/support/ooni-probe-desktop  

The specific updates can be viewed through this pull request: https://github.com/ooni/ooni.org/pull/1202

Now both the OONI Probe Mobile and Desktop user guides cover all the latest features up until version 3.7.0.

We subsequently further edited the OONI Probe Mobile (https://github.com/ooni/ooni.org/pull/1239) and Desktop (https://github.com/ooni/ooni.org/pull/1240) user guides to clarify settings related to automated testing.

## Localizing the OONI Probe user guides

To enable community members around the world to use OONI Probe, we coordinated with the Localization Lab (https://www.localizationlab.org/) on creating new Transifex projects for the translation of the OONI Probe user guides.

Community members can now localize the OONI Probe user guides via the following Transifex projects:
* OONI Probe Mobile User Guide: https://www.transifex.com/otf/ooni-probe-mobile-user-guide/
* OONI Probe Desktop User Guide: https://www.transifex.com/otf/ooni-probe-desktop-user-guide/

## Updated the OONI Data Policy

We made a minor update to OONI’s Data Policy (https://github.com/ooni/ooni.org/pull/1221), reiterating our use of Sentry in the "Third party services" section.

The updated version of OONI’s Data Policy is available here: https://ooni.org/about/data-policy

## Expanding censorship measurement methodologies

### uTLS-light


We wrote a prototype fork (“uTLS-light”) of Golang’s crypto/tls library that is able to parrot the ClientHello of Chrome browser. This prototype is specifically designed to make merging from upstream as simple and as straightforward as possible. The main drawback of this prototype is that, compared to similar efforts such as uTLS, it is not configurable, as users of uTLS-light always use the Chrome browser’s configuration (which is what we need as OONI to perform measurements). Our work on developing uTLS-light is available here: https://github.com/hellais/utls-light

### Improving Web Connectivity experiment

We continued testing Web Connectivity v0.5 with support from users in our community. Based on testing and community feedback, we made a series of improvements:

* https://github.com/ooni/probe-cli/pull/933
* https://github.com/ooni/probe-cli/pull/935
* https://github.com/ooni/probe-cli/pull/943
* https://github.com/ooni/probe-cli/pull/948
* https://github.com/ooni/probe-cli/pull/951
* https://github.com/ooni/probe-cli/pull/952
* https://github.com/ooni/probe-cli/pull/953
* https://github.com/ooni/probe-cli/pull/957
* https://github.com/ooni/probe-cli/pull/958
* https://github.com/ooni/probe-cli/pull/959
* https://github.com/ooni/probe-cli/pull/960
* https://github.com/ooni/probe-cli/pull/961
* https://github.com/ooni/probe-cli/pull/965

The main focus of these changes was to improve the data quality and correctly flag edge cases to minimize false positives and detect cases where websites are down.

In the meanwhile, we spent time testing the test helper improvements to support Web Connectivity v0.5. We performed A/B testing for a few days and then decided to switch all users to the new test helper version.

We also improved our measurement scrubbing procedure, by extending the scrubbing to all the fields of a measurement, as opposed to limiting it to the test keys (https://github.com/ooni/probe-cli/pull/956). All this work culminated in the release of OONI Probe CLI v3.16.3: https://github.com/ooni/probe-cli/releases/tag/v3.16.3

### Experiments developed by Google Summer of Code (GSoC) student

We merged the TLS middlebox experiment (https://github.com/ooni/probe-cli/pull/817) and port filtering experiment (https://github.com/ooni/probe-cli/pull/891) contributed by Mehul Gulati, as part of his Google Summer of Code (GSoC) with OONI. We wrapped up the GSoC with a comprehensive recap of the work that was done in the following ticket: https://github.com/ooni/probe/issues/2272

## OONI Explorer

In September 2022, we completed most development work for the new domain-centric pages of OONI Explorer (https://github.com/ooni/explorer/pull/762). We refactored the OONI Explorer Search tool to move measurement requests to the client side (https://github.com/ooni/explorer/pull/799). We continued to make progress towards building the user feedback reporting system, and enabling localization on OONI Explorer. We also replaced Babel with SWC (https://github.com/ooni/explorer/pull/804), fixed builds, and reviewed pull requests.

## OONI backend

In September 2022, we worked on the following main backend activities:
* Improvements to API rate limiting (https://github.com/ooni/api/pull/307);
* Added support for filtering by IP address in the aggregation API (https://github.com/ooni/api/pull/308);
* Added database query prioritization in the API (https://github.com/ooni/api/pull/304) and fastpath (https://github.com/ooni/pipeline/pull/397);
* Improved upon the backend prototype for the user feedback reporting system (https://github.com/ooni/api/pull/302);
* Added bot mitigations in the API using robots.txt;
* Added API metrics and dashboards;
* Investigated test failures;
* Implemented an initial scoring table for OpenVPN and obfs4 (https://github.com/ooni/pipeline/pull/399).

## Published user guide for Test Lists Editor

In September 2022, we published a user guide for our new Test Lists Editor (https://test-lists.ooni.org/).

Our user guide is available here: https://ooni.org/support/test-lists-editor

This user guide provides step-by-step instructions (with screenshots) on how to use our new Test Lists Editor for contributing to the lists of websites tested by OONI Probe users around the world.

## Published test list guide for GitHub users

Previously, we used to include instructions for updating the Citizen Lab test lists (https://github.com/citizenlab/test-lists/tree/master/lists) via GitHub in our general test lists documentation.

In September 2022, we created a separate guide for GitHub users with updated instructions.

Our user guide for updating test lists via GitHub is available here: https://ooni.org/support/github-test-lists

## Published updated test list documentation

We updated our general test list documentation: https://ooni.org/get-involved/contribute-test-lists

This documentation explains what test lists are, why and how to contribute to test lists (while linking to more detailed guides), and how to approach test list research.

## Test list updates

In September 2022, we contributed updates to the following test lists:

* Global (https://github.com/citizenlab/test-lists/pull/1107, https://github.com/citizenlab/test-lists/pull/1128; https://github.com/citizenlab/test-lists/pull/1114);  
* Azerbaijan (https://github.com/citizenlab/test-lists/pull/1111).

We reviewed test list updates provided by Netalitica researchers and, on their behalf, opened pull requests for the following test lists:

* Hong Kong (https://github.com/citizenlab/test-lists/pull/1115);
* Poland (https://github.com/citizenlab/test-lists/pull/1116).

We opened a pull request with updates to the test list for Kyrgyzstan, provided by the School of Peacemaking (https://github.com/citizenlab/test-lists/pull/1124).

We also reviewed and merged multiple pull requests (https://github.com/citizenlab/test-lists/pulls?q=is%3Apr+is%3Aclosed) submitted by community members (via both GitHub and our new Test Lists Editor).

## Creating a new OONI Outreach Kit

To better meet community needs (particularly around OONI community engagement), we worked towards creating multiple new materials and resources that will eventually get published as part of a new OONI Outreach Kit. These resources include OONI-related brochures, fact sheets, workshop slides, and screencasts.

## Launch of Advocacy Assembly OONI training course

On 30th September 2022, Small Media’s Advocacy Assembly launched an online OONI training course (https://advocacyassembly.org/en/courses/63/#/chapter/1/lesson/1). We had previously collaborated with Advocacy Assembly on creating the content of the OONI training course, while they provided amazing support for everything related to editing, designing, and translating the course.

Prior to the launch, Advocacy Assembly published a blog post which includes an interview with the OONI team about the course: https://advocacyassembly.org/en/news/228/  

## Improving OONI’s Code of Conduct

Based on feedback from community meetings and discussions, we re-wrote OONI’s Code of Conduct (in collaboration with OONI’s new Incident Response Committee).

The updated version of OONI’s Code of Conduct is available here: https://deploy-preview-1245--ooni.netlify.app/get-involved/code-of-conduct/

We shared the updated version with community members during the September 2022 OONI Community Meeting, with the goal of soliciting further community review and feedback. Based on the latest community feedback, we plan to make further improvements to the Code of Conduct before it is published.  

## Ford Foundation Retreat

Between 19th-22nd September 2022, OONI’s Maria attended the Ford Foundation Retreat in Atlanta, USA. As part of her participation at the retreat, Maria facilitated a session with the goal of collecting feedback on how internet measurement projects can better meet advocacy needs.

## Community activities

### OONI hackathon at DEMHACK 2022


On 24th and 25th September 2022, OONI’s Elizaveta organized an OONI hackathon as part of Roskomsvoboda’s DEMHACK 2022 hackathon (https://demhack.ru/) in Russia.

Hackathon participants were invited to work on the following OONI hackathon challenges (https://demhack.ru/tasks):
* Updating the lists of websites (“test lists”) measured for censorship;
* Developing a tool for the automatic clean-up of test lists (e.g. removing expired domains);
* Analyzing OONI data to investigate internet censorship.

As part of the hackathon, OONI’s Maria provided a live demo on using OONI’s Measurement Aggregation Toolkit (https://explorer.ooni.org/chart/mat), encouraging participants to use the tool as a starting point for further analyzing OONI data.  

### OONI workshops at FIFAfrica 2022

Between 26th-29th September 2022, OONI’s Arturo traveled to Lusaka, Zambia, to participate in the Forum on Internet Freedom in Africa (FIFAfrica) 2022 conference organized by CIPESA – one of Africa’s largest digital rights events (https://cipesa.org/fifafrica/).

As part of his participation (https://cipesa.org/fifafrica/agenda/), Arturo:
* Facilitated an OONI workshop (“Investigating Internet censorship in Africa through OONI tools and open data”);
* Co-facilitated a workshop with Access Now (“Strengthening Advocacy to Fight Internet Shutdowns in Africa”).

### OONI Community Meeting

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

1) Improving OONI’s Code of Conduct: Request for community feedback (based on the updated version)

2) Reconsidering test list policies around expired or parked domains

## Userbase

In September 2022, 60,831,677 OONI Probe measurements were collected from 2,765 AS networks in 170 countries around the world.

This information can also be found through our measurement stats on OONI Explorer (see chart on “monthly coverage worldwide”): https://explorer.ooni.org/

~ OONI team.