Mandatory Access Control – AppArmor

Um servidor bem permissionado significa um servidor mais seguro. Isso desde os primórdios até os dias atuais. Por isto, devido a essa poderosa e conservadora forma de evitar ataques apresentaremos neste artigo como se proteger de modo eficiente.

Mandatory Access Control (MAC) e Discretionary Access Control (DAC)

MAC e DAC são dois modelos de controle de acesso que se diferem nas entidades que especificam as permissões.

No modelo DAC as permissões de um recurso são especificadas pelo utilizador que é dono do recurso. O dono do recurso decide quem pode, ou não pode, realizar as varias operações sobre o recurso (o conjunto de operações de um recurso varia conforme o tipo do recurso, um arquivo, um socket, etc). Um exemplo do modelo DAC é o controle de acesso a arquivos num sistema UNIX, onde as permissões de leitura escrita e execução são especificadas pelos donos dos arquivos. O problema do modelo DAC é que qualquer processo iniciado por um utilizador tem as mesmas permissões que esse utilizador. Isto pode comprometer a segurança, caso uma aplicação tenha algum bug ou seja uma aplicação “mal intencionada”, pois a aplicação tem as mesmas permissões que o utilizador que a iniciou.

No modelo MAC as permissões são especificadas pelo sistema. Essas permissões são baseadas numa política global, no nível de segurança do utilizador e na classificação do recurso. A política de segurança não pode ser alterada ou removida a não ser pela utilização de operações privilegiadas. Este modelo permite implementar uma política de segurança que siga o princípio least privilege, onde cada aplicação apenas deve ter autorização para realizar as operações estritamente necessárias para o seu bom funcionamento, sendo as restantes operações não permitidas. Desta forma é criado um ambiente mais seguro, pois é limitada a quantidade de estragos que uma aplicação “mal comportada” pode fazer. Por exemplo, se limitarmos o acesso de uma aplicação editora de texto apenas ao que está sendo editado, mesmo que a aplicação tenha alguma vulnerabilidade, esta não conseguirá comprometer mais nada além do arquivo que está sendo editado.

O DAC é bem conhecido, e este artigo não contemplará ele. Focaremos no MAC, razoavelmente pouco conhecido, mas muito eficaz.

Atualmente existem vários tipos de MACs: SELinux da Red hat, AppArmor utilizado no Ubuntu, Smack um MAC focando em simplicidade e o Tomoyo que possui uma espécie de inteligência artificial baseada no histórico de ações tomadas previamente. Destacaremos, de forma breve, o poder de fogo do AppArmor.

AppArmor

O AppArmor foi incluído no kernel Linux oficial em sua versão 2.6.36, mas seu desenvolvimento (e uso) começou já em 1998, na distribuição GNU/Linux Immunix. Com a aquisição pela Novell em 2005, o AppArmor (aparentemente o principal motivo da aquisição) foi adotado no SUSE Linux Enterprise. Num caso infeliz e bastante noticiado, no entanto, em 2007 a equipe de desenvolvimento do AppArmor foi dispensada pela empresa.

O AppArmor se baseia nos caminhos dos arquivos para definir seu contexto de segurança. Os arquivos de configuração, assim com os domínios de segurança, estão nos diretórios /etc/apparmor/ e /etc/apparmor.d/.

Assim como os demais sistemas MAC, o AppArmor também dispõe de dois modos de operação: enforcement (ativo) e complain (reclamação, equivalente ao permissivo do SELinux: relata violação das políticas mas não impede nada).

Para desabilitar o AppArmor como um todo, basta parar o serviço deste.

As políticas se localizam em /etc/apparmor.d/. Dentro deste diretório, temos os mais vastos serviços ou utilitários que rodam sobre a autoridade do AppArmor. Por exemplo:

                      /usr/sbin/tcpdump → /etc/apparmor.d/usr.sbin.tcpdump

                      /sbin/dhclient3 → /etc/apparmor.d/sbin.dhclient3

O perfil é associado ao programa no momento em que este é executado. Portanto, como nos informa a man page do AppArmor, não é possível confinar um programa que já esteja em execução.

Os perfis em uso, juntamente com seus respectivos modos de operação no momento, podem ser obtidos com uma consulta ao securityfs (já montado por padrão pelo Ubuntu):

                      root@Umbreon ~ # cat /sys/kernel/security/apparmor/profiles

                      /usr/sbin/tcpdump (enforce)

                      /usr/lib/connman/scripts/dhclient-script (enforce)

Esta saída significa que nosso sistema atualmente tem quatro perfis de segurança, para os dois programas exibidos na saída, e o modo de operação de todos eles é o enforce.

O AppArmor trabalha com o daemon auditd para exibir suas mensagens. Se o audit não estiver instalado, ele utilizará as mensagens de kernel normal do Linux, ou seja, o syslog. É muito interessante instalar o auditd e utilizá-lo para que tenhamos um log limpo do nosso sistema e do que ocorre com ele.

A visualização do MAC AppArmor é simples. Basta executarmos o comando apparmor_status, que surgem nossos perfis e políticas:

               root@lab01 ~ # apparmor_status

               apparmor module is loaded.

               24 profiles are loaded.

               2 profiles are in enforce mode.

                /sbin/dhclient3

                /usr/sbin/tcpdump

              4 profiles are in complain mode.

              /bin/ping

              /usr/lib/dovecot/pop3

             /usr/lib/dovecot/pop3-login

             /usr/sbin/avahi-daemon

            4 processes have profiles defined.

             1 processes are in enforce mode :

            /sbin/dhclient3 (859)

           1 processes are in complain mode.

            /usr/sbin/nmbd (825)

Para alterar perfis do AppArmor basta utiliza o sintaxe:

aa-mode command

            root@lab01 ~ # aa-enforce /bin/ping

            root@lab01 ~ # aa-complain /etc/apparmor.d/*

Já me disseram que o AppArmor não é tão bom por ser muito fácil de desativar — basta parar o serviço. Porém, não creio que essa característica seja, de fato, uma falha de segurança. O próprio bootloader GRUB possui opções como essa.

A comparação do AppArmor com o SELinux é inevitável, uma vez que estes são os dois únicos sistemas MAC a virem ativados por padrão em alguma distribuição GNU/Linux. O SELinux em Red hats e o AppArmor no Ubuntu. De uma forma geral, enquanto o SELinux é capaz de se interpor fortemente entre o administrador e seu objetivo, o AppArmor parece ser menos intrusivo.

Todavia, como segurança e facilitade são sempre opostas, tem-se a impressão de que o AppArmor é menos seguro, já que este, possui menos inconvenientes. O importante, no entanto, é alcançar o objetivo principal dos sistemas MAC: o controle de acesso. Se seu sistema MAC preferido é capaz de bloquear o acesso de serviços do sistema a arquivos sensíveis, seja ele AppArmor ou SELinux, parabéns pela segurança implementada.

Monitoração – Essência de qualquer alta disponibilidade

Nagios é uma ferramenta muito interessante (e eficiente) para monitorar serviços e servidores. Por outro lado, pode ser uma tarefa árdua e trabalhosa para alguns. Precisam ser investidas algumas horas em cima de vários arquivos de configurações para poder colocá-lo em funcionamento. Nós da Intercom vimos o quanto isso pode tirar a eficiência do Nagios para os nossos clientes, pois hoje todos têm horror a qualquer serviço ou aplicação sem interface gráfica. Por isso apresentamos o Nagios Web Config.

O Nagios Web Config é um software que serve para configurar os hosts, serviços, grupos de hosts, comandos e todas as demais configurações do Nagios (exceto a configuração inicial do mesmo) de forma visual e prática utilizando para isso o seu browser. Por isso mesmo, ele já foi planejado para ser implementado na própria sidebar do Nagios, o que facilita ainda mais seu uso.

E como ele trabalha ? Ao ir adicionando/deletando/editando as configurações ele vai armazenando as mesmas em um DB MySQL. Depois você pode solicitar que ele escreva as configurações e ele próprio irá gerar os arquivos necessários sem que haja necessidade de editá-los manualmente. Além disso, como os dados ficam num DB caso você precise reinstalar o servidor (ou por exemplo decida colocar o Nagios em outro servidor), não haverá necessidade de refazer todas as configurações.

 

Para quem ainda não conhece, o Nagios Web Config é uma excelente ferramenta que permite configurar o Nagios através do browser, tornando essa tarefa muito mais rápida e agradável.

 

Outro amigo dos profissionais que trabalham com o Nagios realizando monitoração é o  nagstamon. Este é um software que permite que você controle múltiplos servidores Nagios diretamente no seu desktop, sem a necessidade de uso do browser. Ele pode residir no systray ou pode ser visualizado como uma barra de status flutuante, resumindo ou exibindo todos os alarmes existentes. Além disso, ele possibilita a conexão aos servidores pelo seu menu de contexto, possui alarmes sonoros e também permite o uso de expressões regulares e categorias para realização de filtros, entre tantos outros recursos.

Leia a lista completa de recursos e baixe o software aqui.

Juntamente com o Nagiosweb essa é uma ferramenta essencial para administradores de servidores Nagios.

 

 

