
Eu botei aqui algumas
informacoes basicas para ajudar voce a manter seu sistema seguro. Como
voce vai ver, as informacoes a seguir sao escritas num meio nao-tecnico.
- Limite o numero de
programas que necessitem SUID root no seu sistema.
- Programas SUID root
sao programas que quando rodam, rodam no nivel de root (Deus no mundo
do UNIX). Algumas vezes e' preciso mas muitas vezes nao. Os programas
SUID root podem fazer qualquer coisa que o root pode tendo um alto nivel
de responsabilidade a nivel de seguranca. As vezes eles fazem, as vezes
nao e quando nao fazem, usuarios podem as vezes pegar o root para fazer
coisas que nem pode imaginar. Aqui e' onde entram os exploits. Um exploit
e' um programa ou script que vai pegar o SUID root para fazer muita
coisa ruim. (Dar shells de root, pegar arquivos de senhas, ler mails
de outras pessoas, deletar arquivos).
- Rodando programas com
privilegio minimo no acesso.
- Como foi dito antes,
alguns programas nao precisam de root para roda-los , mas precisam de
um alto acesso para o usuario normal. Aqui e' onde comeca a ideia do
privilegio minimo de acesso. Por exemplo, a LP (linha de impressora)
possui comandos que precisam de alto acesso para o usuario normal (para
acessar a impressora), mas nao precisa roda-los como root. Entao, uma
pequena coisa a fazer e' criar um usuario (/bin/true como shell) e um
grupo chamado lp e fazer com que qualquer usuario possa rodar qualquer
dos comandos de LP e fazer tudo com os comandos LP que tiverem como
owner e grupo o lp. Isto fara com que o lp possa fazer seu trabalho
(administre as impressoras). Entao se o usuario lp estiver compromissado,
o invasor realmente nao vai dar um passo de root no seu sistema. Agora
paraalguns programas que sao SUID root, crie um usuario e um grupo para
o programa. Entretanto, algumas pessoas se enro lam quando botam a maioria
desses programas SUID no mesmo usuario e grupo. Isto e' ruim! Realmente
ruim!. O que voce precisa fazer e' botar todo o pro grama que inicie
como root para usuario de privilegio minimo.
- Desabilitando servicos
que voce nao precisa ou nao usa.
- Se voce nao usa rpc.mountd,
rpc.nfsd ou outros daemons parecidos, nao rode-os. Simplesmente kill
-9 nele e va nos scripts em /etc/rc.d e comente-os. Isto aumentara a
memoria, CPU e e' um meio de se prevenir de invasores que tentam obter
informacoes sobre seu sistema e, claro, pegar root nele.
- Tenha sempre os mais
recentes /lib's.
- Os arquivos em /lib's
sao codigos share, quando um programa precisa de uma certa peca do codigo,
ele simplesmente vai e pega este codigo (assumindo que este nao esta
compilado no codigo). A vantagem nao seria outra; Programas sao compilados
menores, se uma peca do codigo lib esta desaparecida, vc pode simplesmente
fazer um upgrade. Desvantagens; o codigo desaparecido em /lib vai afetar
alguns programas e se um invasor por suas maos no lib's, vc realmente
estara com dificuldades.
A melhor coisa a fazer corretamente os upgrades para as lib's e checar
o tamanho e data frequentemente nas alteracoes.
- Encriptando nas conexoes.
- O pacote Sniffing e'
simplesmente o melhor meio para pegar passwords. O sniffer se acomoda
em uma maquina, em uma subrede nao encriptada e o rendimento sera centenas
de passwords. Nao somente dos computadores locais, mas tambem de outras
redes de computadores. Agora voce pode dizer para voce mesmo, "Mas eu
tenho Firewall na minha rede, entao estou seguro". "Besteira". Um estudo
recente mostrou que uma parte dos sniffers atacam por tras dos firewalls.
(O "bom lado"). Veja alguns programas seguros da lista de pacotes de
encriptacao fora daqui.
- Instale wrappers para
/bin/login e outros programas.
- Wrappers sao programas
pequenos mas muito eficientes que filtram o que esta sendo enviado para
o programa. O login wrapper "remove todas as instancias de varias variaveis
do ambiente" e o wrapper do sendmail faz mais ou menos o mesmo.
- Mantenha seu Kernel
na ultima versao estavel.
- Esta dica realmente
e' aplicada a pessoas que possuem usuarios no seu sistema. Kernels antigos
possuem seus bugs conhecidos por qualquer pessoa e as vezes sao muito
instaveis. Veja o ldt-exploit.c.
Kernels 2.0.X tendem a serem mais rapidos que os 1.2.X e, e' claro,
mais estaveis.
- Quando estiver configurando
seu kernel somente compile no codigo o que voce precisar.
- Quantro razoes vem
em mente: O Kernel vai ficar mais rapido (menos codigos para rodar),
voce vai ter mais memoria, ficara mais estavel e partes nao necesarias
poderao ser usadas por um invasor para obter acesso em outras maquinas.
- Deixe o pessoal do
lado de fora saber o minimo possivel sobre seu sistema.
- Um simples finger para
o sistema da vitima pode revelar muitas coisas sobre seu sistema; Quantas
usuarios, quando o admin esta dentro, ver o que ele esta fazendo, quem
ele e', quem usa o sistema e informacoes pessoais que podem ajudar um
invasor a conseguir senhas de usuarios. Voce pode usar um po tente finger
daemon e limitar quem pode conectar ao seu sistema e exibir o minimo
possivel sobre seu sistema.
- Escolha boas senhas.
- Simplesmente ponha,
senhas ruins e' a chave para penetrar em seu siste ma. Se voce instalar
o shadow em uma Box, voce pode escolher para filtrar senhas ruins, tipo
login: kewl, password: kewl, esta senha ja nao seria aceita, e isto
e' uma boa ideia.
Sempre que voce tiver uma pequena quantidade de pessoas no seu sistema,
e eles sao amigos, algum usuario nao convidado pode obter root e fazer
um `rm -rf /'.
- Se voce puder, limite
quem pode conectar ao seu Linux.
- Se possivel, bloqueie
o acesso telnet de fora da subrede. Certamente que seja mais seguro
e voce vai ter a sorte de nao ter seu sistema danifica do por estranhos.
Índice anterior | Página
Principal |