Este glossário define termos usados frequentemente em artigos da AnarSec
Autenticação de Dois Fatores (2FA)
A autentificação de dois fatores (ou “2FA”) é uma forma do usuário se autoidentificar para um serviço, pedindo a combinação de dois métodos diferentes de autenticação. Estes podem ser algo que o usuário saiba (como uma senha ou PIN) ou algo que o usuário possui (como um token de hardware ou telefone celular).
Comunicação Assíncrona
Diferente da comunicação sincrônica, ambas as partes não precisam estar online ao mesmo tempo. Isso depende de algum tipo de servidor para armazenar as mensagens até que o recipiente esteja online. A maioria das pessoas conhecem bem este tipo de mensageiro (e-mail, etc.).
Comunicação Sincrônica
Diferente de comunicações assíncronas, ambas as partes devem estar online ao mesmo tempo. Isso não exige servidores para comunicação e geralmente é chamado de “par a par”.
Criptografia de Ponta A ponta
Dados são criptografados conforme viajam de um dispositivo para o outro — de ponta a ponta — e não pode ser descriptografado por nenhum intermediário. A criptografia só pode ser realizada por uma das pontas. Isso é diferente de “criptografia passiva”, como a Criptografia Total de Disco, onde os dados armazenados no seu dispositivo é criptografado quando seu dispositivo é desligado. Ambos são importantes!
Para mais informações, confira Encrypted Messaging for Anarchists, e Defend Dissent: Protecting Your Communications.
Metadados
Metadados são dados que oferecem informações sobre outros dados. Por exemplo, um arquivo JPG contém a imagem (JPG) mas pode também conter metadados como a data que o arquivo foi criado, o tipo de câmera, coordenadas de GPS, e afins. Metadados podem ser valiosos para inimigos (para encontrar brechas em softwares desatualizados que o alvo esteja utilizando), agências do governo (para coletar informações sobre pessoas, para criar gráficos estatísticos), e outros grupos (para publicidade direcionada baseada na localização).Toda vez que você está usando um computador. Você provavelmente está deixando metadados para trás.
Para mais informações, veja Remove Identifying Metadata From Files e Defend Dissent: Metadata.
Modelagem de Ameaças
Modelagem de ameaças são um conjunto de atividades para melhorar a segurança através da identificação de uma série de adversários e objetivos de segurança, e vulnerabilidades, e então definindo contramedidas para prevenir ou mitigar os efeitos das ameaças ao sistema. Uma ameaça é um evento indesejável, real ou potencial, que pode sr malicioso (como um ataque DDoS) ou acidental (como a falha de um drive). Modelagem de ameças é a atividade pensada para identificar e acessar ameaças e vulnerabilidades.
Para mais informações, veja a Biblioteca de Riscos do No Trace Project, Defend Dissent: Digital Threats to Social Movements e Defending against Surveillance and Suppression.
Rede Tor
Tor (sigla para The Onion Router) é uma rede aberta e distribuída que ajuda na defesa ontra anáalise de tráfego. O Tor te protege ao enviar suas comunicações através de uma rede de repetidores de sinais mantidos por voluntários ao redor do mundo: isso previne que alguém monitore sua conexão de Internet para descobrir quais sites você visita, e impede o operador destes sites de descobrirem sua localização física.
Todo site visitado através da rede Tor passa por três repetidores. Repetidores são servidores hospedados por diversas pessoas e organizações ao redor do mundo. Nenhum repetidor sabe de onde a conexão criptografada está vindo ou para onde está indo. Um trecho de um relatório altamente confidencial vazado da NSA, chama o Tor de “o rei da alta segurança, e anonimidade na internet” e “sem competidores para o trono”. A rede Tor pode ser acessada através do Navegador Tor em qualquer sistema operacional. O sistema operacional do Tails força todos os programas a usarem a rede Tor quando acessa a Internet.
Para mais informações, veja Tails for Anarchists e Privacy Guides. Para compreender as limitações do Tor, veja a documentação do Whonix.
Sistemas Operacionais (OS)
Os sistemas de software que operam seu dispositivo antes de qualquer outro software. Alguns exemplos comuns incluem Windows, macOS, Linux, Android, e iOS. Linux e algumas versões do Android são as únicas opções de código aberto nesta lista.
VoIP (Voice over Internet Protocol)
Google Voice é um serviço VoIP bastante conhecido e pouco seguro; essa tecnologia dirige suas chamadas para internet (como o Signal faz) invés de usar as transmissões normais de torres de celular. Diferente do Signal, o VoIP permite que você receba chamadas de qualquer um, não apenas de outros usuários do Signal. A vantagem de usar VoIP para chamadas, invés de plano de dados, é que você pode criar diferentes números para diferentes atividades (um para contas, um para logar m uma conta do Signal, etc.), e você nunca precisa desligar o Modo Avião. A vantagem de usar plano de dados, é que você pode usá-lo fora do Wi-Fi, às custas da geolocalização (ou seja, será possível que sua operadora e possivelmente outras partes, descubram onde seu serviço está a qualquer momento).
Backdoor
A backdoor in software or hardware allows an unauthorized party to bypass access controls. For example, an undocumented developer account in a router allows the developer of that product to bypass the login form. Third parties can also use backdoors to access software/hardware. Hackers want to create backdoors, as do law enforcement agencies.
Brute-force attack
An attacker who “simply” tries every possible key to access a service or decrypt a file is using “brute force.” This process is called a brute-force attack. More powerful computers make brute-force attacks more feasible. Modern cryptographic protocols are designed to force an adversary (who does not have the cryptographic key) to spend (nearly) as much time as it would take to try every possible key to break the code. The parameters of a good protocol are chosen to make this amount of time impractical.
Checksums / Fingerprints
Checksums are digital fingerprints: small-sized blocks of data derived from another block of digital data for the purpose of detecting any changes that may have been made. For example, when you download an operating system .iso file, a checksum is listed that looks like: sha512: 9f923361887ac4b1455bc5ae51c06f2457c6d(continued...)
. You can use hash functions like SHA512 to create fingerprints. Essentially, this mathematical operation converts the 0's and 1's of the file into a unique "fingerprint". Changing a single 1 or 0 results in a completely different fingerprint. It is often important to know if a file has changed, such as when downloading the image file for an operating system. Fingerprints are often used in cryptography (e.g. in certificates or to verify public keys in general). GtkHash is a program that allows you to calculate checksums without using a command line interface.
Command Line Interface (CLI)
The "command line" is an all-text alternative to the graphical "point and click" tool that most of us are more familiar with; the Command Line Interface (CLI) allows us to do some things that a Graphical User Interface (GUI) does not. Often, either a GUI or a CLI would work, and which you use is a matter of preference. For example, in Tails, you can verify the checksum of a file using either a GUI (the GtkHash program) or a CLI command (sha256sum
).
For more information, see Linux Essentials. The Tech Learning Collective's "Foundations: Linux Journey" course on the command line is our recommended introduction to using the CLI/terminal.
Correlation Attack
An end-to-end correlation attack is a theoretical way that a global adversary could break the anonymity of the Tor network. For more information, see Protecting against determined, skilled attackers and Make Correlation Attacks More Difficult. For research papers on the subject, see Thirteen Years of Tor Attacks and the design proposal on information leaks in Tor.
CVE
CVE stands for Common Vulnerabilities and Exposures. It is a globally unique identifier for security vulnerabilities in software. Identifiers look like “CVE-YEAR-NUMBER.” The year in the identifier is the year the CVE ID was assigned, not the year the vulnerability was publicly disclosed.
DDoS Attack
A Distributed Denial of Service (DDoS) attack attempts to overload or crash the services of the target system by sending a large number of requests from many sources. The goal of a DDoS attack is to affect the availability of a service or system, such as making a web server unavailable to web browsers.
Digital Signatures
Digital signatures are based on public-key cryptography. A private key is used to digitally sign data, while the corresponding public key is used by third parties to verify the signature. Before a public key is used to verify a signature, its authenticity should be verified.
To learn more, watch this video. For a more detailed look, see Defend Dissent: Authenticity through Cryptographic Signing or our GPG explanation.
Doxxing
The publication of private information about an individual or organization is called doxxing. Before publication, the person doing the doxing may use public databases, social media, or social engineering to obtain information.
Encryption
Encryption is the process of scrambling a message so that it can only be unscrambled (and read) by the intended parties. The method you use to scramble the original message, or plaintext, is called the cipher or encryption protocol. In almost all cases, the cipher is not intended to be kept secret. The scrambled, unreadable, encrypted message is called the ciphertext and can be safely shared. Most ciphers require an additional piece of information, called a cryptographic key, to encrypt and decrypt (scramble and unscramble) messages.
For more information, see symmetric cryptography, asymmetric cryptography, or Defend Dissent: What is Encryption?
Exploit
An exploit is designed to take advantage of a vulnerability. Even worse (or better, depending on whether you are the attacker or the target) are zero-day exploits.
Forward secrecy
Forward secrecy (FS, also known as “Perfect Forward Secrecy”) combines a system of long-term keys and session keys to protect encrypted communications from future key compromise. An attacker who can record every encrypted message (man-in-the-middle) won’t be able to decrypt those messages if the keys are compromised in the future. Modern encryption protocols such as TLS 1.3 and the Signal Protocol provide FS. For more information, see Anonymous Planet.
Full Disk Encryption (FDE)
FDE means that the entire disk is encrypted until a password is entered when the device is powered on. Not all FDE is created equal. For example, the quality of how FDE is implemented on a phone depends not only on your operating system, but also on your hardware (the model of your phone). FDE uses symmetric cryptography, and on Linux it typically uses the LUKS specification.
GnuPG / OpenPGP
GnuPG (GPG) is a program that implements the OpenPGP (Pretty Good Privacy) standard. GPG provides cryptographic functions for encrypting, decrypting, and signing text and files. It is a classic example of public-key cryptography. When used with email, metadata (such as email addresses) remains unencrypted. It does not provide forward secrecy.
For more information, see this primer. We don't recommend it for encrypted communications, here's why.
Hardening
Hardening is a general term for the process of securing systems against attacks.
HTTPS
The "S" in HTTPS stands for "secure"; which means that your Internet connection is encrypted using the Transport Layer Security (TLS) protocol. This involves the website generating a certificate using public-key cryptography that can be used to verify its authenticity — that you are actually connecting to the web server you intended, and that this connection is encrypted.
For more information, see our explanation or Defend Dissent: Protecting Your Communications.
Linux
Linux is an open-source "kernel" upon which operating systems are built. Unlike Windows or macOS, there are many flavors of Linux operating systems. For example, Ubuntu, Kali, and Tails are based on Debian. Manjaro is based on Arch. For more information, see Linux Essentials.
LUKS
The Linux Unified Key Setup (LUKS) is a platform-independent specification for disk encryption. It is the standard used in Tails, Qubes OS, Ubuntu, etc. LUKS encryption is only effective when the device is powered off. LUKS should use Argon2id to make it less vulnerable to brute-force attacks.
Malware
Malware (malicious software) is a generic term for software that contains unwanted or malicious functionality. Malware includes ransomware, Trojan horses, computer viruses, worms, spyware, scareware, adware, etc. Today, malware is more difficult to categorize because sophisticated malware often combines characteristics of different categories. For example, WannaCry spread like a worm, but encrypted files and held them for ransom (ransomware).
Man-in-the-middle attack
An example of a man-in-the-middle attack is when Alice communicates with Bob over the Internet, Eve (eavesdropper) joins the conversation “in the middle” and becomes the man-in-the-middle. Eve can modify, insert, replay, or read messages at will. Protective measures include encryption (confidentiality) and checking the authenticity and integrity of all messages. However, you must also make sure that you are communicating with the expected party. You must verify that you have the real public key of the recipient. For example, this is what you do when you verify a contract's "Safety Number" in the Signal encrypted messaging app.
For a more detailed look, see Defend Dissent: The Man in the Middle and the Whonix documentation.
Open-source
The only software we can trust because the "source code" that it is written in is "open" for anyone to examine.
Passphrase
A passphrase is similar to a password, but is made up of words instead of random characters.
Password
A password is a string of characters used for authentication. A strong password consists of randomly chosen characters that all have the same probability of occurrence and can be created with the KeePassXC Password Generator.
For more information, see Defend Dissent: Passwords
Phishing
Phishing is a technique of social engineering. Attackers send SMS messages, emails, chat messages, etc. to their targets to get their personal information. The attackers can then try to impersonate their victims. It can also be used to get the victim to download malware onto a system, which can be used as a starting point for hacking. Spear phishing is a more sophisticated form of phishing. For more information, see the Kicksecure documentation.
Physical attacks
A physical attack is a situation where an adversary first gains physical access to your device through loss, theft, or confiscation. For example, your phone may be confiscated when you cross a border or are arrested. This is in contrast to a remote attack.
For more information, see Making Your Electronics Tamper-Evident, the Threat Library, the KickSecure documentation, and Defend Dissent: Protecting Your Devices.
Plausible deniability
Plausible deniability can be a security objective. It is achieved when you can’t prove that a person/system sent a particular message. Then that person/system can plausibly deny being the sender of the message.
Public-key cryptography
Public-key cryptography (or asymmetric cryptography) is the opposite of symmetric cryptography. Each party has two keys (public and private). The private key must be kept secret and is used for decryption; the public key must be made public, and is used for encryption. This is the model used for encrypted communication, since the public key cannot be used for decryption. All other parties must verify that a published public key belongs to its intended owner to avoid man-in-the-middle attacks.
There are several approaches to public-key cryptography. For example, some cryptosystems are based on the algebraic structure of elliptic curves over finite fields (ECC). Others are based on the difficulty of factoring the product of two large prime numbers (RSA). Public-key cryptography can also be used for digital signatures.
To learn more, watch this video, or for a more detailed look, see Defend Dissent: Public-Key Cryptography.
Qubes OS
You can think of Qubes OS as Linux + virtual machines. We recommend it as an everyday operating system for intermediate Linux users.
Remote attacks
By remote attack, we mean that an adversary would access the data on your phone or laptop through an Internet or data connection. There are companies that develop and sell the ability to infect your device (usually focusing on smartphones) with malware that would allow their customer (your adversary, be it a corporate or state agent) to remotely access some or all of your information. This is in contrast to a physical attack.
For a more detailed look, see Defend Dissent: Protecting Your Devices.
Sandboxing
Sandboxing is the software-based isolation of applications to mitigate system failures or vulnerabilities. For example, if an attacker hacks an application that is "sandboxed", the attacker must escape the sandbox to hack the entire system. Virtualization is the most powerful implementation of sandboxing.
Security goal
Security goals are concepts in information security that define what needs to be achieved. Well-known security goals are confidentiality, integrity, and availability (known as the CIA triad).
Social engineering
Social engineering is a general term for the psychological manipulation of people to perform actions. Social engineering doesn't depend on technology; it's quite common in everyday life. For example, children cry to manipulate their parents; commercials manipulate their viewers. In information security, phishing is a common social engineering technique.
Spear phishing
Spear phishing is more sophisticated than regular phishing, which casts a wide net. In spear phishing, attackers customize their forged messages and send them to a smaller number of potential victims. Spear phishing requires more research on the part of the attacker; however, the success rate of spear phishing attacks is higher than the success rate of regular phishing attacks.
Supply-chain attack
A supply-chain attack can affect any user of hardware or software components. Attackers manipulate a component during the manufacturing process. In most cases, the actual attack occurs before the targeted user has the manipulated component. Examples include tampered compilers or firmware, and attacks such as Stuxnet or SolarWinds.
Symmetric cryptography
Symmetric cryptography is the opposite of public-key cryptography. Two parties need the same private key to communicate with each other. They both use this key to encrypt and decrypt data. Symmetric cryptography is faster than public-key cryptography, but you must exchange keys securely. AES is a well-known example of symmetric cryptography. This is the model used for Full Disk Encryption (e.g. used by LUKS in Linux Full Disk Encryption).
Tails
Tails is an operating system that makes secure and anonymous computer use accessible to everyone. Tails runs from a USB drive and is designed to leave no trace of your activity on your computer unless you explicitly want it to.
Tails uses the Tor anonymity network to protect your privacy online; all software is configured to connect to the Internet through Tor. If an application tries to connect to the Internet directly, it is automatically blocked for security reasons.
For more information, see Tails for Anarchists.
Virtualization
Virtualization is a technology that creates a virtual version of something, including virtual computer hardware. A Virtual Machine takes advantage of this technology.
Virtual Machine (VM)
A virtual machine is a virtualization/emulation of a computer system. Virtual machines are based on computer architectures and provide the functionality of a physical computer. This can provide the security benefit of sandboxing. Qubes OS consists of VMs that run directly on the hardware (referred to as "bare metal"). According to the Qubes project, "virtualization is currently the only practically viable approach to implementing strong isolation while simultaneously providing compatibility with existing applications and drivers."
VPN (Virtual Private Network)
A VPN extends a private network (like your home network) over a public network (like the Internet). Devices connected to the VPN are part of the private network, even if they are physically located elsewhere. Applications that use a VPN are subject to the functionality, security, and management of the private network.
In other words, it is a technology that essentially makes it appear that you are connecting to the Internet from the network of the company providing the service, rather than from your home network. Your connection to the company is through an encrypted "tunnel". A VPN is not the best tool for anonymity (defined as knowing who you are — Tor is far better), but it can partially enhance your privacy (defined as knowing what you are doing).
It is important to emphasize this to cut through the widespread marketing hype; a VPN is not enough to keep you anonymous. Using a VPN can be thought of as simply shifting your trust from a local Internet Service Provider which is guaranteed to be a snitch to a remote company that claims to limit its ability to effectively snitch on you.
For more information, see Privacy Guides, and for an excellent comparison of a VPN and Tor, see Defend Dissent: Anonymous Routing.
Vulnerability
Vulnerabilities are exploitable security flaws in software or hardware. Well-known vulnerabilities have names like Heartbleed, Shellshock, Spectre, or Stagefright and at least one CVE identifier. Vulnerabilities don't always have exploits. A popular vulnerability severity rating system is CVSS.
Zero-day exploit
A zero-day exploit is unknown to the public, the vendor, or other parties that would normally mitigate it. As a result, it is extremely powerful and highly valued. Governments can either develop their own zero-day exploits or purchase them from a zero-day broker.