Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DRAFT: Placeholder text for internet censorship prep documentation #458

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

sagesharp
Copy link
Collaborator

@sagesharp sagesharp commented Jan 25, 2021

One of the Outreachy interns lives in a country where the government
censored the internet. The government blocked social media, the Tor
website, GitHub, and GitLab. This made it impossible for the intern to
work on their project.

Add placeholder sections to the internship guide that talk about how to
debug, document, and circumvent internet censorship. Discussion of what to put in
those sections is still TBD.

Please comment below with any resources you know of about how to
detect and circumvent internet censorship. Topics can include:

  • What websites and apps should people expect governments to censor?
  • What tools can people use to debug the censorship?
  • What tools or documents should people download before censorship happens?

One of the Outreachy interns lives in a country where the government
censored the internet. The government blocked social media, the Tor
website, GitHub, and GitLab. This made it impossible for the intern to
work on their project.

Add placeholder sections to the internship guide that talk about how to
debug and circumvent internet censorship. Discussion of what to put in
those sections is still TBD.
@kay-wong
Copy link

I’m from Malaysia which has been subject to politically motivated internet censorship as well. In my last internship, I helped with writing some internet censorship reports for South East Asia in collaboration with the OONI (Open Observatory for Network Interference) project. Some of my thoughts:

What websites and apps should people expect governments to censor?

The censorship of politically sensitive content is common in South East Asian countries such as Malaysia, Indonesia, Thailand, and Myanmar. Additionally, for religious countries like Malaysia and Indonesia, there have been many instances of sites being blocked with the agenda of reinforcing social/cultural norms eg. sites related to religious criticism, sexual content, or LGBT issues.

What tools or documents should people download before censorship happens?

While it's important to discuss tools that can help users to circumvent and work around censorship, I think it might also be helpful to mention tools that can help record evidence of censorship, such as the OONI project. It’s one of the largest public archives on network interference with measurements across the globe and provides open source network measurement tools to detect internet censorship. This is supported by a large community of volunteers who download and run the OONI network probes, which helps measure and collect data that can serve as evidence for internet censorship.

This may also be relevant to the second point of tools to debug censorship-- I highly recommend checking out the OONI explorer, their open database on internet censorship measurements. Their search tool is extremely useful for getting up to date information about the censorship status of specific websites, and depending on the amount of data collected for that specific country, you can view this across different ISP networks.

A way to get involved is to download and run the probes (there’s a mobile app which makes it convenient!). You can also contribute URLs of websites which you believe may be (or at risk of being) censored to their test list of URLs for your own country.

This is a really important discussion to have, thanks for creating this resource for future Outreachy interns. I'm looking forward to hearing more thoughts that others may have on this topic.

@championquizzer
Copy link

Censorship can take place at many different levels - your ISP could be the bad actor, certain websites might be blocking your access, there can be geographical restrictions imposed on the internet traffic and then there is the very government actively blocking the internet access (like in the case above). Tor can mitigate censorship in most of these use cases. Very briefly, Tor is a network of virtual tunnels that allows you to improve your privacy and security on the Internet. Tor works by sending your traffic through three random servers (also known as relays) in the Tor network. The last relay in the circuit (the “exit relay”) then sends the traffic out onto the public Internet. The first step is to download Tor Browser as it is the recommended way of connecting to the Tor Network.
Tor Browser can be downloaded from :

  1. Tor Project's Website [1][2] (very likely this domain will be blocked during an event of censorship)
  2. Tor Project's mirror website [3]
  3. GetTor- email [email protected] with your operating system and preferred locale e.g to get the binaries for Tor Browser in Chinese for GNU/Linux the message should have the words "linux zh" in it.

The relays that I mentioned about earlier and which are fundamentally powering the Tor Network are public, so many a times the censoring authority can profile them and categorically block access to the Tor Network. This is where Bridges [4] come into play. One can configure Tor Browser to connect with a 'bridge' - bridges can be understood as relays but these are not publicly available and hence difficult to censor. Tor Browser ships with some default bridges and one can connect to them following the steps detailed in the Tor Manual [5]. If even these bridges are blocked, one can directly request bridges from the Tor Project [6]. This step is a bit more involved as you would have to manually paste the bridge address into your Tor Browser's config [7]. Overall, this should work in most cases!

