Prévia do material em texto
SISTEMAS OPERACIONAIS
AULA 6
Prof. André Roberto Guerra
2
CONVERSA INICIAL
Desde a nossa primeira aula, são apresentados conceitos e definidos
termos relacionados à gerência dos sistemas de computação. Agora, finalizamos
o conteúdo das aulas com a gerência de proteção de arquivos e usuários, tema
atual e essencial para a boa gestão do item mais precioso dos sistemas, os
dados e informações dos usuários, armazenados nos arquivos.
De alguma forma, tudo o que desenvolvemos e produzimos está
digitalizado, seja no smartphone, seja no flash drive portátil, na central multimídia
de um veículo, no relógio (smartwatch), nos óculos (smartglasses) ou em
qualquer outro dispositivo vestível (weareble); e, principalmente, nos
computadores tradicionais, nos desktops, nas workstations, nos servidores; e,
atualmente, na nuvem (cloud computing), em grandes data centers
especializados das gigantes da tecnologia da informação (TI) (exemplos:
Google, Microsoft, Apple, Oracle, Amazon).
E essas preciosas informações são alvo dos cibercriminosos, que, das
mais diversas formas (exemplo: crypto-ransomware WannaCry1), buscam a
propriedade da informação, ou seja, as credenciais que permitam total controle
sobre os arquivos, desde o simples acesso de leitura até a total e absoluta
exclusão de dados, gerando grandes prejuízos, pois todos sabemos o valor de
nossos dados, desde as mais simples conversas com contados até as mais
elaboradas fórmulas e projetos. Com os mais diversos propósitos, desde
conhecer e explorar nossos hábitos até obter nossas informações mais
confidenciais e sigilosas (dados econômicos/financeiros, privados etc.), os
cibercriminosos, conhecedores desse valor e preparados para explorar as
“brechas” de segurança, são contratados para executarem ataques a sistemas
vulneráveis, em que se desconhece ou simplesmente se negligencia um melhor
cuidado da informação, e que não utilizam os padrões e políticas de segurança
adequados, visando à manutenção da confidencialidade, disponibilidade e
1 “O ransomware é um tipo de malware (software malicioso) que impede ou limita o acesso dos
usuários ao sistema, bloqueando a tela do sistema ou bloqueando os arquivos dos usuários, a
menos que um resgate seja pago. As famílias mais modernas de ransomware, coletivamente
categorizadas como crypto-ransomware, criptografam certos tipos de arquivos em sistemas
infectados e obrigam os usuários a pagar pelo seu resgate por meio de certos métodos de
pagamento on-line, para obterem uma chave de descriptografia” (Trend Micro, [20--], tradução
nossa).
3
integridade dos dados. Nesses casos, os cibercriminosos conquistam altas taxas
de sucesso em suas investidas.
Mas aqueles que conhecem as definições e práticas de gestão de
proteção de arquivos, fazendo o uso dos procedimentos recomendados,
conseguem níveis satisfatórios de defesa e proteção contra esses ataques e
ameaças, preparando-se da melhor forma contra eles. Devido a tamanha
complexidade, há cursos superiores específicos sobre cibersegurança, além da
certificação profissional de empresas especializadas. Contudo, todas as técnicas
de ataque e defesa envolvem diretamente os arquivos de usuários e os sistemas
operacionais que os geram e mantêm. Portanto, conhecer as definições e
propriedades alinhadas às tarefas de gestão apresentadas nas atividades
práticas fornece o conhecimento inicial para uma preparação que exige
formação continuada em cursos mais específicos e avançados.
Para Maziero (2019), a segurança de um sistema de computação diz
respeito à garantia de algumas propriedades fundamentais associadas às
informações e recursos presentes em um sistema. Provavelmente, é em seu
computador pessoal que a maioria dos seus dados está gravada e é por meio
dele que você acessa redes e realiza transações bancárias e comerciais. Por
isso, mantê-lo seguro é essencial para se proteger dos riscos (Maziero, 2019).
Muitas vezes, os atacantes estão interessados no acesso a uma grande
quantidade de devices, independentemente de quais são e das configurações
que possuem. Por isso, acreditar que seu computador está protegido, por ele
supostamente não apresentar atrativos para um atacante, pode ser um grande
erro (Cert, 2016).
Os conteúdos previstos para esta aula teórica abrangem a gerência e a
proteção de usuários, que serão individualmente descritas e apresentadas nos
cinco temas a seguir:
1. Conceitos e definições de segurança;
2. Riscos, ameaças e vulnerabilidades;
3. Criptografia;
4. Autenticação, gerenciamento e controle de acesso;
5. Gerenciamento e proteção de usuários.
Aproveite e bons estudos!
4
TEMA 1 – CONCEITOS E DEFINIÇÕES DE SEGURANÇA
O professor Luis Gonzaga de Paulo apresenta, na reportagem intitulada
Aumento de ataques cibernéticos alertam para a necessidade de se ter cuidados
com a proteção, que:
Um ataque cibernético é um evento que tem por objetivo atingir as
bases da segurança da informação: a confidencialidade, a integridade
e a disponibilidade da informação. Para tanto usam técnicas, métodos
e ferramentas com o propósito de ter acesso indevido a informações
restritas, falsificar, alterar ou destruir informações de valor ou tornar
inviável o uso dessas informações ou o acesso a elas. Geralmente são
parte de planos bem orquestrados por quadrilhas do crime organizado,
mas pode ser executado de forma amadora, por alguém com algum
conhecimento técnico ou mesmo um aprendiz, ou por serviços de
espionagem e grupos terroristas. É bom salientar que nem sempre o
ataque é motivado por interesses financeiros, embora esse seja o
principal fator em grande parte dos ataques. (Paulo, 2020, citado por
Zanluca, 2020)
Em português, a palavra segurança abrange muitos significados distintos
e por vezes conflitantes, como define Maziero (2019). Em inglês, as palavras
security, safety e reliability permitem definir mais precisamente os diversos
aspectos da segurança: a palavra security se relaciona a ameaças intencionais,
como intrusões, ataques e roubo de informações; a palavra safety se relaciona
a problemas que possam ser causados pelo sistema aos seus usuários ou ao
ambiente, como acidentes provocados por erros de programação; por fim, o
termo reliability é usado para indicar sistemas confiáveis, construídos para
tolerar erros de software, de hardware ou dos usuários (Avizienis et al., 2004;
Maziero, 2019).
Nesta aula, serão considerados somente os aspectos de segurança
relacionados ao termo security, ou seja, à proteção do sistema contra ameaças
intencionais. Trataremos dos principais conceitos de segurança, como
propriedades e princípios de segurança, ameaças, vulnerabilidades e ataques
típicos em sistemas operacionais, concluindo com uma descrição da
infraestrutura de segurança típica de um sistema operacional. Grande parte dos
tópicos de segurança apresentados não são exclusivos de sistemas
operacionais, se aplicam a sistemas de computação em geral (Maziero, 2019).
Outras boas definições dos termos segurança e seguro podem ser obtidas
no Michaelis dicionário brasileiro da língua portuguesa (2015):
5
segurança
[...]
2 Estado do que se acha seguro ou firme; estabilidade, solidez.
[...]
5 Condição ou estado do que está livre de danos ou riscos.
6 Crença ou opinião firme; certeza, confiança, firmeza [...].
[...]
seguro
[...]
3 Que envolve pouco ou nenhum risco; eficaz, garantido [...].
4 Livre de perigo ou não exposto a ele; protegido, testo.
[...]
6 Que oferece segurança contra ataques, acidentes, desastres ou
danos de qualquer outra natureza [...].
[...]
11 Que não oferece dúvida; certo, incontestável, indubitável.
12 Em que se pode crer ou ter confiança [...]. (Michaelis, 2015)
1.1 Informação
Em complemento à definição de segurança, torna-se necessária a
definição de informação, pois,como descrito pelo professor Luis Gonzaga de
Paulo (2020),
vivemos na Era da Informação, e produzimos, armazenamos e
movemos diariamente uma quantidade incalculável de informação.
Apesar da quantidade de informação ter passado por um grande
impulso a partir da invenção da imprensa, por Gutemberg, foi a partir
do final do século XVIII, com a invenção da fotografia, seguida do
telégrafo – que inaugurou a era das telecomunicações – que a
quantidade de informação produzida, disponível e transportada ganhou
tamanha proporção.
Numa reflexão sobre o que é informação, temos, então, nomes, números,
imagens e sons, sensações, enfim, tudo que podemos experimentar com nossos
sentidos – e, além deles, com o uso da tecnologia – e que tenha algum uso,
propósito, que possa ser utilizado por meio da razão ou da emoção, tudo isso é
informação. E tudo isso tem valor, um valor mensurável ou não (Paulo, 2020).
Mas, na TI, o conceito de informação é diferenciado, a começar pela
separação entre informação e dados. Dados são elementos, valores, grandezas
medidas e ainda por analisar ou processar por meio de recursos computacionais.
Informações são os resultados dessa análise ou processamento, que, mediante
processos e regras definidas, tornam-se inteligíveis e utilizáveis pelos seres
humanos. Entretanto, ambos – dados ou informações – têm um valor intrínseco,
requerendo um tratamento pelo qual possam manter sua utilidade e seu valor
(Paulo, 2020).
A norma ABNT NBR ISO/IEC 27002:2103 define informação como um
ativo – isto é, bem, patrimônio – de uma organização, de grande importância e
6
valor e que, por isso, necessita de proteção adequada (ABNT, 2013). Para isso,
deve-se considerar a informação em suas diversas formas e nos diversos meios
utilizados para obtê-la, armazená-la, transportá-la e modificá-la:
O valor da informação vai além das palavras escritas, números e
imagens: conhecimentos, conceito, ideias e marcas são exemplos de
formas intangíveis da informação. Em um mundo interconectado, a
informação e os processos relacionados, sistemas, redes e pessoas
envolvidas nas suas operações são informações que, como os outros
ativos importantes, têm valor para o negócio da organização e,
consequentemente requerem proteção contra vários riscos. (ABNT,
2013)
Devido à grande diversidade de informações, no ambiente pessoal e no
ambiente corporativo, é necessário classificar as informações, isto é,
diferenciá-las em função de níveis e critérios específicos, como a sua natureza,
o seu valor e o seu grau de importância. Esses critérios e níveis podem definir o
grau de sigilo e confidencialidade a ser aplicado à informação. É também em
função desses critérios que serão definidos os mecanismos de controle e
proteção das informações. Certamente, você já ouviu ou leu a respeito de
informações confidenciais, secretas, de caráter reservado ou público. São
exemplos de classificações para informações que determinam quem, quando e
onde pode-se ter acesso, transportar ou modificar determinadas informações
(Paulo, 2020).
De maneira semelhante aos arquivos e tarefas, conforme definido nas
aulas anteriores, a informação também percorre um ciclo de vida, isto é, um
período compreendido entre a criação ou origem da informação e o momento em
que ela pode ser descartada. Durante esse ciclo de vida, a informação é
manuseada, manipulada ou tratada, podendo sofrer alterações, desde que
controladas, de modo a não perder seu valor. Ela também pode ser armazenada
ou transportada – submetida a processos que, entretanto, não mudam seu
significado ou valor. Nesse ciclo de vida, a informação também está exposta a
riscos – isto é, está vulnerável –, por exemplo, o roubo, a perda ou a alteração
indevida. Para evitar que isso ocorra, é necessário proteger a informação e
monitorar seu ciclo de vida por completo. Esse é o principal objetivo da
segurança da informação (Paulo, 2020).
7
Figura 1 – Ciclo de vida da informação
Fonte: Paulo, 2020.
1.2 Segurança da informação
Para se garantir a segurança da informação, é necessário que os
seguintes princípios básicos sejam respeitados:
• Confidencialidade: deve-se assegurar que a informação será acessível
somente a quem tem autorização de acesso;
• Integridade: deve-se assegurar que a informação não foi alterada
durante o seu processo de transporte;
• Disponibilidade: deve-se assegurar que usuários autorizados tenham
acesso a informações e recursos a estas associados, quando por eles
requeridos (Projetos, 2019).
Além desses princípios básicos, outras propriedades importantes estão
geralmente associadas à segurança de um sistema, segundo Maziero (2019):
• Autenticidade: todas as entidades de um sistema são autênticas ou
genuínas; em outras palavras, os dados associados a essas entidades
são verdadeiros e correspondem às informações do mundo real que elas
representam, como as identidades dos usuários, a origem dos dados de
um arquivo etc.
• Irretratabilidade: todas as ações realizadas no sistema são conhecidas
e não podem ser escondidas ou negadas por seus autores; essa
propriedade também é conhecida como irrefutabilidade ou não repúdio.
É função do sistema operacional garantir a manutenção das propriedades
de segurança para todos os recursos sob sua responsabilidade. Essas
propriedades podem estar sujeitas a violações decorrentes de erros humanos ou
de software, praticadas por indivíduos mal-intencionados (maliciosos), internos
ou externos ao sistema (Maziero, 2019).
8
De acordo com a norma ABNT NBR ISO/IEC 27002:2013:
A segurança da informação é alcançada pela implementação de um
conjunto adequado de controles, incluindo políticas, processos,
procedimentos, estrutura organizacional e funções de software e
hardware. Estes controles precisam ser estabelecidos, implementados,
monitorados, analisados criticamente e melhorados, quando
necessário, para assegurar que os objetivos do negócio e a segurança
da informação sejam atendidos. (ABNT, 2013)
1.3 Princípios de segurança da informação
Além das técnicas usuais de engenharia de software usadas para a
produção de sistemas corretos, segundo Maziero (2019), a construção de
sistemas computacionais seguros é pautada por uma série de princípios
específicos, relativos tanto à construção do sistema quanto ao comportamento
dos usuários e dos atacantes. Alguns dos princípios mais relevantes, compilados
por Maziero (2019), são indicados a seguir:
• Privilégio mínimo: todos os usuários e programas devem operar com o
mínimo possível de privilégios ou permissões de acesso necessários para
poderem funcionar. Dessa forma, os danos provocados por erros ou
ações maliciosas intencionais serão, também, minimizados.
• Separação de privilégios: sistemas de proteção baseados em mais de
um controle ou regra são mais robustos, pois, se o atacante conseguir
burlar um dos controles, mesmo assim não terá acesso ao recurso. Em
um sistema bancário, por exemplo, uma operação de valor elevado pode
requerer a autorização de dois gerentes.
• Mediação completa: todos os acessos a recursos, tanto diretos quanto
indiretos, devem ser verificados pelos mecanismos de segurança. Eles
devem estar dispostos de forma a ser impossível contorná-los.
• Default seguro: o mecanismo de segurança deve identificar claramente
os acessos permitidos; caso um certo acesso não seja explicitamente
permitido, ele deve ser negado. Esse princípio impede que acessos
inicialmente não previstos no projeto do sistema sejam inadvertidamente
autorizados.
• Economia de mecanismo: o projeto de um sistema de proteção deve ser
pequeno e simples, para que possa ser facilmente e profundamente
analisado, testado e validado.
9
• Compartilhamento mínimo: mecanismos compartilhados entre usuários
são fontes potenciais de problemas de segurança, devido à possibilidade
dehaver fluxos de informação imprevistos, entre usuários. Por isso, o uso
de mecanismos compartilhados deve ser minimizado, sobretudo se
envolver áreas de memória compartilhadas. Por exemplo, caso uma
funcionalidade de um sistema operacional possa ser implementada como
chamada a um núcleo ou como função de biblioteca, deve-se preferir essa
última forma, pois envolve menos compartilhamento.
• Projeto aberto: a robustez do mecanismo de proteção não deve
depender da ignorância dos atacantes; ao invés disso, o projeto deve ser
público e aberto, dependendo somente do segredo de poucos itens, como
listas de senhas ou chaves criptográficas. Um projeto aberto também
torna possível a sua avaliação por terceiros independentes, provendo
confirmação adicional da segurança do mecanismo.
• Proteção adequada: cada recurso computacional deve ter um nível de
proteção coerente com seu valor intrínseco. Por exemplo, o nível de
proteção requerido em um servidor web de serviços bancários é bem
distinto daquele de um terminal público de acesso à internet.
• Facilidade de uso: o uso dos mecanismos de segurança deve ser fácil e
intuitivo, caso contrário eles serão evitados pelos usuários.
• Eficiência: os mecanismos de segurança devem ser eficientes no uso
dos recursos computacionais, de forma a não afetarem significativamente
o desempenho do sistema ou as atividades de seus usuários.
• Elo mais fraco: a segurança do sistema é limitada pela segurança de seu
elemento mais vulnerável, seja ele o sistema operacional, sejam as
aplicações, a conexão de rede ou o próprio usuário.
Esses princípios devem pautar a construção, configuração e operação de
qualquer sistema computacional com requisitos de segurança. A maioria dos
problemas de segurança dos sistemas atuais provém da não observação desses
princípios (Maziero, 2019).
TEMA 2 – RISCOS, AMEAÇAS E VULNERABILIDADES
Como mencionado por Paulo (2020), a informação está sujeita a riscos,
seja no seu processo de produção e manuseio, seja no seu armazenamento ou
10
em seu transporte por qualquer meio. Esses riscos são decorrência dos diversos
fatores envolvidos nesses processos: pessoas, tecnologias, ambientes,
fenômenos naturais e o seu próprio desgaste ou fadiga pelo uso.
“Os incidentes, isto é, as ocorrências que transformam a possibilidade do
risco em um acontecimento, um fato, podem comprometer uma ou mais
características da segurança da informação” (Paulo, 2020), com probabilidade
de que uma ameaça venha a explorar ou agir em face de uma vulnerabilidade,
gerando um incidente de segurança da informação que fira aspectos básicos da
segurança da informação, identificados com o acrônimo CID: confidencialidade,
integridade e disponibilidade (Paulo, 2020), conforme apresentado no item 1.2.
Por meio de registros históricos, da análise matemática ou estatística, é
possível determinar a probabilidade da ocorrência do risco e o impacto que essa
ocorrência – ou incidente – pode causar nos negócios. Ao processo de avaliação
de riscos executado dessa maneira denomina-se análise de riscos (Paulo, 2020).
Para o professor Carlos Alberto Maziero (2019), ameaça pode ser
considerada qualquer ação que coloque em risco as propriedades de segurança
do sistema descritas na seção anterior. Alguns exemplos de ameaças às
propriedades básicas de segurança seriam:
• Ameaças à confidencialidade: um processo vasculhar as áreas de
memória de outros processos, arquivos de outros usuários, o tráfego de
rede nas interfaces locais ou áreas do núcleo do sistema, buscando
acesso a dados sensíveis como números de cartão de crédito, senhas,
conteúdos de e-mails privados etc.
• Ameaças à integridade: um processo alterar as senhas de outros
usuários, instalar programas, drivers ou módulos de núcleo maliciosos,
visando obter o controle do sistema, roubar informações ou impedir o
acesso de outros usuários.
• Ameaças à disponibilidade: um usuário alocar para si todos os recursos
do sistema, como a memória, o processador ou o espaço em disco, para
impedir que outros usuários possam utilizá-lo (Maziero, 2019).
Para Paulo (2020), as ameaças são agentes ou eventos que, podendo
explorar ou agir perante uma vulnerabilidade, representam um risco.
Para evitar incidentes de segurança da informação, uma organização
necessita conhecer e gerenciar seus ativos – incluindo-se, entre esses, as
11
informações de valor – e as suas vulnerabilidades. O processo de identificação
e avaliação dos ativos, asset assessment ou inventário, deve, então, identificar,
descrever e localizar cada ativo, seu uso e controles de segurança atuais e as
ameaças às quais eles estão expostos ou submetidos (Paulo, 2020).
Maziero (2019) conclui que, obviamente, para cada ameaça possível,
devem existir estruturas, no sistema operacional, que impeçam sua ocorrência,
como controles de acesso às áreas de memória e arquivos, quotas de uso de
memória e processador, verificação de autenticidade de drivers e outros
softwares etc. As ameaças podem ou não se concretizar, dependendo da
existência e da correção dos mecanismos construídos para evitá-las ou impedi-
las. As ameaças podem se tornar realidade na medida em que existam
vulnerabilidades que permitam sua ocorrência (Maziero, 2019)
Como já visto e apresentado por Paulo (2020), a informação é um valioso
ativo – isto é, um bem ou patrimônio da organização. No entanto, para fazer uso
desse valioso bem, de forma a empregá-lo adequadamente ao processo
produtivo da organização, é necessário prover meios para interagir com a
informação no seu ciclo de vida. Esses meios são os ativos da informação ou da
TI.
Os ativos compreendem uma vasta gama de dispositivos, equipamentos
e componentes, desde os circuitos de comunicação de dados até os softwares
– os programas –, passando por redes, meios de armazenamento,
computadores e periféricos. Cada ativo está sujeito a incidentes que podem
influenciar na segurança da informação, seja pelo seu uso intenso, por se tratar
de uma nova tecnologia cuja efetividade na segurança da informação ainda não
foi comprovada; seja por haver interesses escusos em relação ao seu possível
alto valor. Enfim, tais ativos estão expostos a falhas de segurança da informação,
possuindo pontos fracos que podem vir a ser explorados ou apresentarem
comportamento incompatível, fraquezas, às quais denominamos
vulnerabilidades. Ou seja, vulnerabilidades são pontos fracos, nos ativos da
informação, que podem ser explorados ou fazê-los apresentar falhas, gerando
incidentes de segurança da informação (Paulo, 2020).
Além disso, para Paulo (2020), estendendo o conceito de ativos às
pessoas e processos da organização que atuam no ciclo de vida da informação,
é possível afirmar que esses elementos também apresentam vulnerabilidades.
Isso porque um suborno, a corrupção, a omissão ou uma ação proposital podem
12
gerar incidentes de segurança da informação, ou seja, pessoas e processos
também apresentam vulnerabilidades.
Tanto indivíduos quanto empresas são vulneráveis a roubos de dados e
a ataques que podem comprometer dados, corromper arquivos e provocar a
queda de sistemas. A indústria da computação procura atender essas
necessidades com suas organizações, trabalhando para melhorar a segurança
computacional. Por exemplo, a iniciativa de computação confiável proposta
pelo presidente da Microsoft, Bill Gates, é um esforço para concentrar a
prioridade das empresas no fornecimento de aplicações confiáveis, disponíveis
e seguras (Deitel; Deitel; Choffnes, 2017).
Para o professor Carlos Alberto Maziero (2019), uma vulnerabilidade é
um defeito ou problema presente na especificação, implementação,
configuração ou operação de um software ou sistema, que possa ser explorado
para violar as suas propriedades de segurança. Dentre alguns exemplos de
vulnerabilidades, vale destacar:• um erro de programação no serviço de compartilhamento de arquivos,
que permita a usuários externos o acesso a outros arquivos do
computador local, além daqueles compartilhados;
• uma conta de usuário sem senha, ou com uma senha predefinida pelo
fabricante, que permita a usuários não autorizados acessarem o sistema;
• a ausência de quotas de disco, permitindo a um único usuário alocar todo
o espaço em disco para si e assim impedir os demais usuários de usarem
o sistema (Maziero, 2019).
Em sua versão 2.404, o sistema operacional Windows 10 lançou o kernel
data protect – proteção de dados do kernel (KDP), uma nova tecnologia que evita
ataques de corrupção de dados, protegendo partes do kernel e drivers do
Windows por meio da segurança baseada em virtualização (VBS). A KDP é um
conjunto de interfaces de programação de aplicativos (APIs) que permitem
marcar algumas memórias do kernel como somente para leitura, impedindo que
invasores modifiquem a memória protegida. Por exemplo, invasores usam
drivers de dispositivos assinados, mas vulneráveis, para atacar estruturas de
dados de políticas e instalar um driver mal-intencionado não assinado. A KDP
atenua esses ataques, garantindo que as estruturas de dados da política não
possam ser violadas (Microsoft, 2020).
13
TEMA 3 – CRIPTOGRAFIA
O termo criptografia tem sua origem no grego kryptós (escondido, oculto,
secreto) e gráphos (grafia, escrita). É a arte ou a ciência de escrever em cifra ou
em código. Assim, a criptografia foi criada para codificar informações, por meio
da formulação de um conjunto de técnicas que permitem tornar incompreensível
uma mensagem originalmente escrita com clareza, de forma a permitir que
somente as pessoas autorizadas (seu remetente e seu destinatário) a decifrem
e compreendam, com acesso ao seu conteúdo (Maziero, 2019).
Conceitualmente, segundo Maziero (2019), a criptografia faz parte de um
escopo mais amplo de conhecimento, que envolve:
• Criptografia: conjunto de técnicas para codificar/decodificar informações,
ocultando seu conteúdo de pessoas não autorizadas a acessá-las.
• Criptanálise: conjunto de técnicas usadas para “quebrar” uma
criptografia, expondo a informação ocultada por ela.
• Criptologia: área geral, englobando criptografia e criptanálise.
• Criptossistema: conjunto de algoritmos/mecanismos para realizar um
tipo específico de criptografia.
As técnicas criptográficas são extensivamente usadas na segurança de
sistemas, para garantir a confidencialidade e integridade dos dados. Além disso,
elas desempenham um papel importante na autenticação de usuários e recursos
(Maziero, 2019). Pistelli ([S.d.]) apresenta que a criptologia é uma ciência muito
antiga, já presente no sistema de escrita hieroglífica dos egípcios, há quase 4
mil anos. Ela “também foi usada na antiga Roma, onde os soldados
simplesmente substituíam umas letras por outras, tornando assim, impossível
para os inimigos ler as mensagens, pois somente o remetente e o destinatário
possuíam o código capaz de decifrar o conteúdo das mensagens” (Paiva; López,
2002). “Desde então vem sendo muito utilizada, principalmente para fins
militares e diplomáticos [...]. Sua utilização durante a Segunda Guerra, e a
consequentemente quebra dos códigos alemão e japonês, foi fundamental para
o sucesso dos Aliados” (Pistelli, [S.d.], p. 1).
14
3.1 Objetivos da criptografia
“O uso da criptografia tem como objetivo garantir que uma mensagem ou
informação só será lida e compreendida pelo destinatário autorizado para isso”
(Mota, 2006, p. 44).
Os objetivos do uso da criptografia são quatro, conforme a seguir
descritos:
1. Confidencialidade: deve-se assegurar, por meio de encriptação dos
dados, que só os receptores autorizados tenham acesso às informações.
2. Integridade: deve-se assegurar, por meio de assinatura digital, que a
informação não seja alterada durante o seu processo de transporte da
informação.
3. Autenticação: o remetente e o receptor devem poder confirmar as
identidades uns dos outros, assim como a origem e o destino da
informação, por meio de assinatura digital e certificados.
4. Não recusa: o criador/remetente do documento deve poder assiná-lo de
forma digital, limitando legalmente a sua responsabilidade, por meio de
assinatura digital e certificados.
3.2 Tipos de criptografia
Existem dois tipos básicos de criptografia: a criptografia simétrica e a
criptografia assimétrica.
Para Cavalcante (2019), a criptografia simétrica ou de chave secreta foi
o primeiro tipo de criptografia criado. Funciona transformando um texto em uma
mensagem cifrada, mediante definição de uma chave secreta, que será utilizada,
posteriormente, para descriptografar a mensagem, tornando-a novamente um
texto simples (Cavalcante, 2019). Os algoritmos simétricos usam chaves
simétricas e um algoritmo de bloco, como DES, Desx, Idea, RC2, RC4, Blowfish,
para criptografar e descriptografar dados. Ela tem por:
Vantagem – Rapidez na criptografia e decriptografia das informações.
Desvantagem – A chave secreta deve ser transmitida ou comunicada
para o receptor, tornando-a mais vulnerável a roubo.
[...]
A Criptografia Assimétrica, [...] também conhecida como de chave
pública, utiliza duas chaves, uma para cifrar o texto ou mensagem, e
outra para decifrar. Pode ser empregada para assinatura digital e
autenticação. É possível combinar a criptografia simétrica com a
assimétrica, somando a segurança com a rapidez.
15
Vantagens - mais segura que a criptografia simétrica, por não precisar
comunicar o receptor a chave necessária para decriptografar a
mensagem e, pode ser utilizada em assinatura digital
Desvantagem - costuma ser mais lenta do que a criptografia simétrica
(Celestino, 2005, p. 30-31).
Já a assinatura digital é um código, incluído na mensagem ou no texto,
que identifica o remetente de uma mensagem. A mensagem ou texto é
criptografado(a) com uma chave privada, criando uma espécie de assinatura.
Para essa mensagem ser descriptografada, é utilizada uma chave pública.
3.3 Public key infrastructure (PKI)
A UFRGS ([20--]) define que a public key infrastructure (PKI) se refere a
um processo que utiliza chaves públicas e certificados digitais para garantir a
segurança do sistema e confirmar a identidade de seus usuários. Rodrigues
(2009) apresenta o seguinte exemplo:
uma empresa pode usar a PKI para controlar o acesso a sua rede de
computadores. No futuro, as empresas poderiam usar a PKI para
controlar o acesso a tudo, desde a entrada nos prédios até a obtenção
de mercadorias.
A PKI permite que pessoas e empresas realizem negócios em
particular. Os funcionários podem enviar e-mails pela Internet com
segurança, sem se preocupar com a sua interceptação por um
concorrente. As empresas podem construir sites privativos, enviando
informações somente para clientes conhecidos.
A PKI baseia-se em um sistema de confiança, no qual duas partes
(pessoas ou computadores) confiam mutuamente em uma CA
(Autoridade Certificadora) para verificar e confirmar a identidade de
ambas as partes.
Por exemplo, a maioria das pessoas e empresas confia na validade de
uma carteira de habilitação de motorista ou em um passaporte. Isto
ocorre porque elas confiam na forma pela qual o governo emite estes
documentos. Entretanto, uma caderneta de estudante é normalmente
aceita como prova de sua identificação apenas para a escola que a
emite. O mesmo vale para os Certificados Digitais.
Com a PKI, ambas as partes de uma transação (seja ela um banco on-
line e seus clientes ou um empregador e seus funcionários) concordam
em confiar na CA que emite seus Certificados Digitais.
Normalmente, o aplicativo de software que utiliza seu Certificado Digital
tem algum mecanismo para confiar nas CAs. Por exemplo, um
navegador contém uma lista das CAs em que confia. Quando é
apresentado ao navegador um CertificadoDigital (por exemplo, de um
shopping on-line realizando comércio seguro), ele consulta a CA que
emitiu o Certificado Digital. Se a CA estiver na lista de CAs confiáveis,
o navegador aceita a identidade do site da Web e exibe a página da
Web. Entretanto, se a CA não estiver na lista de CAs confiáveis, o
navegador exibe uma mensagem de aviso que lhe pergunta se você
deseja confiar na nova CA. Geralmente seu navegador lhe dá opções
para confiar permanente ou temporariamente na CA ou não confiar em
absoluto. Como usuário, você tem controle sobre em qual(is) CA(s)
deseja confiar, porém o gerenciamento da confiança é feito pelo
aplicativo de software (neste exemplo, pelo navegador). (Rodrigues,
2009)
16
TEMA 4 – AUTENTICAÇÃO, GERENCIAMENTO E CONTROLE DE ACESSO
“Você não pode confiar em um código que você mesmo não tenha criado
inteiramente (em especial, códigos de empresas que empregam pessoas como
eu)”, diz Thompson (1983, citado por Deitel; Deitel; Choffnes, 2017).
Segurança de computadores aborda a questão da prevenção do
acesso não autorizado a recursos e informações mantidos em
computadores. Sistemas de computador devem fornecer mecanismos
para gerenciar ameaças à segurança originadas tanto externamente
ao computador (via conexão de rede), quanto internamente (via
usuários e softwares mal-intencionados). Segurança de computador
comumente abrange garantir a privacidade e a integridade de dados
sensíveis, restringir a utilização de recursos de computação e oferecer
proteção contra tentativas de incapacitar o sistema. Proteção abrange
mecanismos que protegem recursos como hardware e serviços de
sistemas operacionais contra ataques. A segurança está se tomando
rapidamente um dos tópicos mais ricos e desafiadores da computação;
a segurança do sistema operacional está no âmago de um sistema de
computação seguro. (Ribeiro, 2005, p. 153)
4.1 Autenticação
Para Ribeiro (2005, p. 157-159, grifos nossos),
Identificar usuários e as ações que eles têm permissão de realizar é
vital para manter a segurança de um sistema de computador. Um
usuário pode ser identificado por:
• Uma característica exclusiva da pessoa (impressões digitais,
impressões vocais, varredura de retina e assinaturas) [algo que o
usuário é];
• Propriedades de um item (crachás, carteiras de identidade, chaves e
cartões inteligentes) [algo que o usuário tem]; e
• Conhecimento do usuário (senhas, números de identificação pessoal
(PINs) e combinações de travas) [algo que o usuário sabe].
[...]
O esquema de autenticação mais comum é uma simples proteção por
senha, onde o usuário escolhe e memoriza um código secreto e o
registra no sistema para obter admissão a um recurso ou sistema. A
maioria dos sistemas suprime a exibição da senha na tela, substituindo
seu texto por caracteres mascaradores (que apresentam caracteres
fictícios – quase sempre asteriscos — no lugar dos da senha) ou
ocultando a entrada da senha.
A proteção por senha introduz diversos pontos fracos em um sistema
seguro. Usuários tendem a escolher senhas fáceis de lembrar, como o
nome de um cônjuge ou de um animal de estimação. Alguém que tenha
obtido informações pessoais do usuário poderia tentar o acesso ao
sistema (login) várias vezes, usando senhas correspondentes às
características do usuário; várias tentativas repetidas podem resultar
em uma violação da segurança. Alguns sistemas antigos limitavam o
usuário a senhas curtas; esses eram facilmente comprometidos
simplesmente pela tentativa de todas as senhas possíveis – uma
técnica conhecida por quebra por força bruta.
A maioria dos sistemas de hoje exige senhas mais longas que incluem
caracteres alfabéticos e numéricos para frustrar as tentativas de
invasão. Alguns sistemas até mesmo proíbem a utilização de palavras
do dicionário como valores de senhas. Contudo, senhas longas não
17
melhoram necessariamente a segurança de um sistema; se elas forem
difíceis de lembrar os usuários ficarão mais inclinados a anotá-las,
facilitando a obtenção da senha por um intruso.
A invasão das defesas de um sistema operacional não precisa resultar
necessariamente em um comprometimento significativo da segurança.
Por exemplo, suponha que um intruso consiga obter acesso à lista
mestra de senhas de um sistema. Se o arquivo de senhas estivesse
armazenado em texto comum, essa invasão permitiria ao intruso o
acesso a qualquer informação do sistema, assumindo a identidade de
qualquer usuário. Para reduzir a efetividade de um arquivo de senhas
roubado, muitos sistemas operacionais criptografam o arquivo de
senhas ou armazenam apenas valores de hash para cada senha.
Nesse caso, uma cópia do arquivo de senhas é de pouca utilidade, a
menos que o intruso possa decriptá-las. Para frustrar ainda mais as
tentativas de obter senhas, vários sistemas empregam o salpicamento
de senha; uma técnica que insere caracteres em várias posições da
senha antes de criptografá-la [...]. Uma pequena quantidade de
salpicamento pode alterar significativamente um texto cifrado, mesmo
quando se estiver utilizando uma cifra fraca, como uma cifra de
substituição (codificação base 64). O salpicamento pode evitar que
intrusos obtenham uma chave criptográfica com base em padrões
produzidos por senhas comuns após a criptografia.
[...]
Usuários são incentivados a trocar suas senhas frequentemente;
mesmo que um intruso obtenha uma senha, ela pode ser trocada antes
que algum dano real seja causado. Alguns sistemas exigem que os
usuários escolham novas senhas periodicamente. Infelizmente, alguns
usuários reutilizarão duas ou três senhas ciclicamente, o que reduz a
segurança geral. Como resposta, vários sistemas de autenticação
proíbem a reutilização das senhas escolhidas mais recentemente por
um usuário.
Uma defesa simples contra a quebra por força bruta e tentativas
repetidas de entrar a senha é limitar o número de tentativas de acesso
ao sistema que podem ser iniciadas em um certo período de tempo de
um único terminal ou estação de trabalho (ou de uma única conta). É
claro que as pessoas cometem erros ao tentarem obter acesso ao
sistema, mas não é razoável que alguém que saiba a senha correta
tenha de fazer dezenas, centenas ou milhares de tentativas. Portanto,
um sistema pode permitir três ou quatro tentativas e, então,
desconectar o terminal durante vários segundos ou minutos. Após um
período de espera, o terminal pode ser reconectado. (Ribeiro, 2005, p.
156-158, grifos nossos)
4.2 Controle de acesso
Na qualidade de gerenciador de recursos, o sistema operacional deve
se defender cuidadosamente contra utilizações não intencionais e
maliciosas de recursos de computação. Consequentemente, os
sistemas operacionais são projetados para proteger serviços de
sistema operacional e informações sensíveis contra usuários e/ou
softwares que obtiveram acesso aos recursos do computador. Direitos
de acesso protegem recursos e serviços do sistema contra usuários
potencialmente perigosos, restringindo ou limitando as ações que
podem ser executadas no recurso. Esses direitos normalmente são
gerenciados por listas de controle de acesso ou listas de capacidades.
[...]
Uma lista de controle de acesso armazena os mesmos dados que
uma matriz de controle de acesso, mas mantém um registro somente
das entradas que especificam um direito de acesso. A lista de controle
de acesso de um sistema pode ser baseada nas linhas (os sujeitos) ou
nas colunas (os objetos) de uma matriz. Para cada objeto de um
sistema operacional, uma lista de controle de acesso contém entradas
18
para cada sujeito e os privilégios associados àquele sujeito em relação
àquele objeto. Quando um sujeito tenta acessar um objeto, o sistema
procura pela lista de controle de acesso para aquele objeto para
identificar os privilégios daquele sujeito.
O problema desse método está na ineficiência com a qual o sistema
operacional determina os privilégios de usuário para determinado
objeto.A lista de controle de acesso para cada objeto contém uma
entrada para cada sujeito com privilégios para aquele objeto – uma lista
potencialmente grande. Toda vez que um objeto for acessado, o
sistema deve pesquisar a lista de sujeitos para encontrar os privilégios
adequados. Quando se usam listas de controle de acesso, é difícil
determinar quais direitos de acesso pertencem a um certo domínio de
proteção; é preciso pesquisar a lista de acesso para cada objeto,
procurando entradas relativas àquele objeto particular. (Ribeiro, 2005,
p. 161-164, grifos do original)
TEMA 5 – GERENCIAMENTO E PROTEÇÃO DE USUÁRIOS
A chave para a segurança do sistema operacional é controlar o acesso
a dados e recursos internos. Direitos de acesso definem como vários
sujeitos podem acessar vários objetos. Sujeitos podem ser usuários,
processos, programas ou outras entidades. Objetos são recursos como
hardware, software e dados; podem ser objetos físicos como discos,
processadores ou memória principal. Também podem ser objetos
abstratos como estruturas de dados, processos ou serviços. Sujeitos
também podem ser objetos do sistema; um sujeito pode ter direitos de
acesso a um outro. Sujeitos são entidades ativas; objetos são
entidades passivas. À medida que um sistema executa, sua população
de sujeitos e objetos tende a mudar. A maneira pela qual um sujeito
pode ter acesso a um objeto é denominada privilégio e pode incluir
leitura, escrita e impressão.
Objetos devem ser protegidos contra sujeitos. Caso fosse permitido
que um processo tivesse acesso a todos os recursos de um sistema,
um usuário poderia, inadvertida ou mal-intencionadamente,
comprometer a segurança do sistema ou causar a queda de outros
programas. Para impedir que tais eventos ocorram, cada sujeito deve
obter autorização para acessar objetos dentro de um sistema.
Um domínio de proteção é uma coleção de direitos de acesso. Cada
direito de acesso de um domínio de proteção é representado como um
par ordenado com campos para o nome do objeto e seus privilégios
correspondentes. Um domínio de proteção é exclusivo de um sujeito.
Por exemplo, se um usuário puder ler e escrever para o arquivo
example.txt, o par ordenado correspondente para o direito de acesso
desse usuário poderá ser representado por <example.txt/ {read,
write}>.
Os direitos de acesso mais comuns são ler, escrever e executar.
Alguns sujeitos também podem conceder direitos de acesso a outros
sujeitos. Na maioria dos sistemas de computação, o administrador
possui todos os direitos de acesso e é responsável pelo gerenciamento
dos direitos de outros usuários.
Direitos de acesso podem ser copiados, transferidos ou propagados de
um domínio para outro. Copiar um direito de acesso implica
simplesmente conceder um direito de um usuário a outro usuário.
Quando um direito de acesso é transferido do sujeito A para o sujeito
B, o direito de acesso do sujeito A é revogado quando a transferência
for concluída. Propagar um direito de acesso é similar a copiar um
direito de acesso; contudo, além de compartilhar o direito de acesso
original, ambos os sujeitos também podem copiar o direito para outros
sujeitos.
Quando um sujeito não precisa mais do acesso a um objeto, os direitos
de acesso podem ser revogados. Nesse caso surgem várias questões:
a revogação deve ser imediata ou tardia? A revogação deve ser
19
aplicada a todos os objetos ou apenas a alguns? A revogação deve ser
aplicada a sujeitos específicos ou a todo domínio? A revogação deve
ser permanente ou temporária? Cada implementação de
gerenciamento de direitos de acesso aborda a revogação de maneira
diferente. (Ribeiro, 2005, p. 161-162, grifos do original)
5.1 Gerência de proteção
A gerência de proteção de dados e usuários é outra importante tarefa de
gestão de recursos. Para Maziero (2019), “com computadores conectados em
rede e compartilhados por vários usuários, é importante definir claramente os
recursos que cada usuário pode acessar, as formas de acesso permitidas
(leitura, escrita etc.) e garantir que essas definições sejam cumpridas”. Por
exemplo, a proteção contra os ataques de negação de serviço (DoS, de denial
of service2), comuns na internet. É responsabilidade do sistema operacional do
servidor detectar e impedir ataques como esses, em que todos os recursos do
sistema são monopolizados por um único usuário.
Ainda para Maziero (2019), para proteger os recursos do sistema contra
acessos indevidos, é necessário:
a. “definir usuários e grupos de usuários”;
b. “identificar os usuários que se conectam ao sistema”, mediante
procedimentos de autenticação;
c. “definir e aplicar regras de controle de acesso aos recursos”, relacionando
todos os usuários, recursos e formas de acesso e aplicando essas regras
por meio de procedimentos de autorização;
d. “registrar o uso dos recursos pelos usuários, para fins de auditoria e
contabilização”.
Assim, um sistema operacional visa abstrair o acesso e gerenciar os
recursos de hardware, provendo aos aplicativos um ambiente de execução
abstrato, no qual o acesso aos recursos se faz através de interfaces simples,
independentes das características e detalhes de baixo nível, e no qual os
conflitos no uso do hardware são minimizados (Maziero, 2019).
O controle de identidade é imprescindível para a segurança da informação
e dos sistemas e requer um tratamento especial. Diferentemente do ambiente
2 Formas de ataque virtual que consistem na utilização de diversas técnicas para forçar um
servidor de rede a dedicar seus recursos para atender um determinado usuário, em detrimento
dos demais. Por exemplo, ao abrir milhares de conexões simultâneas em um servidor de e-mail,
um atacante pode reservar para si todos os recursos do servidor (processos, conexões de rede,
memória e processador), fazendo com que os demais usuários não sejam mais atendidos.
20
natural, no mundo digital a simulação de perfis ou identidades é algo
relativamente simples, exigindo muito dos dispositivos e técnicas de controle,
pois são esses controles que garantirão a autorização e a autenticidade das
operações, além do não repúdio. Além dessa garantia, tais controles também
têm que resistir ao roubo de identidades, evitando que agentes ou usuários mal-
intencionados possam simular ou passar-se por alguém devidamente autorizado
e, assim, realizar operações fraudulentas.
Os controles de acesso geralmente operam em conjunto com os
controles de verificação para estabelecer a devida autorização e
garantir a autenticidade das operações. A maioria dos sistemas baseia-
se no conjunto identificação (ID) e senha (password). Porém, para
muitas operações críticas e o uso de informações sensíveis, esses
controles não são suficientes.
“Controles biométricos, certificados digitais e assinaturas eletrônicas
complementam esses controles, e cada vez mais é necessário o uso de técnicas
e mecanismos que garantam a identidade dos agentes”, mas que, ao mesmo
tempo, permitam a “independência do ambiente, a flexibilidade e a interatividade
com diversas tecnologias e funcionalidades, além de um desempenho elevado”,
em um mundo extremamente veloz e cada vez mais conectado. O processo de
identidade e autorização é parte importante da proteção, especialmente no que
diz respeito à autenticação do usuário remoto – aquele que pleiteia o acesso à
rede, aos recursos computacionais e à informação estando fora do perímetro de
segurança da organização (Paulo, 2020).
O processo de identificação, segundo Paulo (2020), precisa ser
completado com verificação, com base em processos de autenticação já
apresentados:
• algo que o indivíduo sabe: sua identidade (por meio de personal
identification number – PIN) e as suas senhas;
• algo que o indivíduo possui: um token, uma chave criptográfica ou física
ou um smart card;
• algo que o indivíduo é: biometria estática, como a digital ou a íris;
• algo que o indivíduofaz: biometria dinâmica, como por padrão de voz,
caligrafia e taxa de digitação.
21
FINALIZANDO
Nesta aula, foram apresentados os conteúdos que complementam a
fundamentação teórica de sistemas operacionais, com ênfase em gerência e
proteção de usuários, com os conceitos e definições de segurança apresentados
no primeiro tema. No segundo tema, os riscos, as ameaças e as vulnerabilidades
dos sistemas operacionais foram analisados e definidos individualmente,
enfatizando a importância de manter os sistemas seguros. No tema seguinte, foi
abrangida a criptografia, assim como os seus objetivos e tipos, com destaque
para o item 3.3, que descreve a PKI. Na sequência, foram definidas e
apresentadas a autenticação, o gerenciamento e o controle de acesso, para, por
fim, serem analisados o gerenciamento e a proteção de usuários.
Ao confiarmos o armazenamento e o desenvolvimento de informações
nos arquivos ou mesmo a segurança de acesso a um ambiente restrito, utilizando
uma fechadura eletrônica, é fundamental que lembremos que há um sistema
operacional responsável por garantir a segurança desses arquivos, pois, se
houver algum código malicioso não tratado, criminosos podem se valer dessa
vulnerabilidade e conseguir o acesso total e irrestrito ao sistema, abrindo
facilmente a fechadura. Portanto, o conhecimento das características dos
sistemas operacionais é fundamental para o bom funcionamento de todas as
atividades desenvolvidas pelos computadores.
Em paralelo à leitura do texto desta aula, é muito importante que sejam
consultadas as referências indicadas e as atividades práticas sejam realizadas,
pois a gestão da TI, que envolve pessoas, empresas e indústrias, tem como
principal aliado o sistema operacional e as ferramentas aqui apresentadas.
Indicada em todos os tópicos, a especialização em sistemas operacionais
específicos de diferentes fabricantes, cada um com suas características,
vantagens e desvantagens, permite aos gestores a melhor e mais adequada
escolha a cada situação de uso, obedecendo aos padrões e normas
internacionais, proporcionando o uso mais eficiente dos recursos e obtendo
melhores resultados.
Aproveite e bons estudos!
22
REFERÊNCIAS
ABNT – Associação Brasileira de Normas Técnicas. ABNT NBR ISO/IEC
27002:2013: Tecnologia da informação – Técnicas de segurança – Código de
prática para controles de segurança da informação. Rio de Janeiro, 2013.
CELESTINO, P. Redes virtuais privadas. 90 f. Dissertação (Mestrado em
Automação) – Universidade de Taubaté, Taubaté, 2005. Disponível em:
<http://livros01.livrosgratis.com.br/cp012541.pdf>. Acesso em: 31 out. 2020.
DEITEL, P. J.; DEITEL, H. M.; CHOFFNES, D. R. Sistemas operacionais. 3.
ed. São Paulo: Pearson, 2017.
MAZIERO, C. Sistemas operacionais: conceitos e mecanismos. Curitiba:
Editora UFPR, 2019.
MICHAELIS dicionário brasileiro da língua portuguesa. São Paulo: Editora
Melhoramentos, 2015. Disponível em: <https://michaelis.uol.com.br/>. Acesso
em: 31 out. 2020.
MICROSOFT. Introducing Kernel Data Protection, a new platform security
technology for preventing data corruption. Security, 8 jul. 2020. Disponível em:
<https://www.microsoft.com/security/blog/2020/07/08/introducing-kernel-data-
protection-a-new-platform-security-technology-for-preventing-data-corruption/>.
Acesso em: 31 out. 2020.
MOTA, R. P. B. Extensões ao protocolo de comunicação EPCGlobal para
tags classe 1 utilizando autenticação com criptografia de baixo custo para
segurança em identificação por radiofrequência. 91 f. Dissertação (Mestrado
em Ciência da Computação) – Centro de Ciências Exatas e de Tecnologia,
Universidade Federal de São Carlos, São Carlos, 2006. Disponível em:
<https://repositorio.ufscar.br/bitstream/handle/ufscar/312/DissRPBM.pdf>.
Acesso em: 31 out. 2020.
PAIVA, M. A. L.; LÓPEZ, V. C. O documento, a firma e o notário eletrônico.
Jus.com.br, jan. 2002. Disponível em: <https://jus.com.br/artigos/2504>.
Acesso em: 31 out. 2020.
PAULO, L. G. Segurança em sistemas de informação. [S.l], 2020.
23
PISTELLI, D. Criptografia. [S.l.]: Geek Brasil, [S.d.]. Disponível em:
<http://www.josevalter.com.br/download/seguranca/Criptografia.pdf>. Acesso
em: 31 out. 2020.
RIBEIRO, R. Sistemas operacionais: apostila. [S.l.]: [S.n.], ago. 2005.
Disponível em:
<http://brunotoledoifmg.com/SO/Apostilas/Apostila%20Sistemas%20Operacion
ais.pdf>. Acesso em: 1 nov. 2020.
RODRIGUES, T. P. Entendendo PKI. Thiago Pereira Rodrigues Technology
Blog, 12 ago. 2009. Disponível em:
<https://thiagoprodrigues.wordpress.com/2009/08/12/entendendo-pki/>. Acesso
em: 1 nov. 2020.
TREND MICRO. Ramsomware. [S.l.], [20--]. Disponível em:
<https://www.trendmicro.com/vinfo/us/security/definition/ransomware>. Acesso
em: 30 out. 2020.
UFRGS – Universidade Federal do Rio Grande do Sul. Certificado digital da
UFRGS: instalação. Porto Alegre, [20--]. Disponível em:
<http://www.ufrgs.br/tri/cpd/servicos/seguranca/certificado-digital-da-ufrgs-
instalacao>. Acesso em: 1 nov. 2020.
ZANLUCA, A. Aumento de ataques cibernéticos alertam para a necessidade de
se ter cuidados com a proteção. Entreverbos, 24 jun. 2020. Disponível em:
<https://www.entreverbos.com.br/single-post/2020/06/24/Aumento-de-ataques-
cibernéticos-alertam-para-a-necessidade-de-se-ter-cuidados-com-a-proteção>.
Acesso em: 30 out. 2020.
http://www.josevalter.com.br/download/seguranca/Criptografia.pdf
http://www.ufrgs.br/tri/cpd/servicos/seguranca/certificado-digital-da-ufrgs-instalacao
http://www.ufrgs.br/tri/cpd/servicos/seguranca/certificado-digital-da-ufrgs-instalacao