Se você tem um nagios, talvez verificar os hosts pelo painel do próprio não seja tão eficiente quanto utilizar o Nagstamon.

Claro que você pode configurar o Nagios pra enviar email, sms etc. Mas se você não olha freneticamente todos os emails que chegam e também não liga muito para os sms que chegam, você instala esse nagstamon e ele fica no canto no Painel da sua máquina, e então atualiza constantemente e mostra os alarmes que estão rodando pra você.

Olha só um exemplo simples que ta aqui na minha máquina agora:

E quando você passa a barra por cima do Warning, ele mostra mais detalhes:

Pra instalar esse cara no Debian por exemplo: basta executar um aptitude install nagstamon. É possível compilá-lo utilizando o tar.gz também contido no sourceforge.

 

Depois de instalado vá em Aplicativos -> Sistema e abra o programa.

Aparecerá uma tela como essa:

Não vou detalhar, pois o que se deve inserir em cada campo é bem sugestivos.

E fim! Só dar o OK e nem precisa olhar email nem nada, porque os alarmes irão piscar direto no seu painel!

Pra quem usa firefox, existem plugins para ver alarmes como este.

 

Voxblue – Migração de Infraestrutura Cloud

Recentemente, a Intercom executou uma migração típica “cloud/cloud”: mudamos uma estrutura de servidores Linux anteriormente hospedados na Linode.com para Amazon Web Services, para a empresa Voxblue.

A Voxblue possui um conjunto de ferramentas Internet voltadas para comunicação empresarial via email e redes sociais. Atua no segmento corporativo. Anteriormente, hospedava seus servidores Linux na Linode.com, que é um provedor de serviços Linux VPS/Cloud com excelente reputação técnica e no atendimento, e apresentava custos razoáveis.

A migração foi precedida por minucioso estudo de viabilidade. Os recursos técnicos de “cloud computing” – CPU, memória, espaço de disco, banda de Internet, snapshots, backups, balanceadores, DNS, etc., foram avaliados e dimensionados de forma equivalente. Um ambiente de testes foi montado com AWS, idêntico ao ambiente existente na Linode.com, para testar as funcionalidades das aplicações Voxblue. Um detalhado plano foi definido para execução da migração na data de corte estabelecida.

A principal razão para a migração foi econômica. A Linode.com oferece vários pacotes de serviços pré-determinados (número de CPUs, quantidade de memória, espaço de disco, volume de tráfego mensal – veja os planos aqui), com pagamento antecipado mensal, e oferece descontos de 10% para assinaturas pré-pagas de 1 ano, e 15% para 2 anos. Mas a Amazon Web Services oferece um desconto vencedor: para Instâncias Reservadas por 3 anos com pagamento antecipado, o desconto chega a 75%!  Tendo um plano agressivo de crescimento da Voxblue nos próximos 36 meses, manter a plataforma estável e operacional num mesmo provedor de “cloud computing” por 3 anos é uma boa decisão de planejamento. O resultado desta migração é uma redução de custo operacional de datacenter da ordem de 80%, liberando recursos que serão injetados para pesquisa e desenvolvimento de novos produtos.

 

Cloud Computing – Falhas e Recuperação de Desastres

Na região norte do estado da Virgínia, EUA, a Amazon Web Services mantém duas “zonas de disponibilidade” em dois datacenters. “Zonas de disponibilidade” são definidas como “localidades físicas distintas que são projetadas para ficarem isoladas uma das outras quando há falhas”. Em 29 de Junho passado, uma pesada tempestade atingiu esta região e derrubou a energia elétrica pública. Em um dos datacenters, o chaveamento automático para gerador de backup falhou por causa de uma sobretensão, o que causou quedas de inúmeras instâncias EC2 e bug inédito de software no “Elastic Load Balancer”, resultando em indisponibilidade de até 6 horas.

Além de problemas com eventos do tempo (estado atmosférico), “cloud computing” ainda é baseado em equipamentos físicos, e eles também falham. Por isso, provedores e usuários de “cloud computing” devem sempre ter planos de recuperação de desaster (DR).

Já é prática comum para grandes provedores de “cloud computing” distribuir recursos entre  datacenters físicos distintos e regiões geográficas distintas. Recentemente o conceito de “cloud balancing” começa a ganhar popularidade, pois permite que tráfego e carga de processamento seja distribuído e assumido por múltiplos datacenters distintos, trazendo como benefício a melhora na redundância e disponibilidade para seus usuários.

Mas usuários que dependem de “cloud computing” para fazer negócios devem sempre planejar a recuperação de desastres e a continuidade dos seus negócios. Contratar provedores de “cloud computing” independentes ou distribuir sua aplicação em várias regiões geográficas distintas são alternativas que devem ser consideradas seriamente, apesar dos seus maiores custos de operação adicionais.

 

Ulimit – Ilimitando sua administração

Hoje, teremos como objetivo esclarecer como impôr limites a nível de processos em execução, quotas de memória, quotas de espaço em stack, número de arquivos abertos, etc.

Isto pode ser útil para evitar que um usuário ou serviço utilize sem limites o recurso do hardware. Com as políticas ulimit devidamente aplicadas estamos protegidos de gargalos de recursos, e consequentemente, crash do sistema.

Um detalhe importante sobre o ulimit é que ele se relaciona com a shell que você utiliza. Porém, mesmo executando uma nova shell diferente dentro da sua shell padrão, os limites se aplicam, pois a nova shell é um processo child daquela que impõe os limites, herdando tudo da mesma, com exceção do pid.

Portando para burlar o ulimit, o utilizador deve programar uma shell do zero e posteriormente setá-la como shell padrão. Isso porque o administrador pode aplicar os limites a todas as shells disponíveis no sistema. A única maneira de burlar é desenvolvendo uma shell que o administrador não setou tais limites. Desta forma, temos que as regras ulimit são seguras.

 
Os limites disponíveis

Abaixo a lista de possíveis limites:

  • Tamanho de arquivos core
  • Tamanho do segmento de stack
  • Tamanho do segmento de dados
  • Memória alocável
  • Número máximo de processos
  • Tamanho de arquivos
  • Tamanho máximo dos pipes
  • Número de filedescriptors (arquivos abertos)
  • Tempo de utilização de cpu
  • Tamanho máximo de memória virtual

Core – Tamanho máximo de um arquivo cujo contéudo de memória de um processo é escrito para um arquivo quando este crasha.

Stack – Espaço máximo que um utilizador pode ocupar na stack ou pilha de dados. A stack é utilizada para passar parâmetros nas chamadas de sub-rotinas, ou para guardar o estado da máquina em sistemas multi-programadas.

Seg. Dados – É o tamanho máximo que o segmento de dados de processos do usuário pode ocupar. Um processo tem um mapa de memória, e este divide-se em zonas, e uma delas é o segmento de dados.

Memória – Alocação máxima de memória que o usuário pode utilizar.

Processos – É o numero máximo de processos que o usuário pode ter, isto é, o número máximo de programas em execução que o utilizador pode ter. Ou seja, processos child da shell, porque no caso do X-Windows, este número não tem limite.

Tamanho de Arquivos – É o tamanho maximo que um arquivo pode ter, claro que isto também é limitado pelo espaço livre no sistema de arquivos e o tipo de sistema de arquivos definido, uma vez que, dependendo do sistema de arquivos utilizado, temos um limite por arquivo. Por exemplo: FAT32 possui o limite de aproximadamente 2GB/arquivo.
Tamanho Pipes – Tamanho máximo que um pipe pode ter. Pipe é um mecanismo de
comunicaçao entre processos da mesma família.

Número Filedescriptor – Número máximo de filedescriptors que podem estar abertos.
Filedescriptor é uma ligação entre um processo e um arquivo em disco. De uma forma mais simples, esta opção permite impor um número máximo de arquivos abertos.

Tempo de CPU – Tempo máximo que o usuário tem para utilizar o CPU. Desta forma, definimos o tempo a partir do qual ele não pode utilizar mais o processador.

Tamanho Memória Virtual – Tamanho máximo de memória virtual que o usuário pode utilizar.

FAQ – Gravação de Câmeras IP Intercom

  • Por que usar um serviço de gravação de câmeras IP?

Câmeras IP permitem monitorar um ambiente em tempo real, pela Internet. Mas não é viável monitorar constantemente, daí a necessidade de um serviço de gravação das imagens.

  • Como funciona a gravação de câmeras IP?

Esta figura ilustra os vários elemetos envolvidos num sistema de gravação de câmeras IP:

A gravação ocorre em servidores com software especializado, instalados em datacenter da Amazon Web Services. A câmera IP é configurada para enviar as imagens para serem capturadas pelo software de gravação. A visualização pode ser feita por qualquer computador, smartphone ou tablet com acesso à Internet.

  • Tenho uma banda-larga Internet, via cabo/rádio/telefone, consigo usá-la para gravação?

Sim, uma banda-larga convencional tipo Net Virtua ou Telefonica Speedy ou serviço de rádio, permite até 2 câmeras IP enviar suas imagens para serem gravadas.

  • Tenho uma banda-larga 3G, consigo usá-la para gravação?

Não é recomendada, porque não há garantias de banda disponível, e a latência (demora para transmissão de imagens) é grande e varia muito ao longo do dia.

  • Quais modelos de câmeras IP são compatíveis com o serviço de gravação?

Há muitas marcas e modelos de câmeras IP à venda no mercado. Como regra geral, câmeras que permitem visualizar sua imagem com browsers Google Chrome ou Mozilla Firefox podem ser gravadas. Câmeras que só permitem visualização de imagens pelo Microsoft Internet Explorer não são compatíveis, pois requerem componentes ActiveX especializados.

  • Quais são as modalidades de gravação?

Oferecemos 2 modalidades: gravação contínua ou por movimento. A gravação contínua é continuamente, 24 horas por dia. A gravação por movimento ocorre apenas quando o software de gravação detectar movimentos dentro de uma área de alarme pré-definida.

  • O que é uma área de alarme?

É uma região pré-definida dentro do campo de visão da câmera IP, dentro da qual qualquer movimento detectado irá disparar a gravação de uma sequência de imagens. Exemplificando: uma câmera IP instalada para monitorar um quintal não deve gravar imagens quando haja animais pequenos andando dentro dele, mas deve gravar caso algum ladrão pule o muro.

  • Qual é a qualidade das imagens gravadas?

A grande maioria das câmeras IP fornecem imagens coloridas com duas resoluções: VGA (640×480) ou QVGA (320×240), mas a qualidade das imagens gravadas fica condicionada à velocidade de subida do link Internet. Uma banda-larga a cabo normalmente suporta gravação de 2 câmeras IP transmitindo imagens   coloridas QVGA a 2 imagens por segundo.

  • Como posso ver as imagens gravadas?

O sistema de gravação oferece uma interface de visualização via browser. Cada assinante do serviço terá seu próprio login/senha, e poderá visualizar apenas as suas próprias imagens. As gravações são indexadas por data/hora, e podem ser baixadas e armazenadas nos computadores dos próprios assinantes.

  • Posso guardar as imagens gravadas?

Com certeza. As imagens gravadas podem ser “baixadas” para o HD de um PC, através da interface de visualização via browser, para armazenamento permanente.

  • Por quanto tempo ficam as imagens gravadas ficam disponíveis?

Oferecemos retenção de até 30 dias. Após o período de retenção, as imagens são apagadas automaticamente. Períodos maiores de retenção são possíveis após avaliação técnica.

  • Outros assinantes conseguem ver as imagens das minhas câmeras? Tenho privacidade?
Sim, a privacidade é total. Cada assinante verá apenas a(s) própria(s) câmeras.
  • Com a gravação, ainda consigo monitorar minha câmera IP pelo browser, smartphone ou tablet?

Sim, o serviço de gravação é independente à monitoração das câmeras IP pelo browser ou aplicativos smartphone e tablet.

Sim, o serviço de gravação é independente aos controles das câmeras IP.

Câmeras de monitoramento: como funciona o controle PTZ

Câmeras de monitoramento estão cada vez mais presentes em cidades grandes, com finalidades voltadas a segurança e controle. Dentro das diversas tecnologias existentes, câmeras com controle PTZ (Pan/Tilt/Zoom) – também conhecidas como “speed dome” – são as mais sofisticadas para uso profissional.

Câmeras PTZ são controladas a partir de mesas controladoras com joystick ou DVRs. Cada câmera possui 3 conjuntos de cabos: alimentação, sinal de vídeo e controle. O sinal de vídeo deve ser conectado da maneira tradicional, através de cabo RG-59 ou par trançado/video balun, e está ilustrado abaixo:

Os cabos de controle PTZ, por sua vez, devem ser ligados em cascata, conforme ilustração abaixo:

Os sinais de controle são enviados pela mesa controladora ou DVR às câmeras usando interface serial RS-485. Esta interface, também conhecida como EIA-485, é um padrão internacional, o qual define as características elétricas de geradores e receptores de sinais digitais envolvidos em um sistema de comunicação digital. Usando pares de fios trançados, EIA-485 permite implementar comunicação digital eficiente entre um gerador e múltiplos receptores como uma sequência de estações interligadas entre si, formando uma topologia linear ou de barramento. A taxa de transmissão é elevada, de até 35Mbits/s a 10m e até 100kbits/s a 1.200m, e a imunidade a ruído elétrico é grande.

Quando várias câmeras com controle PTZ compõem um sistema de monitoramento, cada uma deve receber uma identificação única para que seja endereçada corretamente pela mesa controladora ou DVR. Normalmente esta identificação é configurada via DIP-switchs dentro das câmeras; estas DIP-switchs selecionam também o protocolo de comunicação a ser usada.