One thing to note is that this only works as long as you're surfing the internet from within the Tor Browser. So this wouldn't work when you're using, say, git or ssh or anything else on the command line or using a different browser or any other application on your computer and so on. To 'torify' all the connections made by the operating system, one can use a dedicated operating system called Tails [8] - which is a GNU/Linux distribution based on Debian. Tails can be installed on a thumb drive and one can easily boot into Tails from that drive without messing with the currently installed operating system [9].
Another point to note is that Tor Browser is not officially available for iOS. Onion Browser [10] is recommended for iOS users. iOS also doesn't allow sideloading apps on the phone, so during an event of censorship, the GetTor method wouldn't work. ChromeOS users can simply use Tor Browser for Android (although you will view the mobile version of the websites).

Links:
[1]: https://www.torproject.org/download/
[2]: https://www.torproject.org/download/languages/
[3]: https://tor.ccc.de/download/
[4]: https://tb-manual.torproject.org/bridges/
[5]: https://tb-manual.torproject.org/running-tor-browser/#configure
[6]: https://bridges.torproject.org/
[7]: https://tb-manual.torproject.org/bridges/#getting-bridge-addresses
[8]: https://tails.boum.org/index.en.html
[9]: https://tails.boum.org/about/index.en.html
[10]: https://apps.apple.com/us/app/onion-browser/id519296448

@sagesharp
Copy link
Collaborator Author

Also tagging in @deborahtrez to share their experience and tools they found.

@gusgustavo
Copy link

@sagesharp I believe beyond technical recommendation, it's important to inform people about risks of circumventing censorship. We could extract some parts of Tor's training risks evaluation and/or link to the document: https://community.torproject.org/training/risks/

Just to make clear: I don't believe would be believe people would be arrested for that, but a word of caution must be mentioned here.

@deborahtrez
Copy link

What websites and apps should people expect governments to censor?

In Uganda, the objective of the government is cut off communication with "foreign forces". So social media applications like Facebook, Whatsapp, Twitter, Telegram, etc have all been blocked, and are only accessible using VPN or the Tor Browser at the moment.
App stores like Google Play, APK Pure, the Apple store, the (Samsung) Galaxy store, etc have been blocked too and are only accessible using VPNs.
YouTube, was blocked too because in some ways, it aids communication between people on the internet through the live chats. The government does not want people posting videos on the platform that could make the President look bad.
GitHub and GitLab are inaccessible as well because they believe that there is a possibility that people could try to install apps and get updates from these sites.
Much as VPN applications work at the moment, its only a matter of time before these get blocked too. I was using Orbot on my Android phone for a while until clicking "Start" on the Onion stopped being enough. The government blocked the Tor domain but Orbot still works if i use bridges (which i always do).

What tools can people use to debug the censorship?

I will start with the most obvious tool which is the VPN. This is the easiest way to bypass any internet censorship, though for countries like Uganda, and China where the governments are actively blocking them, it might be a bit tricky. Using VPNs in these countries is considered a crime and punishable by law.

As far as free communication goes, there a couple of ways to keep communicating even if the internet gets shut down or all communication apps get blocked. One of my mentors at Mixxx recommended this article. https://changelog.complete.org/archives/10205-roundup-of-secure-messengers-with-off-the-grid-capabilities-distributed-mesh-messengers
It is a roundup of secure messengers with Off-The-Grid Capabilities (Distributed/Mesh Messengers). Most of them use radios such as LoRa that can reach several miles with low power while some of them use short-range Bluetooth and Wifi. A lot of them are Android-only and use End to End encryption.

If the censorship covers sites like GitHub and GitLab, then there could be a workaround this with tools like Zeal or dasht, though I am yet to try these tools myself. Zeal is an offline documentation browser while dasht is a collection of shell scripts for searching, browsing, and managing API documentation all from the comfort of your own terminal! For interns like myself, who are contributing to Open-source documentation projects, these tools might be helpful.

What tools or documents should people download before censorship happens?

  1. A VPN or VPNs. More than one to be safe. I recommend Orbot, ProtonVPN, Psiphon pro. Here is a list of the best VPNs published by cnet that one can get (as of 2021)
  2. the Tor Browser
  3. As @championquizzer had suggested, I would recommend keeping a USB drive with Tails on it to be prepared if Github and Gitlab become completely inaccessible.

@deborahtrez
Copy link

I have just come across a great resource tweeted by The Anonymous on How to Remain Online During Internet Disruptions.
https://paradigmhq.org/download/how-to-remain-online-malawi/ This was specific to Malawi, but all the tools suggested can be used by anyone.
They provide a pdf in that link that is downloadable and can be viewed offline. People can download these tools and have them ready offline, in preparation of any likely internet shutdowns.

@sagesharp sagesharp marked this pull request as draft February 1, 2021 16:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants