Sistemas Operacionais

Problemas comuns com dispositivos móveis

Os dispositivos móveis são comuns. No entanto, um monte de problemas comuns também ocorrem que poderiam ser maneiras fáceis para um atacante causar danos:

  • Um dos problemas mais comuns com dispositivos móveis é que muitas vezes eles não têm senhas definidas, ou as senhas são incrivelmente fracas. Enquanto alguns dispositivos oferecem sistemas biométricos simples de usar e eficazes para autenticação em vez de senhas, eles estão longe de ser um padrão. Embora a maioria dos dispositivos suporte senhas, códigos PIN e autenticação baseada em gestos, muitas pessoas não usam esses mecanismos, o que significa que se o dispositivo for perdido ou roubado, seus dados podem ser facilmente acessados.
  • Conexões sem fio desprotegidas também são um problema conhecido em muitos dispositivos e parecem ser piores em dispositivos móveis. Isso é mais do que provável, devido aos proprietários desses dispositivos estarem fora e em busca de  um ponto de acesso aberto e conectar sem levar em conta se ele está protegido ou não.
  • Problemas de malware parecem ser mais um problema com dispositivos móveis do que com outros dispositivos. Isto é devido aos proprietários que transferem apps do Internet com pouca preocupação que podem conter o malware e não ter um scanner antimalware no dispositivo.
  • Os usuários negligenciam a instalação de software de segurança em dispositivos móveis, mesmo que esse software esteja prontamente disponível nos principais fornecedores sem restrições e seja gratuito. Muitos proprietários desses dispositivos podem até acreditar que o malware não existe para dispositivos móveis ou que eles são imunes.
  • Softwares descontinuados e desatualizados do sistema operacional é um grande problema. Da mesma forma que os sistemas de desktop, patches e correções para software de SO móvel também são liberados de vez em quando. Esses patches podem não ser aplicados por uma série de razões. Quando isso acontece, os patches e atualizações que o Google lança podem não funcionar nas versões alteradas pelas operadoras. Nesse caso, você precisaria aguardar que sua operadora faça alguma atualização para seu dispositivo antes de poder aplicar o patch. Este processo pode levar meses ou mesmo um ano e em alguns casos nunca.
  • Muito parecido com o sistema operacional, pode haver software no dispositivo que não está corrigido e está desatualizado.
  • Conexões com a Internet podem estar ligadas e inseguras, o que pode levar alguém a entrar no sistema da mesma maneira que uma invasão outra sistema.
  • Os dispositivos móveis podem estar enraizados ou jailbroken, o que significa que se esse dispositivo estiver conectado à sua rede, pode ser uma maneira fácil de introduzir malware em seu ambiente.
  • A fragmentação é comum em dispositivos Android. Especificamente, isso se refere ao fato de que, ao contrário do iOS, há um grande número de versões do sistema operacional Android com diferentes recursos, interfaces e muito mais. Isso pode levar a problemas de suporte para a empresa devido à quantidade de variação e inconsistência.

(mais…)

Modelos de segurança mobile

Então, como os arquitetos mobiles construíram seus sistemas com um olho voltado para resolver problemas de segurança? Várias medidas foram tomadas, mas no geral tem havido uma tentativa de abordar o problema da segurança através de cinco áreas-chave, cada uma abordando um problema específico ou necessidade:

  • O controle de acesso é usado para proteger dispositivos, que inclui senhas, biometria e tecnologias de menor privilégio, por exemplo;
  • A assinatura digital tornou-se parte do modelo de aplicação da maioria, se não de todos os S.O. móveis. Esse recurso permite que os aplicativos sejam assinados para que eles possam ser verificados de que eles são originários de um autor específico e não podem ser manipulados sem que tais atividades sejam detectadas. Embora a assinatura digital não seja necessária, o Android não permitirá a instalação de aplicativos de fontes desconhecidas por padrão. No iOS, aplicativos de fontes desconhecidas não podem ser instalados, a menos que o proprietário modifique ou use “jailbreaks” para que o telefone permita isso;
  • A criptografia é outro componente vital do modelo de segurança de um sistema operacional móvel. A criptografia é empregada em dispositivos para garantir que os dados sejam mantidos seguros no caso de um dispositivo ser perdido, roubado ou comprometido. Embora não consistentemente implementado em muitos dispositivos móveis no passado, isso mudou, com o Android 6.0 (codinome Marshmallow), mesmo exigindo criptografia de armazenamento por padrão;
  • Isolamento, que visa limitar o acesso de um aplicativo tem, é uma questão importante abordada em dispositivos móveis. Essencialmente, esta é uma forma de privilégio mínimo para aplicativos, onde se você não precisa acessar dados sensíveis ou processos, você não o fará.
  • O controle de acesso baseado em permissões funciona de forma semelhante aos sistemas operacionais de servidor e desktop. Esse recurso limita o escopo de acesso de um aplicativo bloqueando as ações que o usuário pode tentar, mas não foi concedido acesso a ele.

(mais…)

Entendendo as aplicações Web

Em essência, uma aplicação web é um software que é instalado em um servidor web e é projetado para responder a solicitações, processar informações, armazenar informações e dimensionar as respostas de acordo com a demanda e, em muitos casos, é distribuído em vários sistemas ou servidores.

