Bonjour,
Je ne sais pas si c'est le bon endroit pour poster cela ... ? Car c'est à propos d'un rpm du dépôt communautaire de Mr Collet (au passage, merci !) de Firefox4 (0.b7). Et d'ailleurs je ne sais pas s'il s'agit d'un problème avec le paquetage... ou avec le programme lui même... Firefox4 segfault si on passe le booléen execmem stack sur denied pour les programmes non confinés... bool=allow_execmem val=0 old_val=1 et PAF le firefox4 qui tourne :p selinux c'est efficace 😉
audit wrote: avc: denied { execmem } for pid=10975 comm="firefox-bin" scontext=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 tcontext=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 tclass=process
system-config-selinux wrote: very bad behaviour, dangerous, please report this program on bugzilla
U.Drepper wrote:
If the program really needs this behavior there is no really easy way out. One possibility is to create an anonymous file (just unlink it after creation), size the file using ftrunctate, and then map the file in two places. In one place map it with MAP_SHARED and write permission but without execution. For the second mapping use execution permissions but no write permissions. This might be a bit confusing at first but can be handled. The program must be adjusted to write to one location and expect to execute code in another one. This is reasonably safe in case the two mappings are allowed to be randomied. The example code in the next section illustrates how this should work.
In the case of an anonymous mapping the best thing to do is to explicitly copy the file into an anonymous file and then proceed as described in the previous paragraph.
Cette solution, au dessus, est ancienne, et un poil pas simple pour firefox :p
j'ai préféré plus simplement faire cela :
[root@munymouse ~]# chcon -t execmem_exec_t '/usr/lib64/firefox-4.0/firefox'
[root@munymouse ~]# chcon -t execmem_exec_t '/usr/lib64/firefox-4.0/firefox-bin'
[root@munymouse ~]# semanage fcontext -a -t execmem_exec_t /usr/lib64/firefox-4.0/firefox
[root@munymouse ~]# semanage fcontext -a -t execmem_exec_t /usr/lib64/firefox-4.0/firefox-bin
Mais ce n'est qu'une solution temporaire : celle ci évite de "tout re-labeller" d'une part, et bien sûr de ne pas "autoriser tout prog a execmem", mais seulement firefox4.
Donc, question :
Mr Collet a t il un bugzilla ? Ou bien un canal de communication préféré ?
Quelqu'un a t il la vraie bonne solution ?