Há diversos protocolos de controle utilizados para comunicação entre mesas controladoras ou DVR e câmeras. Um dos mais populares é PELCO-D, que tem comandos formados por 7 bytes, no seguinte formato (valores em hexadecimal):

  • byte 1: sincronização inicial, FF.
  • byte 2: endereço da câmera (câmera 1 tem endereço 01).
  • byte 3 e 4: comando1 e comando2 como descritos abaixo.
  • byte 5: data 1, velocidade para PAN, variando de 00 – parado a 3F – velocidade alta e  FF – turbo.
  • byte 6: data 2, velocidade para TILT, variando de 00 – parado a 3F – velocidade alta.
  • byte 7: checksum, soma dos bytes 2 a 6 e depois módulo 100.
Os bytes 3 (comando1) e 4 (comando2) codificam os reais controles desejados. Por exemplo, quando comando2 tiver o valor de 0000.0100 binário (ou 04 hexa), a câmera endereçada deve realizar uma operação de PAN à esquerda; se tiver valor 0000.0010 binário, a operação será PAN à direita; se tiver valor 1000.0000, o foco será ajustado para longe.
Em resumo, sistemas de câmeras com controle PTZ são sofisticados sistemas de comunicação digital, e sua correta instalação requer pessoal técnico bem qualificado.

Segurança

Em um passado não muito distante, um servidor configurado corretamente tinha seus riscos de ser invadido, mas esse risco era fisicamente dimencionado até os limites da sua rede local. Mas nos dias de hoje isso não é mais possível, por causa da chegada da Internet.

O grande crescimento de computadores interconectados, o crescimento de serviços virtuais e a quantidade de softwares com finalidades ilícitas, trazem como consequência a preocupação de se defender dessas pessoas mal intencionadas que posso utilizar esses softwares que tentam de várias formas invadir seu computador.

Existem vários aplicativos voltados a detectar a invasão do seu sistema, mas existem dois tipos de IDS, o que trabalha na user space (nível de usuário) ou kernel space (nível de kernel).

Podemos dizer que os IDS do tipo tripware que trabalha na camada de usuário podem ser mais vulneráveis, sendo assim burlados com mais facilidade, porque a maioria desses IDS tem arquivos de configuração, onde é informado , quais diretórios ou arquivos que precisam ter a proteção do IDS.

Caso a pessoa que efetuar a invasão não precisar fazer nenhuma alteração em arquivos, que estão relacionados no arquivo de configuração do IDS, somente fizer alterações em arquivos não configurados no IDS ou na camada de kernel ela possivelmente ela não será notada,tudo depende do contexto como o acesso arbitrário ocorreu.

Já com um sistema configurado com um IDS que esteja na camada de kernel, a dificuldade aumenta porque tudo o que a pessoa estiver tentando executar, gerará uma chamada no kernel(systemcall), assim como o IDS está na camada de kernel, todas as chamadas feitas geram mensagens de logs.

O registro das atividades dos usuários e serviços dos sistemas é, notoriamente, muito importante para os administradores e como foi citado o fato de todas as chamadas ao sistema que são negadas serem registradas, cria um cenário muito importante para auditorias futuras.

A importância de registro dos eventos do sistemas é tanta, que na norma NBR ISO/IEC 17799, o item 9.7.1 é todo dedicado ao “Registro (log) de eventos. Deixando claro que registro de eventos são também prioridade em uma política de segurança.

Em um sistema de log, oficialmente somente o root poderia alterar os arquivos de log, já com o Lids aplicado, nem o root teria o poder de alterar esses arquivos.

Lids é um path de segurança no nível de kernel, ou seja, é necessário a recompilação do kernel para a aplicação do path. Esse patch pode ser encontrado no site oficial do LIDS “www.lids.org” e o fonte do kernel em “www.kernel.org”
As ferramentas que acompanham o patch do Lids “lidsadm e lidsconf” são fáceis de utilizar e de configurar, elas estão no nível de usuário e servem para configurar as ACLs que serão determinadas pelo root, que, dependendo da configuração das ACLs do Lids, não será mais o dono do sistema, mas sim somente um usuário comum.

Como o Lids está no nivel de kernel, ele é acionado já no início do boot do sistema, portanto, já na inicialização o sistema se encontra protegido.

Com esse sistema de proteção no boot, ela nega permissão a muitos serviços padrões do sistema, como o dmesg, que gera um relatório de todo a inicialização do kernel. Isso é muito importante, por isso que se deve liberar o dmesg a gravar no diretório /var/log/.

# lidsconf -A BOOT -o /var/log/dmesg -j WRITE

 

