** le kernel 5.8 est dispo **

petit va :o

benj2 root # ls -l /boot/kernel-2.6.10
-rw-r–r-- 1 root root 2755213 Dec 26 11:46 /boot/kernel-2.6.10

Monolithique powered aussi :smiley:

-rw-r–r-- 1 root root 2,0M déc 26 14:24 linux-2.6.10

Youpi,un concours de kernel totalement puéril.(Ca me rappellera ma jeunesse avec d’autres concours … :smiley: )
-rw-r–r-- 1 root root 1196112 déc 26 10:28 vmlinuz-2.6.10-ck1

[fixed]local root exploit confirmed in 2.6.10: Linux 2.6 Kernel Capability LSM Module Local Privilege Elevation
De:
Lee Revell rlrevell@joe-job.com
Date:
Mardi 28 Décembre 2004 22:30:14
Forums:
linux.kernel
aucune référence

Frank Barknecht pointed this out on linux-audio-dev, it’s a horrible
bug, I confirmed it in 2.6.10, and have not seen it mentioned on the
list.

Executive summary:

run « vim » as normal user. Do « :r /etc/shadow ». Permission denied.

do « modprobe capability » as root in another terminal

Do « :r /etc/shadow » again in the same vim. You will be able to read and
write /etc/shadow as normal user.

http://www.derkeiler.com/Mailing-Lists/securityfocus/bugtraq/2004-12/0390.html

Lee[/fixed]
:sweat: le patch est disponible (faut chercher via le lien)
http://mithra.immunix.com/pipermail/linux-security-module/2004-December/5765.html

édit : soluce
[fixed]V.WORKAROUND:


In order to fix this bug, we may have two methods. One is moving the
computation of creds from Capability module to kernel. The other is adding
some code in Capability module to re-compute creds of existed process. I
choose the second method, add following code in security/capability.c:

static void recompute_capability_creds(struct task_struct *task)
{
if(task->pid <= 1)
return;

task_lock(task);
task->keep_capabilities = 0;

if ((task->uid && task->euid && task->suid) && !task->keep_capabilities)
cap_clear (task->cap_permitted);
else
task->cap_permitted = CAP_INIT_EFF_SET;

if (task->euid != 0){
cap_clear (task->cap_effective);
}
else{
task->cap_effective = CAP_INIT_EFF_SET;
}

if(task->fsuid)
task->cap_effective &= ~CAP_FS_MASK;
else
task->cap_effective |= CAP_FS_MASK;

task_unlock(task);

return;
}

and add following code in Capability init function capability_init before it
return:

struct task_struct *task;

read_lock(&tasklist_lock);
for_each_process(task){
recompute_capability_creds(task);
}
read_unlock(&tasklist_lock);

return 0;

After modifing capability.c, we need « make » and « make modules_install »
again. Unload Capability module (rmmod capability; rmmod commoncap) and
retry the above example, all the accesses to a root file by normal user
existed process are always denied before and after inserting Capability
module. [/fixed]
http://mithra.immunix.com/pipermail/linux-security-module/2004-December/5764.html

mouah bon …

Moi je serais partan pour virer le module capability, mais il sert a quoi? je veux pas virer un truc important…
Mais bon si personne a le mot de passe root ca risque rien, et puis si quelqu’un l’a de toute facon il peut faire ce qu’il veut meme sans la faille de securité :d

la solution : batir des kernels monolithiques sans modules
[:benhurmarcel]

A ce propos je viens de lire sur un site que plus on met de choses en dur, plus on perd en performance a cause de la taille du noyal.
Dans quel mesure ceci est il vrai?

[fixed]benj2 root # modprobe capability
FATAL: Module capability not found.
benj2 root # uname -a
Linux benj2 2.6.10 #2 SMP Sun Dec 26 11:35:03 CET 2004 i686 Intel(R) Pentium(R) 4 CPU 2.80GHz GenuineIntel GNU/Linux
[/fixed]

sans patch ni rien, je n’ai pas le module, stout

loic38 : ben les modules sont des bouts de noyaux et de toutes façons ils doivent aller en mémoire noyau.
donc a moins d’en compiler des tonnes inutiles en dur je ne crois pas qu’il y ai de difference.

OK, merci pour ta reponse lithium :slight_smile:

« A ce propos je viens de lire sur un site que plus on met de choses en dur, plus on perd en performance a cause de la taille du noyal. Dans quel mesure ceci est il vrai? »

C’est faux. Il n’y a aucune raison de les perfs soient modifiées. Je serais curieux de savoir quels tests ils ont fait pour arriver à cette conclusion pour voir où ils se sont trompés. Arf…ils n’ont peut être même pas fait de tests avant de dire ça :wink:

lu aussi ici :
http://guide.andesi.org/html/kkernel.html
[fixed]Les options en modules permettent donc d’alléger votre noyau. Il faut savoir que plus un noyau a une taille importante et plus les performances du système vont diminuer.[/fixed]
C’est une légende urbaine ou quoi ? :sol:

C’est une légende urbaine ;). On remarquera déjà que « les perfs », ça en veut rien de dire. Quels perfs? Le temps de cahrgement de je ne sais quoi? L’occupation mémoire? que sais je encore.
Bref, on dit souvent « show me the code »; dans ce cas, ce sera « show me the bench » :slight_smile:

il ne s’agit pas tout a fait d’une légende quand même mais certe ceux qui l’écrive tels que ne pensent pas à ca!
aujourd’hui tous les machines on suffisament de RAM pour que ca ne soit pas les 0.1 ou 0.2 Mo de plus du kernel qui change grand chose. Mais il fut un temps (et celui-ci n’est pas si loin, cf 2postes a moi plus haut) où 1 Mo, c’était 25%de la ram et si tu peux reduire la place occupé enRAM (en dechargeant un module par exemple, ce qui n’est pas possible avec un noyau monolitique) tu peux effectivement gagner. Mais aujourd’hui, ce genre de considération ne tien plus.

Partisan du modulaire je ne vais pas continuer à dire que casert à rien de mettre en module :slight_smile: et qu’il faut faire du monolithique … Je trouve que ca apporte une certaine souplesse, possibilité d’ajouter de retirer, de modifier, sans tout recompiler ni rebooter. Mais ca c’est un avis personnel… tres loin des considération de performances.

Bon on ne va pas troller sur les modules ici hein :wink:

Tout mettre en dur, ça fait uniquement ralentir le chargement du noyau lors de l’amorçage. Mais après, pfuit ! Moi aussi je suis partisant du modulaire. Je pense qu’une bonne config, c’est de mettre en dur, l’indispensable dont tu te sers tout les jours et en module ce dont tu te sers occasionnellement.

Si tu es un parano, tu mets tout en dur et tu désactive la possibilité de charger des modules :stuck_out_tongue:

« Si tu es un parano, tu mets tout en dur et tu désactive la possibilité de charger des modules »

c’est ce que fait openB :smiley:

ça pue le troll :stuck_out_tongue:

bis repetita placent : Bon on ne va pas troller sur les modules ici hein :wink: Merci :slight_smile: