{{Header}} {{#seo: |description=Tivoization, malicious features, antifeature, tyrant software, treacherous computing, digital restrictions management (DRM), Software as a Service (SaaS), Service as a Software Substitute (SaaSS), non-root enforcement |image=Threats123123.jpg }} {{title|title= General Threats to User Freedom }} [[File:Threats123123.jpg|thumb]] {{intro| Tivoization, malicious features, antifeature, tyrant software, treacherous computing, digital restrictions management (DRM), Software as a Service (SaaS), Service as a Software Substitute (SaaSS), Administrative Rights Refusal (non-root enforcement). }} = User Freedom Threats = Since the inception of the four original essential software freedoms provided by [https://forums.whonix.org/t/lets-call-it-freedom-software-rather-than-free-software-or-open-source/6961 Freedom Software], other issues have emerged such as:
Tivoization is the creation of a system that incorporates software under the terms of a copyleft software license (like the GPL), but uses hardware restrictions or digital rights management to prevent users from running modified versions of the software on that hardware. Richard Stallman coined the term in reference to TiVo's use of GNU GPL licensed software on the TiVo brand digital video recorders (DVR), which actively blocks users from running modified software on its hardware by design.* Malicious features: examples include [[Host_Operating_System_Selection#macOS_Hosts|macOS]] and [[Windows_Hosts|Windows]] * [https://directory.fsf.org/wiki/Free_Software_Directory:Antifeatures antifeatures];
Antifeatures are flags applied to applications to warn of issues that may be undesirable from the user's perspective. Frequently it is behavior that benefits the developer, but that the end user of the software would prefer not to be there.https://f-droid.org/en/docs/Anti-Features/ * [https://www.gnu.org/proprietary/proprietary-tyrants.html Tyrant software] * [https://www.gnu.org/philosophy/can-you-trust.en.html Treacherous computing]: ** {{VideoLink |videoid=s7WDbnHlc1E |text="Trusted Computing": Where the vendor distrusts and restricts the user. }} ** [[#Device_Attestation_such_as_SafetyNet|Device Attestation]]: The operating system rats out the user and helps applications learn about modifications which are undesired by the operating system vendor such as Google Android. As a result, applications refuse to function. ** [https://en.wikipedia.org/wiki/Digital_rights_management Digital Rights Management (DRM)]:
Digital rights management (DRM) tools or technological protection measures (TPM) are a set of access control technologies for restricting the use of proprietary hardware and copyrighted works. DRM technologies try to control the use, modification, and distribution of copyrighted works (such as software and multimedia), as well as systems within devices that enforce these policies.** [https://www.fsf.org/campaigns/drm.html FSF DRM campaign], ([https://www.defectivebydesign.org/ Digital Restrictions Management]) * Compilation toolchain issues: [[Dev/VirtualBox#VirtualBox_Unavailable_in_Debian_stable_and_backports_due_to_Debian_Stable_Security_Maintenance_Issues|example]] * SaaS: (Software as a Service) / SaaSS (Service as a Software Substitute) ** [https://www.gnu.org/philosophy/network-services-arent-free-or-nonfree.en.html Network Services Aren't Free(dom) or Nonfree(dom); They Raise Other Issues] ** [https://www.gnu.org/philosophy/who-does-that-server-really-serve.en.html Who does that server really serve?] * Non-freedom servers / APIs: Freedom Software clients requiring the use of non-freedom servers / APIs. ("
NonFreeNet
")
[https://gitlab.com/fdroid/fdroiddata/-/issues/553 The term "nonfree network service" is not coherent]
* Enforced centralization: centralization being encouraged instead of federation and decentralization. For example [[Signal|Signal Private Messenger]] having privacy issues [[Signal#Broken_Metadata_Protection|Signal broken metadata protection]].
* [https://www.gnu.org/proprietary/proprietary-tethers.en.html Proprietary Tethers]: Some programs are designed to work only by communicating with a specific server and are not useful without that server. Similar to above.
* ("RegistrationRequired
"):
* ("PaidSubscriptionRequired
"):
* nonfree network service: Currently not well defined.
* Mobile number requirement insistence upon the provision of a mobile number for sign-up. ([https://www.whonix.org/wiki/Phone_Number_Validation Phone Number Validation vs User Privacy]) Signal requires this. [[Session|Session Private Messenger]] demonstrates that this is technically not required but [[Session#Session_Private_Messenger_Security|has other issues]].
Commissioner Margrethe Vestager, in charge of competition policy, said: "Today, mobile internet makes up more than half of global internet traffic. It has changed the lives of millions of Europeans. Our case is about three types of restrictions that Google has imposed on Android device manufacturers and network operators to ensure that traffic on Android devices goes to the Google search engine. In this way, Google has used Android as a vehicle to cement the dominance of its search engine. These practices have denied rivals the chance to innovate and compete on the merits. They have denied European consumers the benefits of effective competition in the important mobile sphere. This is illegal under EU antitrust rules."**
In particular, Google: [...] has prevented manufacturers wishing to pre-install Google apps from selling even a single smart mobile device running on alternative versions of Android that were not approved by Google (so-called "Android forks").**
In order to be able to pre-install on their devices Google's proprietary apps, including the Play Store and Google Search, manufacturers had to commit not to develop or sell even a single device running on an Android fork.**
the Commission has found evidence that Google's conduct prevented a number of large manufacturers from developing and selling devices based on Amazon's Android fork called "Fire OS".* Reuters: [https://www.reuters.com/technology/eu-courts-wed-ruling-record-44-bln-google-fine-may-set-precedent-2022-09-14/ Google loses challenge against EU antitrust decision, other probes loom]: **
"The General Court largely confirms the Commission's decision that Google imposed unlawful restrictions on manufacturers of Android mobile devices and mobile network operators in order to consolidate the dominant position of its search engine," the court said.== Mono: Microsoft's .NET Implementation for Linux == Mono was released under dubious language concerning patent assertion, allowing Microsoft to arbitrarily enforce them if advantageous. If there had been high adoption of Mono, it would have given Microsoft enormous leverage over the language's ecosystem. Fortunately, the libre community did not take the bait and shunned the framework. Even though the patent situation changed recently, the well had been poisoned. https://en.wikipedia.org/wiki/Mono_%28software%29#Mono_and_Microsoft's_patents The SCO patent trolling used by Microsoft as an attempt to kill off Linux in the 2000s was not forgotten. == GCC vs Clang-LLVM == [https://llvm.org/ LLVM] The LLVM compiler infrastructure project is a collection of modular, reusable compiler and toolchain technologies. was initially heavily funded by Apple in retaliation for the [https://gcc.gnu.org/ GNU Compiler Collection (GCC)] re-licensing under [https://www.gnu.org/licenses/gpl-3.0.en.html GPLv3]. While the permissive licensing is technically libre, it allows companies to close up forks or mandate non-free plugins. This locks in users on hardware platforms which would usher in a new dark age for libre software development and porting, and also lead to significant security and trust issues. This unscrupulous conduct by industry players was not possible for the longest time because re-inventing another compiler with the same feature-set and architecture support as GCC was cost prohibitive. The widely cited consensus is that the competition has had a healthy outcome for GCC, leading to improved error codes, performance and features like plugin support - albeit carefully, to prevent closed plugins from piggy-backing on the compiler. However, another aspect is that compiler-specific quirks act as a "network effect" whereby if one component of a project only works with LLVM, the rest of the project follows with no interest from the developers to fix bugs or work on compatibility with GCC. For example, Libreoffice (on Windows) is switching to Clang because the the Skia renderer will only compile with it. https://www.phoronix.com/news/LibreOffice-Needs-Windows-Clang Over time, this could drain resources from the copyleft GCC as corporations and distributions conclude it is not cost effective to contribute to a compiler with shrinking market share. == Chromium == {{Anchor|chromium}} Chromium greatly amplifies Google's influence and ability to impose their custom standards and protocols, including on web standards; the impacts on freedom are unconsidered. https://robert.ocallahan.org/2014/08/choose-firefox-now-or-later-you-wont.html Google repeatedly snub and bypass the W3C standard body especially when improvements to user privacy are proposed. https://www.bloomberg.com/news/articles/2019-09-24/google-blocks-privacy-push-at-the-group-that-sets-web-standards The features they design also make performance notably worse in competing browsers. https://arstechnica.com/gadgets/2018/12/the-web-now-belongs-to-google-and-that-should-worry-us-all/ When released, the existing plan for new API limitations will prevent current and even possible future rewrites of adblockers. No attempt to address these concerns have been made by the Chromium developers. https://mspoweruser.com/google-may-make-adblocking-impossible-on-edge-and-chrome/ https://bugs.chromium.org/p/chromium/issues/detail?id=896897&desc=2#c23 Every Firefox installation provides Mozilla with a bit more leverage and diverts advertisement money from Google. The less people use Firefox, the less website creators will care to invest into developing websites for compatibility, thus killing it off indirectly. If Mozilla's revenue dies and they cease to exist, Tor Browser will also disappear - destroying a key component of the privacy ecosystem. The present Chromium engine is [https://gitlab.torproject.org/legacy/trac/-/wikis/doc/ImportantGoogleChromeBugs unsuitable for privacy projects] because it cannot provide equivalent Firefox protections, and there is no willingness to change the design to accommodate such initiatives. Web Environment Integrity (WEI): * https://en.wikipedia.org/wiki/Web_Environment_Integrity * https://arstechnica.com/gadgets/2023/07/googles-web-integrity-api-sounds-like-drm-for-the-web/ * https://arstechnica.com/gadgets/2023/07/googles-web-integrity-api-sounds-like-drm-for-the-web/2/ = War on General Purpose Computing = There is an ongoing struggle against the unrestricted use of general-purpose computing devices. Increasingly, electronic devices sold today are, in fact, general-purpose computers that come with built-in restrictions that limit user control. Vendors purposely withhold administrative capabilities, also known as "root rights," from users, which can cause problems: * It prevents users from fixing problems or adding new features. For example, if a stock Android device fails to start, it is impossible to analyze what is going on without administrative rights, let alone fix it. * It perpetuates privacy violations. * It forces users to buy more expensive models to get features they could have obtained had they been able to unleash the full potential of their already purchased devices. Examples of this struggle include: * TVs: ** [https://www.theguardian.com/technology/2015/feb/11/samsung-admits-smart-tvs-forcing-pop-up-ads-into-video-apps The Guardian: Samsung admits its smart TVs are forcing pop-up ads into video apps] (underline added): ***
The admission comes in a week that Samsung was forced to change its smart TV privacy policy, which indicated the TV could be recording conversations and sending them to third parties, provoking “Orwellian” complaints from critics.** Almost 100,000 upvotes on reddit post [https://www.reddit.com/r/assholedesign/comments/co5aw4/unremovable_ads_on_my_2500_samsung_smart_tv/ Unremovable ads on my $2,500 Samsung Smart TV]. ** Given that TVs are in most people's living rooms and even bedrooms and that the newer generation of Smart TVs come with built-in cameras, microphones and are internet-connected, it is crucial to ensure that the software running on them serves the user and not the producer. See also [https://www.washingtonpost.com/news/the-switch/wp/2017/03/07/why-the-cia-is-using-your-tvs-smartphones-and-cars-for-spying/ The Washington Post: WikiLeaks: The CIA is using popular TVs, smartphones and cars to spy on their owners] / [https://wikileaks.org/ciav7p1/ Vault 7: CIA Hacking Tools Revealed]. * The PlayStation is a fully functional computer that could run any program in theory, but in practice, which programs or games can be run on it is solely decided by Sony, its producer. * [https://arstechnica.com/tech-policy/2007/08/console-mod-chippers-busted-in-nationwide-raids/ Console mod-chippers were busted in nationwide raids in 2007.] * Restrictions in Mobile Devices: {{Anchor|mobile_devices_restrictions}}([[#mobile_devices_restrictions]]) ** Many mobile phones have bloatware, unwanted default installed applications, which cannot be easily uninstalled. This is an unreasonable restriction. Even if uninstallable in theory, there is the [[Windows_Hosts#The_Tyranny_of_the_Default|The Tyranny of the Default]] that makes it difficult to do so. A lot of users wish to uninstall a bloatware, but they may not have the technical expertise to do it because the process has been intentionally made more difficult than it should be. ** Most iPhone and Android phones restrict the user's freedom to choose which programs can run on these devices. *** Another unreasonable restriction is for example is Google's ban in Android Play Store of YouTube downloaders such as TubeMate. *** [https://www.businessinsider.com/google-just-took-a-much-clearer-stance-on-banning-ad-blocking-apps-but-ad-blocking-browsers-are-still-ok-2016-3 Google bans adblockers that block adds in other apps from its Play Store.] *** [https://en.wikipedia.org/wiki/YouTube_Vanced YouTube Vanced] was an alternative YouTube player.
On March 13, 2022, the developers of YouTube Vanced announced that the application would be shut down after they received a cease and desist letter from Google, which forced the developers to stop developing and distributing the app.* https://www.cnbctv18.com/entertainment/youtube-vanced-app-to-shut-down-after-googles-legal-threat-all-you-need-to-know-12845632.htm * https://www.androidpolice.com/google-finally-succeeds-in-killing-youtube-vanced/ * https://torrentfreak.com/youtube-vanced-app-forced-to-shut-down-for-legal-reasons-220314/ * https://www.tomsguide.com/news/rip-vanced-the-best-youtube-app-just-got-shut-down *** A YouTube downloader
youtube-dl
... [https://www.eff.org/deeplinks/2020/11/github-reinstates-youtube-dl-after-riaas-abuse-dmca Quote EFF]: Recording Industry Association of America (RIAA) abused the Digital Millennium Copyright Act’s notice-and-takedown procedure to pressure GitHub to remove it.It was later re-instated thanks to help by EFF. https://github.blog/2020-11-16-standing-up-for-developers-youtube-dl-is-back/ *** Installation of apps without using the platforms official app store is sometimes still possible. **** Google Android: The process of installing an app from sources other than Google Play is still possible for technically advanced users clicking through scary warnings. **** Apple's iOS: Is even more restricted and does not permit installation of apps without the official iOS App Store. **** Alternative app stores such as F-Droid are forbidden in Google Play Store as well as in Apple's iOS App Store. At least F-Droid can be installed by technically advanced users on Android but not on iPhone where the user is even more locked out. *** For example, Apple rejected [https://web.archive.org/web/20220830203150/https://archive.ph/0hnS3 rejected an endmyopia app] citing "medical diagnostic" from its App Store. Without App Store however on iOS devices, no applications can be installed. On iOS there is purposely not even a sideloding feature which is at least available on Google Android stock devices. In theory, devices could be jail broken but that harms security and then many other apps would refuse to run due to [[#attestation|attestation]]. *** Apple also bans torrent clients and emulators. *** The unrestricted discussion software Telegram downloadable from Google Play Store or Apple App Store censors topics as the corporate overlords see fit. The Freedom Software version of Telegram downloadable from the Telegram website, web version web.telegram.org as well as downloadable from F-Droid, the Free and Open Source Android App Repository does not have these restrictions. *** [https://www.fsf.org/blogs/licensing/more-about-the-app-store-gpl-enforcement Apple bans GPL licensed software from its app store.] *** [https://www.theregister.com/2010/02/16/apple_bans_iphone_hackers/ Apple banned developers who created software that allowed to disable artificial user freedom restrictions on iPhone devices.] *** [[Mobile_Phone_Security#Data_Harvesting_by_Most_Phones|These phones are often packaged with spyware installed by default, which cannot be removed.]] * Most phones that are sold by mobile carriers or manufacturers have locked bootloaders which are prohibiting the user from installing alternative operating systems which are not certified by the hardware vendor. For example: ** The Microsoft Surface RT/2 tablet comes with Windows 8.1 which is nowadays outdated and a locked bootloader. It cannot be updated to Windows 10 or to alternative operating systems such as Linux. * https://www.lovemysurface.net/windows-10-for-surface-rt2/ * https://answers.microsoft.com/en-us/surface/forum/all/full-windows-81-or-windows-10-on-surface-rt/b1c19723-6600-4453-9a60-06ddedc09bc4 Using a jailbreak and lengthy complicated instructions it might be possible. * https://www.alexenferman.com/articles/SurfaceRT/W10-OA-SurfaceRT.html * https://www.digitaltrends.com/mobile/how-to-unlock-your-windows-rt-device/ ** [https://qz.com/1169760/phone-data/ QZ: Google can still use Bluetooth to track your Android phone when Bluetooth is turned off] ** [https://www.zdnet.com/article/how-google-and-everyone-else-gets-wi-fi-location-data/ How Google--and everyone else--gets Wi-Fi location data] ***
How it works, according to Google, is that the Android Location Services periodically checks on your location using GPS, Cell-ID, and Wi-Fi to locate your device. When it does this, your Android phone will send back publicly broadcast Wi-Fi access points' Service set identifier (SSID) and Media Access Control (MAC) data. Again, this isn't just how Google does it; it's how everyone does it. It's Industry practice for location database vendors.** [https://apnews.com/828aefab64d4411bac257a07c1af0ecb/AP-Exclusive:-Google-tracks-your-movements,-like-it-or-not AP Exclusive: Google tracks your movements, like it or not] ***
Google wants to know where you go so badly that it records your movements even when you explicitly tell it not to. An Associated Press investigation found that many Google services on Android devices and iPhones store your location data even if you’ve used a privacy setting that says it will prevent Google from doing so. Computer-science researchers at Princeton confirmed these findings at the AP’s request.** There may be rare exceptions to this rule, hence "most" and not "all". These exceptions are not the point which shall be made in this comparison. See also [[Mobile_Operating_System_Comparison#iPhone_and_Android|Android Privacy Issues and User Freedom Restrictions]]. ** In summary, both, restrictions on applications which can/cannot be installed as well as which can/cannot be uninstalled are imposed. People are conditioned into more software freedom restrictions. * UEFI SecureBoot is another stumbling stone which makes installation of Freedom Software operating systems as a replacement for Microsoft Windows more difficult on the Intel / AMD64 ("PC") computers. * [[Out-of-band Management Technology]] can easily subvert user security and control over their machine if running an open alternative is not feasible. * Sophisticated civilian accessible drones running software which restricts where it can fly. * Cellphone Base-band firmware is not modifiable by the user which prevents updating for security patches once the manufacturer abandons the device. * [https://www.theregister.com/2011/03/31/google_on_open_source_licenses/ Google banned AGPL licensed software from its code hosting platform.] [https://opensource.google/documentation/reference/using/agpl-policy/ Google has an anti-AGPL policy.] People are reduced to vassals in this relationship involving them and the hardware vendor. For more examples consult Chapter [[#User Freedom Threats|User Freedom Threats]] to see how some technologies are abused to restrict user freedom. The fact, that highly technical people are sometimes capable of circumventing some of these technical restrictions, if sufficiently motivated, is besides the point as the censor has succeeded in accomplishing their objective of blocking the majority of the population who do not have a sophisticated knowledge of technology. The root issue is, there is a lock and the vendor refuses to give the key to the user. That root issue does not go away by breaking the lock. Big, most hardware vendors locking down devices is a far more important, powerful movement than a few hackers that can sometimes circumvent technical restrictions in a cat and mouse game which would be lost eventually by the hackers. For example [[Miscellaneous_Threats_to_User_Freedom#SafetyNet|Google's SafetyNet hardware attestation]] is currently unbreakable. Quote [https://grapheneos.org/usage#banking-apps GrapheneOS on Banking apps]:
GrapheneOS doesn't attempt to bypass the checks since it would be very fragile and would repeatedly break as the checks are improved. Devices launched with Android 8 or later have hardware attestation support which cannot be bypassed without leaked keys or serious vulnerabilities so the era of being able to bypass these checks by spoofing results is coming to an end regardless.The trend is clearly going into the direction of the general population of loosing access to general computing rather than gaining more freedom. It won't be happening today, tomorrow or next year. It's a gradual long term trend. For most device classes (phones, tablets, TVs) the freedom of general computing was already lost without an awareness of the war on general computing. The freedom of general computing remains only on some desktop computers and servers. {{anchor_link|restricted boot}} Desktop computer's are under attack too with [https://www.fsf.org/campaigns/campaigns/secure-boot-vs-restricted-boot/ Microsoft's Restricted Boot ("Secure Boot")] ([https://www.fsf.org/campaigns/campaigns-summaries#secureboot summary]) feature. Restricted Boot did not prevent booting alternative operating systems yet on the PC (Intel/AMD64 architecture), but novice users must either use operating systems who's bootloaders were permitted by Microsoft (suddenly Microsoft is in control which operating system can run) or click through scary security warnings when disabling the restricted boot feature in the BIOS through a procedure in the BIOS which is complicated for non-technical users. With another option of deploying one's own keys which is even more complicated. The actual security of restricted boot in the real world has turned out to be worthless since centralized keys/signing will always be vulnerable to secrets leaks. * https://www.schneier.com/blog/archives/2022/12/leaked-signing-keys-are-being-used-to-sign-malware.html * https://www.schneier.com/blog/archives/2023/08/microsoft-signing-key-stolen-by-chinese.html With closed source and seldom updated UEFI firmware serving as the TCB for restricted boot, malware has been able to exploit that to bypass it and gain persistence. https://www.schneier.com/blog/archives/2023/03/blacklotus-malware-hijacks-windows-secure-boot-process.html But the PC market (Intel/AMD64 architecture) is shrinking and gradually being replaced by locked down devices. {{quotation |quote=But concentrating on these problems misses the wider point. The x86 market remains one where users are able to run whatever they want, but the x86 market is shrinking. Users are purchasing tablets and other ARM-based ultraportables. Some users are using phones as their primary computing device. In contrast to the x86 market, Microsoft's policies for the ARM market restrict user freedom. Windows Phone and Windows RT devices are required to boot only signed binaries, with no option for the end user to disable the signature validation or install their own keys. While the underlying technology is identical, this differing set of default policies means that Microsoft's ARM implementation is better described as Restricted Boot. The hardware vendors and Microsoft define which software will run on these systems. The owner gets no say. |context=https://mjg59.dreamwidth.org/23817.html }} See also [[Dev/Secure_Boot|Secure Boot (developers)]]. {| class="wikitable" ! ! Intel/AMD64 (x86) ("PC") Devices ! some ARM (and other architectures) Devices |- | '''Users can disable Secure Boot''' | {{Yes}} | {{No}} |- | '''Users can install their own keys''' | {{Yes}} | {{No}} |- | '''Freedom to run alternative operating systems''' | {{Yes}} | {{No}} |- | '''Control ultimately remains with device owner''' | {{Yes}} | {{No}} |- | '''No option to disable boot validation''' | {{No}} | {{Yes}} |- | '''Cannot install custom keys''' | {{No}} | {{Yes}} |- | '''Hardware vendors and Microsoft control what software can run''' | {{No}} | {{Yes}} |- | '''End users have no ability to modify boot settings''' | {{No}} | {{Yes}} |} Alternative operating systems such as Linux distributions are going into a similar long term direction with [[#Sigstore|Sigstore]] and the [https://0pointer.net/blog/fitting-everything-together.html long term vision on image-based OSes with modernized security properties built around immutability]. While there are probably good intentions and strong technical advantages for going into that direction (recovery mode boot, factory reset, [[Verified Boot]]), the result of requiring to enable a developer mode to be able to modify arbitrary files on the disk, would make it trivial to switch from freedom (unlocked) to non-freedom (locked). Once most devices are locked down, the few remaining libre compatible options could either be pressured to lockdown by economies of scale (corporations requesting digital restrictions management (DRM) in their hardware and would make custom hardware batches exorbitantly expensive and out of reach), or through outright bans by politicians mandating proprietary, surveillance friendly operating systems, citing the [https://en.wikipedia.org/wiki/Four_Horsemen_of_the_Infocalypse Four Horsemen of the Infocalypse]. Outlawing general computing as been attempted in 2002 in USA through the [https://en.m.wikipedia.org/wiki/Consumer_Broadband_and_Digital_Television_Promotion_Act Consumer Broadband and Digital Television Promotion Act], which fortunately failed at the time. These would then effectively control which applications can be run. See also, * the presentation video [https://longnow.org/seminars/02012/jul/31/coming-century-war-against-your-computer/ The Coming Century of War Against Your Computer] ([https://en.m.wikisource.org/wiki/The_Coming_War_on_General_Computation or in readable text format]) by Cory Doctorow hosted by Stewart Brand (EFF founding member) [https://www.eff.org/history-protecting-freedom-where-law-and-technology-collide Quote eff.org]:
The initial Board of Directors included John Perry, Mitch, John, Steve and Stewart Brand., [https://longnow.org/ The Long Now Foundation] / [https://www.youtube.com/watch?v=HUEvRyemKSg 28c3: The coming war on general computation]. * [https://cheapskatesguide.org/articles/war-on-gp-computing.html Taking a Stand in the War on General-Purpose Computing] * [http://www.againsttcpa.com/ Against TCPA] Users should own their hardware as well as their software. [[Avoid nonfreedom software|Avoid non-freedom software]]. Avoid locked hardware. Use Freedom Software. When purchasing new devices, the user should check: * Will I get full administrative rights ("root rights") yes or no? ** Or is the device at least rootable? * Is the bootloader unlocked? ** Or is the bootloader at least unlockable? {{anchor|attestation}}{{anchor|SafetyNet}} = War on the GNU General Public (Copyleft) License = The [https://www.gnu.org/licenses/gpl-3.0.en.html GPL] has led significant corporations to experience alarm and launch a campaign against it, as it jeopardizes their influence and authority over individuals. You can find confirmation of this perspective from Richard Matthew Stallman (RMS) in a [https://www.youtube.com/watch?v=aYNLYIDZN48&t=603s 2004 video]. == Examples == === Google === [https://opensource.google/documentation/reference/using/agpl-policy/ Google has an anti-AGPL policy.] [https://www.theregister.com/2011/03/31/google_on_open_source_licenses/ Google banned AGPL licensed software from its code hosting platform.] === Microsoft === {{Quotation |quote=“Free software,” like free societies, has its enemies. Microsoft has waged a war against the GPL, warning whoever will listen that the GPL is a “dangerous” license. |context=[https://www.gnu.org/doc/fsfs3-hardcover.pdf Free Software, Free Society (fsfs3)] page 8 }} === Apple === [https://www.fsf.org/blogs/licensing/more-about-the-app-store-gpl-enforcement Apple bans GPL licensed software from its app store.] {{Quotation |quote= Apple is very hostile to the GNU GPL, Apple is directly and indirectly trying to pressure people not defend the users freedom. Please join us to standing up to apple. |context= [https://www.youtube.com/watch?v=n9YDz-Iwgyw&t=1641s Reclaim your freedom with free libre software now] 27:23 }} ==Promoting Non-Copyleft Licenses== After big corporations observed an increased adoption of the free software movement, some recognized an opportunity to enter this expanding field. Instead of urging developers to create software using proprietary licenses, they began promoting the utilization of free software licenses, but as non-copyleft license. The key distinction between copyleft and non-copyleft licenses can be summarized as follows: {{Quotation |quote= Copyleft licenses such as the GNU GPL insist that modified versions of the program must be free software as well. Non-copyleft licenses do not insist on this. |context= [https://www.gnu.org/licenses/bsd.html The BSD License Problem] }} ==Examples of big corporations benefiting from this vulnerability== ===Netflix=== [https://itsfoss.com/netflix-freebsd-cdn/ Netflix utilizes FreeBSD] and has closed it to its favor [https://www.gnu.org/licenses/bsd.html "The BSD License Problem 15"] if you wish to understand how this is achievable). ===IBM=== IBM utilizes Apache server (Freedom Software) to create non-freedom IBM HTTP Server (IHS): {{Quotation |quote=IBM HTTP Server is based on Apache HTTP Server 2.4.12, with additional fixes. |context= [https://www.ibm.com/docs/en/ibm-http-server/9.0.5?topic=overview-key-differences-from-apache-http-server Key differences from the Apache HTTP Server] }} Richard Stallman is addressing the issue of [https://www.youtube.com/watch?v=n9YDz-Iwgyw&t=1461s using weak licenses]. ===Google=== After profiting from the non-copyleft license of Android (except the kernel) and amassing millions of dollars, Google is currently in the process of moving away from Android. This shift is driven by the fact that Android is built upon the Linux kernel, which employs the GPL license. Google is now developing its own kernel and operating system: {{Quotation |quote=There are rumors about Google waning to change the kernel on android, There is another Google Kernel Project [https://en.wikipedia.org/wiki/Fuchsia_(operating_system) Fuchsia] |context= [https://www.youtube.com/watch?v=2JZ7l0LdkDs&t=1190s John Sullivan, Executive Director of FSF in an Interview with Bryan Lunduke in 2017] 19:50 }} So, it's very important to license your software carefully and make wise choices. A Copyleft license is recommended [https://www.gnu.org/philosophy/why-copyleft.en.html Why it's recommended]. = Device Attestation such as SafetyNet = Google's SafetyNet is a tool used by many apps to check and refuse to run on user modified devices running custom operating systems that are free from unwanted spyware and bloatware that come pre-installed on most Android devices from mainstream manufacturers. SafetyNet certification is only granted to devices that comply with Google's "Android compatibility tests". To be eligible for certification, Google Play Services must be installed Quote https://developer.android.com/training/safetynet/attestation
The SafetyNet Attestation API provides services for determining whether a device running your app satisfies Android compatibility tests., which [[Mobile_Phone_Security#Data_Harvesting_by_Most_Phones|leads to massive data snooping by Google]]. This certification guarantees "security" for the app developer, not the user. It guarantees "security" not for the user but for the app developer. Many essential applications that do not conform to Google's mandates refuse to run. Essential applications that do not meet Google's mandates refuse to run, and users are denied the ability to audit or stop what the application is doing, such as inspecting what data it is harvesting and sending back to its servers. This is a severe restriction on user freedom, where apps are allowed to operate on the user's device without any transparency or user control. Device attestation is a worldview where apps should only be able to operate on the user's device without user or researchers having the ability to audit or stop what the application is doing - such as inspecting what data it is harvesting and phoning home. Most banking apps, streaming services, transportation apps, and some messengers such as Snapchat are affected. Device Attestation and SafetyNet restrictions are part of the "War on General Purpose Computing," which limits user freedom and restricts users from using their devices in the way they desire. = Conflict of Interest = There is a conflict of interest in the software industry and undermines the very foundation of user trust. Operating system vendors (stock ROM), custom operating system developers (custom ROM), application developers, and users are in a struggle for power, control, and/or profit. What many users want to avoid: Users are often the victims of a web of data harvesting, surveillance, and manipulation. Personal information and user data are collected and used to build a model of the user, which is then used to manipulate the user's behavior, influence their purchase and political decisions, and even control their thoughts. This data is then sold and resold forever, allowing it to be used against the user in immoral ways that violate their privacy and autonomy. Once the data leaves the device, the user loses all control over it and the data can never be fully erased or retrieved. Many users demand: * Privacy: ** Knowledge, control and minimization of data collection, snooping, espionage and data leaks by the operating system and applications. ** Prevention of applications camera and/or voice recording them without their knowledge and consent, tracing their location history, exfiltration of contacts, media, messages, and documents. ** Protection from future data breaches and their personal data being leaked to third parties. * Control: A basic understanding of and control over what their devices are doing, including the ability to limit applications to their intended purposes. * Audit: The ability to verify that applications are only doing what they claim and what is expected of them. * Customization: The ability to modify applications to suit their individual needs, such as patching the YouTube application on Google Android to enable background play. Many application developers prioritize: * Copyright protection: The ability to prevent users from retaining or sharing copyrighted media (such as Netflix), even under reasonable fair use assumptions. * Data collection: The collection of as much information as possible (including location, call history, browsing history, viewer history, and more) for the purpose of surveillance, market research, advertising, predicting user behavior, user manipulation and maximizing profit. * Secrecy: Preventing users from learning the details of what an application is doing. * Integrity: Preventing users from making modifications to an application. Examples include: ** Google Android's YouTube app restriction (for freemium users) on playing audio in the background while the device's screen locker is enabled. ** Freemium games that prevent users from accessing items or levels that are only available to paying customers. ** Multiplayer games that prevent cheating in online games. ** Banking apps that confirm the security model is intact to prevent fraud by checking that no other installed applications can read or write from the banking app's dedicated storage folder, and that no malicious kernel module or other malware is running that could steal the user's login credentials or make unauthorized transactions. Most operating system vendors for mobile devices (stock ROM) prioritize: * Adoption: Attracting as many users as possible to increase profit. * Attractiveness for application developers: Providing an environment that encourages application developers to create apps for their platform, thereby attracting more users. * Security: Preventing any malicious or unapproved party from establishing a foothold in their ecosystem. Some custom operating system vendors for mobile devices (custom ROM) prioritize: Some custom operating system vendors for mobile devices (custom ROM) want: * Similar to most operating system vendors. * Hardware deals: Obtaining recognition from a hardware producer that would pay for continued development and adjustment for their custom operating system, often at the expense of users. = Sigstore = Sigstore https://www.sigstore.dev https://martinheinz.dev/blog/55 https://martinheinz.dev/blog/56 https://forums.whonix.org/t/sigstore-for-improving-verification-of-downloads/11536 is an industry-led initiative to create a chain of trust for software with the objective of accomplishing something similar to what Let's Encrypt had done for website TLS certificates. At face value, having a curated transparency log for all Linux software and enforcing that only digital signature signed processes run (as part of [[Verified Boot]]) seems good, but the devil is in the details. A developer would need to authenticate with an OpenID Connect (OIDC) provider such as Google or GitHub to verify ownership of their email address and possession of previously generated keys. This centralizes trust and would make it trivial for these corporations to censor publishing code they find disagreeable as they are the self-appointed gatekeepers of verification. An example of software banned by github includes {{whonix_wiki |wikipage=yt-dlp |text=
yt-dlp
(called youtube-dl
at the time)
}}, a {{whonix_wiki
|wikipage=YouTube
|text=YouTube
}} video download utility ([https://youtube-dl.org/ homepage], [https://en.wikipedia.org/wiki/Youtube-dl wikipedia]). As torrentfreak reported, [https://torrentfreak.com/github-warns-users-reposting-youtube-dl-they-could-be-banned-201102/ GitHub Warns Users Reposting YouTube-DL They Could Be Banned]. As [https://en.wikipedia.org/wiki/Youtube-dl#RIAA_takedown_request mentioned] in Wikipedia, this was due to a request by the Recording Industry Association of America (RIAA). Fast forward, youtube-dl
is now available again on github but this just one of many examples that there are issues.
Publisher anonymity may become impossible as most of the aforementioned entities require invasive proof of identity to allow signing up to their services. While the governance structure allows for multiple developers from different companies to play key roles in a rotating fashion, it is questionable how independent they can really be if pressure comes to bear on following certain orders or risk losing employment or promotion.
Hence it is reasonable to conclude that Sigstore will play a role in the [[#War on General Purpose Computing|War on General Purpose Computing]] and further limit which devices laymen users can run programs on without restrictions imposed by the operating system vendor. It might result in as a subversive attempt by corporate interests to create a walled garden that allows only certain "approved code" to run on Freedom Software systems as opposed to the decentralized distribution repository system that all Linux desktop distributions are using nowadays.
Such a design also raises questions about the integrity of the transparency log should one of the OpenID providers become compromised. Freedom Software developers and operating system maintainers would do well to steer clear from Sigstore.
= Freedom vs Tyrant Security =
{{quotation
|quote=The only difference between a fortress and a jail is who holds the keys.
}}
'''Table:''' ''Freedom (Open Source) Security''
[https://forums.whonix.org/t/lets-call-it-freedom-software-rather-than-free-software-or-open-source/6961 Freedom Software] / Open Source.
{| class="wikitable"
|-
! scope="col"| '''Category'''
! scope="col"| '''Description'''
|-
! scope="row"| Disk Encryption
| Disk encryption keys are under the sole control of the user.
|-
! scope="row"| End-to-end (E2E) Encryption
| End-to-end encryption keys are under the sole control of the user.
|-
! scope="row"| Security Features
| Security features are available which do not intentionally restrict user customization.
|-
! scope="row"| User Freedoms
| User freedom restrictions are intentionally minimized.
|-
! scope="row"| Synonyms
| Cypherpunk Security, User-Controlled Security
|-
|}
'''Table:''' ''Tyrant Security'' / ''Enterprise Security''
{| class="wikitable"
|-
! scope="col"| '''Category'''
! scope="col"| '''Description'''
|-
! scope="row"| Default Privacy, Security and Customization Settings
|
* These devices have privacy-intrusive default settings that most users are unaware of and which cannot be disabled.
* In most cases the user cannot choose the vendor they wish to install (security) upgrades from.
* Customization of these devices is also limited. For example, many pre-installed applications (often referred to as "bloatware") cannot be uninstalled or at least be hidden from view.
|-
! scope="row"| Definitions
|
* Tyrant: The Free Software Foundation (FSF) uses the word "tyrant" and has defined it in [https://www.gnu.org/proprietary/proprietary-tyrants.html this article]. It refers to devices that refuse to allow the user to modify the software or run what they please. This definition approximates the way it is used in this entry.
* Anti-features: A feature that a fully aware user would rather not have. The F-Droid project has a nice [https://f-droid.org/en/docs/Anti-Features/ catalog of undesirable software behaviors], however a few items might be pushing the boundaries of a true anti-feature.
|-
! scope="row"| Operating System Selection
|
* The freedom to modify the underlying operating system is restricted.
* Vendors force users who want greater system control to run exploits or jail-breaking suites from untrusted origins, which endangers the integrity of personal devices.
* While the security provided by unauthorized third parties might be good, security from the vendor itself is poor. This is further elaborated here: [[Mobile Operating System Comparison#iPhone and Android|Android Privacy Issues and User Freedom Restrictions]].
|-
! scope="row"| Security Technologies
|
* Many popular device operating systems utilize security technologies which undermine the security of the user against meddling and surveillance by the vendor, while suppressing user freedoms. A classic example is most Android phones and iPhone devices.
* Although an over-simplified argument, users of forks based on the Android Open Source Project ([https://source.android.com/ AOSP]) and security/privacy-focused Android forks (like [https://grapheneos.org/ GrapheneOS]), are exempt from the criticisms in this section. Unfortunately, perhaps 99% of laymen utilize stock operating systems with their phone. These operating systems include many security features to keep users safe from unauthorized third parties outside the ecosystem of the vendor.
|-
! scope="row"| Synonyms
| Vendor-Controlled Security
|-
|}
= Feudal Security =
[https://www.wired.com/2012/11/feudal-security/ Feudal security] describes a similar concept to tyrant security.
= Administrative Rights =
The user on most mobile devices has only user rights. Administrative rights (often called root rights or sometimes superuser) are refused. These are required to circumvent [[Mobile_Operating_System_Comparison#Android_Anti-Features|anti features]].
Without root access, it's not really Free Software (as in freedom).
{{Quotation
|quote=The freedom to study how the program works, and change it so it does your computing as you wish (freedom 1). Access to the source code is a precondition for this.
|context=[https://www.gnu.org/philosophy/free-sw.en.html GNU Project: Definition of Free Software, What is Free Software?]
}}
Having "root" or "administrator" access means you have full control over a system. You can install, modify, or remove software; change system settings; and access all files, processes and network traffic. If you don't have full control over the environment in which the software runs, then the freedoms given by the software license are somewhat moot. Android (forks) might meet the legal threshold of being Free Software but not in spirit.
Sometimes is being argued:
If an application refused to run on a rooted device, then users are free to not use these applications.Issues with non-root enforcement (denial of administrative rights): * Cannot backup * While technically true, this is impractical and counter the lived reality of many people. ** More and more businesses communicate over proprietary messengers such as WhatsApp and WhatsApp cannot be used on rooted devices or with custom ROMs. https://faq.whatsapp.com/649203676836357/ ** More and more government services require the same. For example, an Android or iPhone with Google maps location history enabled and Skype is mandatory for entering Japan. * https://www.niph.go.jp/h-crisis/wp-content/uploads/2021/03/000755137.pdf * https://web.archive.org/web/20211124230245/https://www.hco.mhlw.go.jp/manual/pdf-en/datail.pdf Google maps is produced by Google and Skype produced by Microsoft are among the worst privacy-intrusive companies. ** Many people would lose their job if they decided not to use for example WhatsApp since many companies internally use WhatsApp. ** Three are still 2 billion unbanked people. https://www.businessinsider.com/the-worlds-unbanked-population-in-6-charts-2017-8 People who do not even have access to the most basic financial services such as a bank account. For unbanked people it would be unreasonable and should not be expected of them to refuse their first chance to use a mobile banking app with such restrictions. Browser based online banking login methods are often also no feasible alternative. Browser based online banking login methods are often either being deprecated, not mobile friendly or never invented by many banks. For example, * Revolut at time of writing offers only a mobile app. No browser based login at all. Neither for desktop nor mobile. * [https://en.wikipedia.org/wiki/M-Pesa M-Pesa], a popular mobile payment service. Looking at the [https://www.vodafone.com/about-vodafone/what-we-do/consumer-products-and-services/m-pesa#how-it-works M-Pesa website], it's a mobile app only. No mention of a web interface based login. * Online web interfaces are available but painful to use since these are not responsive / mobile optimized. Most of these have been developed with desktop users in mind. For mobile users, banks provide banking apps. If using online banking web interfaces from a mobile phone is possible at all, the experience is often painful. [https://forum.sailfishos.org/t/banking-android-app-doesnt-work-because-device-is-rooted/11862/3 Quote]:
You may find you can still use mobile banking via the web browser with your bank. I can do this with Santander, although it always serves up the desktop site rather than the mobile site which is a bit of a pain.* Popular, modern mobile banking functionality such as scan to pay, contactless payments, fingerprint or face based login are unsupported when using browser based login. * The large number of online discussions (such as on reddit) found on search engines (such as Google) on how to use banking apps on rooted mobile devices and/or devices using custom ROMs indicates that a large number of users would prefer to use the mobile app instead less comfortable, less feature-rich browser based login methods. There's a list of [https://privsec.dev/posts/android/banking-applications-compatibility-with-grapheneos/ Banking Applications Compatibility with GrapheneOS] (that might also work for other forks of Android). ** In conclusion, the recommendation to simply not use such applications is impractical and counter the lived reality of many people. = Counterarguments = == do not buy == The common counterargument to these concerns is "users are free to not purchase such devices." While theoretically sound, this notion often doesn't align with the lived experiences of most people. Conducting a survey of 100 laypeople outside of the tech-savvy community would likely reveal a significant lack of awareness and understanding of terms like Open Source, locked bootloaders, rooting, and how to install alternative mobile operating systems that are free from bloatware and spyware. As such, the argument that users can simply choose not to purchase devices with these restrictions overlooks the complex reality: most people don't have the knowledge, skills, or resources to navigate these issues effectively. = See Also = * [[Verified Boot]] * [[Policy On Nonfreedom Software|Policy on Non-Freedom Software]] * [[Policy_of_Website_and_Chat|Policy of the {{project_name_long}} Website and Chat]] * [[Warning#Unsubstantiated_Conclusions|Unsubstantiated Conclusions]] * [[Avoid_nonfreedom_software|Avoid Non-Freedom Software]] * [[Reasons for Freedom Software|Why {{project_name_short}} is Freedom Software]] * [[Mobile Phone Security]] * [[Mobile Operating System Comparison]] = Footnotes = {{reflist|close=1}} {{Footer}} [[Category:Documentation]]