Todos sabem que o arquivo /etc/shadow contém as senhas de todos os usuários do sistema e que as senhas estão criptografadas. Mesmo assim, existe um grande risco de alguém descobrí-las.

Por esse motivo, o LIDS trabalha da seguinte forma: ainda como usuário root é possivel determinar que nenhum binário vá conseguir o acesso a esse arquivo de senhas, colocando uma regra de DENY (proibido), por exemplo:

# lidsconf -A -o /etc/shadow -j DENY

 

Mas o mais importante é que para toda regra existem as exceções, podendo assim liberar qual binário poderá acessar o /etc/shadow como READONLY (somente leitura). Um exemplo claro, seria o binário /bin/login, que precisa ter permissão de leitura no arquivo para que possa efetuar o login normalmente.

# lidsconf -A -s /bin/login -o /etc/shadow -j READONLY

 

Mas caso se tente visualizar o conteúdo do arquivo com outros binários (por exemplo: vi, cat, more, etc..), o IDS acusará que esse arquivo não existe.
Da mesma que é possivel proibir o acesso as arquivos para todos os binários e liberar para alguns, também existe a possibilidade de ocultar processos, isso mesmo esconder os processos. Veja por exemplo como ocultar o processo do serviço ssh.

# ldisconf -A -s /usr/sbin/sshd -o CAP_HIDDEN -j GRANT

 

Quando tentar listar os processos da máquina, esse processo do serviço ssh não aparecerá, mas o serviço está ativo.

Diante desse poder de fogo sugiro como a melhor opção seria utilizar os dois sistemas de IDS, para que vc esteja protegido na camada de usuário e na camada de kernel. Assim dificultado em muito possiveis atividades arbritárias.

Mesmo hoje tendo recursos como LIDS e outros como o SELinux, GrSecurity, devemos pensar sempre de forma estratégica em tudo que for possivel e viável tanto na Kernel Space como na User Space, pois em algumas situações como uma estação de trabalho fica impraticavel o uso de um recurso com LIDS.

O Lids também é um mecanismo a mais para aumentar o nível de segurança de um sistema operacional buscando atender também as diretrizes inerentes ao nível C2 de segurança no que diz respeito o Sistema Operacional.

O nivel C2 recomendado pelo TCSEC ” Trusted Computer System Evaluation Criteria”, que é nível de segurança minimo requerido pelo governo Americano e utilizada em algumas instituições no Brasil.

Outro valor agregado nessa história é que somente conhecendo profudamente como o sistema funciona e as respectivas aplicações que estejam sendo executadas, conseguimos tirar proveito de um recurso como LIDS, pois do contrário, simplesmente nada vai funcionar corretamente, ou seja, além de melhoramos a segurança do sistema, nossa base de conhecimento se aprimora.

Storage corporativo

Empresas de médio porte, e até de pequeno porte, já tem se beneficiado da tec­nologia de sistemas de armazenamento de alta capacidade, conhecidos como sto­rages. Estes equipamentos já são parte padrão do ambiente de TI de empresas de grande porte, e são peça essencial para projetos de virtualização ou para as polí­ticas de continuidade de negócios.

Um storage é um equipamento que serve para concentrar toda necessidade de armazenamento de um grupo de servidores, provendo uma solução flexível, de alta velocidade e confiabilidade. Em vez de colocar HDs diretamente nos servidores, todos os HDs ficam no storage, e a capacidade combinada pode ser distribuída entre as máquinas. Isso reduz o desperdício de espaço e permite também que a ca­pacidade seja realocada de acordo com a necessidade, sem que seja preciso des­ligar um servidor para instalar mais HDs. O storage também possui sistemas de proteção que garantem que em caso de falha de um HD, seja possível fazer a troca sem perda de informação e sem necessidade de interrupção do serviço.

Dentro do datacenter, o storage é ligado aos servidores por meio de cabos di­retos, usando uma tecnologia apropriada. A opção mais comum é o Fibre Channel, que permite acesso de alta velocidade aos discos de forma muito parecida com uma conexão local utilizando o protocolo SCSI. O Fibre Channel opera em taxas tí­picas de 1 Gbps até 8 Gbps. Recentemente vários fabricantes começaram a in­vestir mais pesado em outras formas de interligação, para reduzir o custo. As princi­pais são o iSCSI (interface de disco SCSI sobre IP) e o FCoE (Fibre Channel over Ethernet). Em ambos os casos, o transporte passa a ser feito por uma rede Gigabit Ethernet padrão.

