Por um tempo ele foi substituído pelo "Linux Security Knowledge
Base". Esta documentação era fornecida no Debian através do pacote
lskb
. Agora ela voltou ao pacote Lasg novamente.
Um bom exemplo deste tipo de ataque usando /tmp é detalhado em The
mysteriously persistently exploitable program (contest)
e The
mysteriously persistently exploitable program explained
(Observe que
o incidente é um relato Debian) Ele é basicamente um ataque no qual um usuário
local usa uma aplicação setuid vulnerável através de um hard link para ela
analisando qualque atualização (ou remoção) do próprio binário feita pelo
administrador do sistema. Dpkg foi recentemente corrigido para prevenir isto
(veja 225692
) mas
outros binários setuid (não controlados pelo gerenciador de pacotes) correm o
risco se as partições não estiverem configuradas corretamente.
Por exemplo, no Debian Woody ela gira em torno de 40Mbs, tente isto para ver quanto os pacotes necessários ocupam no sistema:
$ size=0 $ for i in `grep -A 1 -B 1 "^Section: base" /var/lib/dpkg/available | grep -A 2 "^Priority: required" |grep "^Installed-Size" |cut -d : -f 2 `; do size=$(($size+$i)); done $ echo $size 34234
Muitas invasões são feitas mais para acessar os recursos e executar atividades ilícitas (ataques denial of service, spam, rogue ftp servers, poluição dns...) do que para obter dados confidenciais dos sistemas comprometidos.
Você pode fazer (em outro sistema) um pacote dummy com o equivs
O arquivo /etc/securetty
é um arquivo de configuração que pertence
ao pacote login
.
Ou ttyvX no GNU/FreeBSD, e ttyE0 no GNU/NetBSD.
Ou comX no GNU/Hurd, cuaaX no GNU/FreeBSD, e ttyXX no GNU/KNetBSD.
A configuração padrão na woody incluem 12 tty e consoles vc locais. Na sarge a configuração padrão oferece 64 consoles para consoles tty e vc. Você pode remover seguramente isto se não estiver usando mais do que estas consoles.
Procure pelas chamadas getty.
Alguns destes incluem o gerenciador de pacotes dpkg
pois os
scripts de instalação (post,pre) e remoção (post,pre) estão em
/var/lib/dpkg/
e também o Smartlist
Esta dependência não foi corrigida, no pacote do Debian 3.0. Por favor veja
Bug #112965
.
Libpam-chroot
ainda não foi ainda testado, ele funciona com o
login
mas ele não é fácil de ser configurado para funcionar com
outros programas
A definição de HISTSIZE para um número elevado poderá causar problemas em algumas circunstâncias, pois o histórico é mantido em memória para cada sessão do usuário. Você estará mais seguro caso defina esta variável para um valor suficientemente grande e realizar o backup de arquivos de histórico de usuários (se precisar do histórico de todos os usuários por alguma razão).
Sem a opção append-only, os usuários poderão ser capazes de apagar o conteúdo do arquivo de histórico executando > .bash_history
Ttys são criados para logins locais e logins remotos durante seções do ssh e telnet
O chpasswd
não trabalha com a geração de senhas em md5, assim ele
precisa ser informado que forma de criptografia das senhas será utilizado, com
a opção -e.
tenha certeza de usar maiúsculas, pois spawn não executará fork
existe um artigo muito bom, escrito por Lance Spitzner
Note que, dependendo do pacote de fonte do kernel 2.4 que você usar, você poderá encontrar problemas durante o patch de fontes de kernel. Se este for seu caso, você precisa usar o kernel vanilla. Você poderá fazer isto com os seguintes passos:
# apt-get install kernel-source-2.4.22 kernel-patch-debian-2.4.22 # tar xjf /usr/src/kernel-source-2.4.22.tar.bz2 # cd kernel-source-2.4.22 # /usr/src/kernel-patches/all/2.4.22/unpatch/debian
Para mais detalhes veja #194225
, #199519
, #206458
, #203759
, #204424
, #210762
, #211213
, e discussion
at debian-devel
Tão comum, de fato, que eles são a base de 20% de vulnerabilidades reportadas
de segurança todo ano, como determinado pelas estatísticas do banco
de dados dde vulnerabilidades ICAT's
No Debian o pacote kernel-image
instala o fonte sob
/usr/src/kernel-source-2.X.X
, apenas subistitua linux com
o tipo de kernel que está instalado
Para reproduzir isto (exemplo oferecido por Felix von Leitner na lista de discussão bugtraq):
máquina A (eth0 conectada a eth0 da máquina B): ifconfig eth0 10.0.0.1 ifconfig eth1 23.0.0.1 tcpserver -RHl localhost 23.0.0.1 8000 echo fnord máquina B: ifconfig eth0 10.0.0.2 route add 23.0.0.1 gw 10.0.0.1 telnet 23.0.0.1 8000
Parece, no entanto, não funcionar com serviços funcionando na interface 127.0.0.1, você precisará fazer os testes usando soquetes simples.
O fato deste comportamento ser alterado através do roteamento foi descrito por Matthew G. Marsh na thread do bugtraq:
eth0 = 1.1.1.1/24 eth1 = 2.2.2.2/24 ip rule add from 1.1.1.1/32 dev lo table 1 prio 15000 ip rule add from 2.2.2.2/32 dev lo table 2 prio 16000 ip route add default dev eth0 table 1 ip route add default dev eth1 table 2
Existem alguns patches disponíveis para este comportamento como descrito na
discussão do bugtraq em http://www.linuxvirtualserver.org/~julian/#hidden
e http://www.fefe.de/linux-eth-forwarding.diff
.
Um invasor pode ter muitos problemas para contornar o acesso através da escuta de endereços IP se ele não está no mesmo domínio de broadcast (mesma rede) que a máquina que será atacada. Se a invasão for através do roteador, será bastante difícil as repostas retornarem a algum lugar.
para obter uma lista de todos os daemons de mensagens disponíveis no Debian, execute o comando:
$ apt-cache search mail-transport-agent
A lista não incluirá o qmail
, que é distribuído somente como
código fonte no pacote qmail-src
.
Uma lista de servidores/daemons que suportam estes protocolos podem ser obtidos com:
$ apt-cache search pop3-server $ apt-cache search imap-server
Note que dependendo de sua versão do BIND você pode não ter a opção -g, mais precisamente se estiver usando a woody e instalando o bind9 (9.2.1-2.woody).
a não ser que utilize a opção instdir quando executar o
dpkg
mas então a jaula chroot será um pouco mais complexa
Eles não tentarão ser executados sob mínimo privilégio que inclui a execução de daemons com seus próprios usuários ao invés de tê-los executando como root
De forma diferente de firewalls pessoais em outros sistemas operacionais, o
Debian GNU/Linux (ainda) não fornece uma interface de geração de firewall que
possa fazer regras de limitação por processo ou usuário. No entanto, o código
do iptables pode fazer isto (veja o módulo owner na página de manual
iptables(8)
)
Traduções estão disponíveis em dez idiomas
O completo capability
questionnaire
estava disponível para o CVE
Alguns sistemas operacionais já tiveram problemas com atualizações automáticas
como Mac OS X
Software Update vulnerabity
.
FIXME: probably the Internet Explorer vulnerability handling certificate chains has an impact on security updates on Microsoft Windows.
Algumas delas são fornecidas na instalação do pacote
harden-remoteaudit
.
Se você usar este último pacote e estiver usando um Debian oficial, o banco de
dados não será atualizado com as atualizações de segurança. Você poderá usar o
clamav-freshclam
e o clamav-getfiles
para gerar novos
pacotes clamav-data
ou atualizar do repositório do mantenedor,
através da localização:
deb http://people.debian.org/~zugschlus/clamav-data/ / deb-src http://people.debian.org/~zugschlus/clamav-data/ /
Para mais exemplos de como configurar o gnupg
, veja
/usr/share/doc/mutt/examples/gpg.rc
.
Você também pode optar por usar a opção --quiet (-q)
para diminuir a quantidade de informações de saída do apt-get
.
Caso nenhum pacote esteja sendo instalado, nenhuma informação é mostrada na
tela.
Note que alguns pacotes podem não usar o debconf
e a
atualizações irão parar para que o usuário entre com alguma configuração.
Isso é uma prática comum, já que muitos usuários preferem manter o sistema estável, podendo atualizar alguns pacotes para a versão unstable para obter novas funcionalidades. Esta necessidade surge devido ao desenvolvimento de alguns projetos ser mais rápido que o tempo gasto entre os lançamentos da versão stable do Debian.
Uma maneira fácil de fazer isso é utilizar um Live CD, tipo o Knoppix Std
que inclue ambas as
ferramentas de verificação de arquivos e a base de dados de integridade do seu
sistema.
Existem mais de 28 funcionalidades incluídas: CAP_BSET, CAP_CHOWN, CAP_FOWNER, CAP_FSETID, CAP_FS_MASK, CAP_FULL_SET, CAP_INIT_EFF_SET, CAP_INIT_INH_SET, CAP_IPC_LOCK, CAP_IPC_OWNER, CAP_KILL, CAP_LEASE, CAP_LINUX_IMMUTABLE, CAP_MKNOD, CAP_NET_ADMIN, CAP_NET_BIND_SERVICE, CAP_NET_RAW, CAP_SETGID, CAP_SETPCAP, CAP_SETUID, CAP_SYS_ADMIN, CAP_SYS_BOOT, CAP_SYS_CHROOT, CAP_SYS_MODULE, CAP_SYS_NICE, CAP_SYS_PACCT, CAP_SYS_PTRACE, CAP_SYS_RAWIO, CAP_SYS_RESOURCE, CAP_SYS_TIME, and CAP_SYS_TTY_CONFIG. Todas elas podem ser desativadas para melhorar a segurança do seu kernel.
Você não precisa instalar o lcap
para fazer isto, mas é melhor do
que configurar o /proc/sys/kernel/cap-bound
na mão.
Se você for aventureiro, você pode efetuar o logon no sistema e salvar as informações de todos os processos em execução (várias dessas informações estão em /proc/nnn/). É possível pegar todo código executável da memória, mesmo se o invasor tiver excluído os arquivos executáveis do disco. Então puxe o cabo de força.
. De fato, esta é a ferramenta usada para compilar os CDROMs para o projeto
Gibraltar
(um firewall em
um live-CD baseado na distribuição Debian).
Esta é a lista de alguns CERTS, para uma lista completa veja o FIRST Member
Team information
(FIRST significa Forum of Incident Response and
Security Teams): AusCERT
(Austrália), UNAM-CERT
(México) CERT-Funet
(Finlândia), DFN-CERT
(Alemanha), RUS-CERT
(Alemanha), CERT-IT
(Itália), JPCERT/CC
(Japão), UNINETT CERT
(Noruega), HR-CERT
(Croácia)
CERT Polskay
(Polônia), RU-CERT
(Rússia), SI-CERT
(Eslovênia) IRIS-CERT
(Espanha), SWITCH-CERT
(Suiça), TWCERT/CC
(Taiwan), e CERT/CC
(US).
Neste exemplo, baseado nos dados da Securityfocus, pode ser visto que o Windows
NT é mais seguro que o Linux, o que é uma afirmação questionável. Apesar de
tudo, as distribuições do Linux geralmente oferecem mais aplicações comparadas
ao Windows NT da Microsoft. Estas situações de contagem de
vulnerabilidades são melhor descritas em Why Open Source
Software / Free Software (OSS/FS)? Look at the Numbers!
por David
A. Wheeler
Sem mencionar o fato que algumas distribuições, tal como a Red Hat ou Mandrake, também estão permitindo que o usuário selecione perfis de segurança ou usando assistentes para ajudar na configuração de firewalls pessoais.
Note que isto é "segurança pela obscuridade" e provavelmente este esforço não valerá a pena em longo termo.
Observe que não existem arquivos SETUID. Isso torna mais difícil para usuários
remotos fugir o ambiente chroot
. Entretanto, isso também previne
que os usuários alterem suas senhas, já que o programa passwd
não
pode modificar os arquivos /etc/passwd
ou
/etc/shadow
.
Securing Debian Manual
v3.1,mailto:jfs@debian.org