Ao contrário de alguns anos atrás, as aplicações web vêm em três variações:

  1. Baseado em Navegador – Incluem código que pode ter sido parcialmente processado no servidor, mas é executado no próprio navegador Web. Tal aplicação tem a capacidade de acessar dados armazenados em um servidor, bem como no sistema local ou ambos, dependendo do design;
  2. Baseados no cliente – São essencialmente semelhantes às aplicações baseadas em navegador, mas em vez de serem executados dentro do navegador, são executados como aplicação própria. Aplicações que exigem que sejam instaladas do lado do cliente se encaixam nesta categoria;
  3. Aplicativos móveis – São, de longe, o tipo mais comum encontrado hoje em dia. Para ser incluído nesta categoria o aplicativo normalmente é executado em um sistema operacional móvel, como aqueles executados em smartphones e tablets, principalmente Android do Google ou iOS da Apple;

Então, o que todos esses tipos têm em comum? Cada um deles, tem alguma capacidade de processar informações em um servidor antes de fornecer as informações para o lado do cliente. (mais…)

Entendendo o que é Negação de Serviço (Denial of Service – DoS)

A negação de serviço é um ataque que visa impedir a comunicação normal com um recurso, desabilitando o próprio recurso ou desabilitando um dispositivo de infraestrutura que forneça conectividade a ele. O recurso desativado pode ser na forma de dados do cliente, recursos do site ou um serviço específico, por exemplo. A forma mais comum de DoS é inundar uma vítima com tanto tráfego que todos os recursos disponíveis do sistema estarão sobrecarregados e incapazes de lidar com pedidos adicionais. O invasor inunda a rede de vítimas com quantidades extremamente grandes de dados inúteis ou solicitações de dados, esmagando a rede e tornando-a inútil ou indisponível para usuários legítimos.

Então, quais são os sinais de um potencial ataque DoS? (mais…)

É melhor desligar, hibernar ou suspender meu computador?

Você já deve ter ouvido em desligar o computador, suspendê-lo (dormir) ou hiberná-lo. Mas o que cada uma dessas funções faz? Qual é a melhor escolha se vou ficar uma hora, cinco horas ou dias afastado do computador? Você já deve ter se deparado com uma situação que precisou sair por uma ou duas horas e teve que desligar o computador, levando bastante tempo na volta até conseguir retomar suas atividades. O fato é que suspendendo ou hibernando o computador  o consumo de energia continua ocorrendo, porém de forma mais reduzida. Vamos ver o que faz cada uma dessas funções, suas recomendações e desvantagens: (mais…)

Virtualização – VMWare e Xen

A virtualização consiste na emulação de ambientes isolados, capazes de rodar diferentes sistemas operacionais dentro de uma mesma máquina, aproveitando ao máximo a capacidade do hardware, que muitas vezes fica ociosa em determinados períodos do dia, da semana ou do mês.  Esse aproveitamento é maior devido à possibilidade de fornecer ambientes de execução independentes a diferentes usuários em um mesmo equipamento físico, concomitantemente.

Além disso, esse procedimento diminui o poder dos sistemas operacionais, que, muitas vezes, restringem o uso do hardware, quanto à utilização de software. Isso acontece porque softwares normalmente só rodam sobre o sistema operacional para o qual foram projetados para rodar. Diferentes sistemas operando em uma mesma máquina aumentam a gama de softwares que podem ser utilizados sobre o mesmo hardware.

Essa técnica, muito empregada em servidores, ainda tem como vantagem oferecer uma camada de abstração dos verdadeiros recursos de uma máquina, provendo um hardware virtual para cada sistema, tornando-se também uma excelente alternativa para migração de sistemas. (mais…)

Swapping x Paginação x Segmentação x Memória Virtual

Swapping

Existem situações onde não é possível manter todos os processos na memória.
Ex: um processo já alocado na memória faz uma chamada de sistema pedindo mais memória e não existe memória livre contígua a área onde o mesmo está alocado um usuário dispara um programa, não existe memória disponível mas é política dos sistema disparar imediatamente todos os programas solicitados de terminal.Usando o swapping o sistema escolhe um programa residente que é levado da memória para o disco (swap-out ) retornando posteriormente para a memória (swap-in). (mais…)

Sistemas de Arquivos NTFS, FAT16, FAT32, EXT2 e EXT3

Os sistemas de arquivos é a parte do SO responsável pelo gerenciamento dos arquivos (estrutura, identificação, acesso, utilização, proteção e implementação). Ou seja, é um conjunto de tipos abstratos de dados que são implementados para o armazenamento, a organização hierarquica, a manipulação, navegação, acesso e recuperação de dados.

Entenda que um arquivo é um recipiente no qual os dados são armazenados, tendo ele um significado para o sistema ou usuário, e estes podem ser programas executáveis, texto, figura, etc. Todos os arquivos possuem um nome o qual o usuário faz referência a ele. Além do nome, cada arquivo possui uma série de outros atributos que são mantidos pelo sistema operacional como tipo de conteúdo, tamanho, data e hora do último acesso, data e hora da última alteração, lista de usuários que podem acessar o arquivo, etc. (mais…)

RAID: Conceito e Tipos

RAID significa em português Conjunto Redundante de Discos Independentes/Econômicos (inglês: Redundant Array of Independent/Inexpensive Drives) que tem como objetivos aumentar a velocidade de acesso aos dados através de uma divisão de dados (data stripping ou RAID 0), aumentar a segurança através de espelhamento (mirroring ou RAID1) e até aumentando a capacidade total, podendo estas técnicas serem utilizadas de forma isolada ou em conjunto.

A idéia do RAID é criar uma unidade lógica que identifica os discos como se fossem um só no sistema. (mais…)

O que é Kernel?

O Kernel é um componente do Sistema Operacional, mas fica tão escondido que a maioria dos usuários domésticos sequer ouviu falar nele. Isso se deve à sua importância: ao contrário do que pode parecer, ele é tão essencial para o funcionamento de um computador que é melhor mantê-lo a salvo de pessoas bisbilhoteiras e inexperientes. (mais…)