A interligação de servidores e storages dentro do datacenter é simples, e pode ser feita com cordões ópticos diretos. Porém, muitas empresas tem necessidade de interligar prédios distantes, dentro de uma cidade ou até mesmo entre cidades. Esta interligação permite que as empresas tenham um datacenter de reserva, ga­rantindo a continuidade de negócios em caso de desastres. Além de ser uma boa idéia, também é uma obrigação legal de empresas do setor financeiro (graças à Re­solução 3380 Banco Central), e de empresas listadas em Bolsa de Valores desde a lei Sarbanes-Oxley.
A ligação de storages exige um protocolo compatível. Storages menores e mais modernos (que utilizam tecnologia iSCSI ou FCoE) podem ser interligados por meio de uma rede Metro Ethernet padrão. A taxa de transmissão deve ser suficiente para as necessidades do cliente; a velocidade típica fica entre 100 Mbps e 1 Gbps, que permite a replicação dos dados em tempo real. O atendimento neste caso pode ser feito com um Connect Flex, que é um link dedicado de alta velocidade.

Para storages de maior capacidade (que utilizam o protocolo Fibre Channel) é ne­cessário dispor de um canal óptico totalmente transparente. Isto pode ser feito com uma fibra apagada, ou seja, uma fibra óptica que não passa por nenhum equipa­mento da operadora. O problema é que este tipo de ligação depende da disponibili­dade do serviço na região. A maioria das operadoras não oferece a fibra escura como parte do seu portfolio por questões estratégicas; é um produto caro, que uti­liza de forma exclusiva um recurso valioso que poderia ser “multiplicado” pela opera­dora para atender muito mais clientes. Mas existem algumas alternativas, como a oferta de serviços sobre tecnologia WDM.

O Storage Connect, que permite interligar storages entre prédios distantes dentro da sua área de atuação. Vários clientes corporativos já uti­lizam o Storage Connect, incluindo bancos, empresas do segmento de saúde e ór­gãos públicos. Através desta solução, é possivel interligar diretamente tanto a rede LAN como os storages, sem passar por nenhum equipamento ativo de rede, de forma totalmente transparente.

Solução Storage Connect com Enlace CWDM Simples

O Storage Connect oferece a mesma performance e flexibilidade da fibra apa­gada, mas permite o gerenciamento da solução (algo impossível com a fibra apa­gada normal). A solução utiliza a tecnologia de multiplexação de comprimentos de onda (WDM). O sistema permite que o cliente disponha de até 8 canais ópticos transparentes, que podem ser utilizados para interligação de storages, redes locais, ou qualquer outro sistema que possa ser ligado a uma fibra óptica. A solução também pode ser oferecida de forma redundante, utilizando para isso duas rotas distintas.

 

Solução Storage Connect com Enlace CWDM Redundante

A solução Storage Connect é customizada para cada cliente, de acordo com o número de canais e a velocidade desejada em cada canal. A solução é indicada para ligação em Fibre Channel, em taxas de 1 Gbps a 8 Gbps, ou de rede local (LAN) a 1 Gbps ou 10 Gbps.

Onde instalar um novo servidor Linux para email?

Frequentemente recebemos contato de clientes interessados em instalar servidores Linux de email para uso próprio, pelas mais diversas razões:

  • o provedor atual não tem backup, seu servidor de email sofreu pane de hardware e gigabytes de mensagens foram para o espaço;
  • novamente, o provedor não tem backup, e um colaborador dispensado deletou anos de histórico de email da empresa;
  • necessidade de copiar todas as mensagens enviados e recebidos, como cópia oculta (CCO), para fins de arquivamento, auditoria e “compliance”.

Muitos pensam em hospedar “in-house” o servidor Linux de email, especialmente aqueles que passaram por um evento trágico (“servidor do meu provedor pifou”). Mas para muitas empresas, uma decisão deste tipo requer um grande planejamento: contratar um link Internet com IP fixo, preparar a energia elétrica com nobreak que dure 3 a 4 horas, reforçar o sistema de ar condicionado quando possível (em muitos prédios comerciais, o ar condicionado é central e fica desligado fora do horário comercial), etc.

Para quem quer evitar preocupações desta natureza, um caminho natural é considerar o “cloud computing”: custos de operação contidos, fácil manejo, desempenho sob medida. Há também a alternativa de contratar um serviço de “hosting” em datacenters tradicionais, mas estes sempre apresentam custos de operação elevados e amarrações contratuais de longa duração.

Qualquer que seja a decisão, há um item que não pode ser relegado ao segundo plano: planejar e operar um sistema eficiente de backup, contendo informações de configuração, as caixas de email, as senhas dos usuários e as próprias mensagens. Esta assinatura de um fórum técnico diz uma verdade incontestável: “Existem dois tipos de usuários de computadores, aqueles que fazem backup, e aqueles que nunca tiveram problemas com HDs”.