Bug List: (This bug is not in your last search results)   Show last search results      Search page      Enter new bug
Bug#: 163146
Alias:
Product:
Component:
Status: RESOLVED
Resolution: FIXED
Assigned To: Gentoo Security <security@gentoo.org>
Hardware:
OS:
Version:
Priority:
Severity:
Reporter: Harlan Lieberman-Berg (RETIRED) <hlieberman@gentoo.org>
Add CC:
CC:
Remove selected CCs
URL:
Summary:
Status Whiteboard:
Keywords:
Flags: Requestee:
 
 
  ()

Filename Description Type Creator Created Size Actions
beast-compile-failure compile-failure on ppc text/plain Tobias Scherbaum 2007-03-27 18:55 0000 22.66 KB Details
Create a New Attachment (proposed patch, testcase, etc.) View All

Bug 163146 depends on: Show dependency tree
Bug 163146 blocks: 131751 163921

Additional Comments: (this is where you put emerge --info)


Not eligible to see or edit group visibility for this bug.






View Bug Activity   |   Format For Printing   |   XML   |   Clone This Bug


Description:   Opened: 2007-01-22 00:10 0000
Bump to 0.7.1 please. :)

* Fixed SUID security vulnerability by validating success of seteuid/setreuid,
related security advisories, describing the vulnerability:

    * CVE-2006-2916 - artswrapper
    * CVE-2006-4447 - X.Org

------- Comment #1 From Jakub Moc (RETIRED) 2007-01-22 00:14:09 0000 -------
*** Bug 140937 has been marked as a duplicate of this bug. ***

------- Comment #2 From Matthias Geerdsen 2007-01-22 20:25:43 0000 -------
sound/gnome, please you provide an updated ebuild for this

------- Comment #3 From Alexis Ballier 2007-02-10 20:54:16 0000 -------
I have a compilation error with dev-scheme/guile-1.8.1-r1, even with use
deprecated discouraged.

@scheme: any idea about that ? 

------- Comment #4 From Marijn Schouten 2007-02-11 12:00:36 0000 -------
(In reply to comment #3)
> I have a compilation error with dev-scheme/guile-1.8.1-r1, even with use
> deprecated discouraged.
> @scheme: any idea about that ? 

without the actual error, all I can say is that maybe you need some other flags
as well.

------- Comment #5 From Alexis Ballier 2007-02-11 15:33:19 0000 -------
Here it is : 

if x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -DG_LOG_DOMAIN=\"BSESCM\" -I. -I.
-I.. -I.. -I. -I.. -pthread  -pthread -I/usr/include/glib-2.0
-I/usr/lib64/glib-2.0/include   -I/usr/include/glib-2.0
-I/usr/lib64/glib-2.0/include   -DG_DISABLE_CONST_RETURNS  
-D_BIRNET_SOURCE_EXTENSIONS -march=athlon64 -O2 -pipe -DG_DISABLE_CHECKS
-DG_DISABLE_CAST_CHECKS -fno-cond-mismatch -Wall -Wmissing-prototypes
-Wmissing-declarations -Wno-cast-qual -Wno-pointer-sign -Wpointer-arith
-Wredundant-decls -Wmissing-noreturn -ftracer -finline-functions
-fno-keep-static-consts -MT bsescminterp.o -MD -MP -MF ".deps/bsescminterp.Tpo"
-c -o bsescminterp.o bsescminterp.c; \
        then mv -f ".deps/bsescminterp.Tpo" ".deps/bsescminterp.Po"; else rm -f
".deps/bsescminterp.Tpo"; exit 1; fi

[lots of warnings]

bsescminterp.c: In function 'signal_closure_marshal':
bsescminterp.c:651: error: 'scm_catch_body_t' undeclared (first use in this
function)
bsescminterp.c:651: error: (Each undeclared identifier is reported only once
bsescminterp.c:651: error: for each function it appears in.)
bsescminterp.c:651: error: expected ')' before 'signal_marshal_sproc'
bsescminterp.c:652: error: too few arguments to function 'scm_internal_cwdr'

[again lots of warnings]

this is in the "shell" subdirectory.

[ebuild   R   ] dev-scheme/guile-1.8.1-r1  USE="deprecated discouraged elisp
networking nls regex threads -debug -debug-freelist -debug-malloc"


I really have no clue on how to fix that :/

------- Comment #6 From Marijn Schouten 2007-02-11 16:05:45 0000 -------
the page http://beast.gtk.org/download seems to imply that guile-1.6 is needed.

------- Comment #7 From Stefan Cornelius (RETIRED) 2007-02-26 19:57:32 0000 -------
ok, if upgrading doesnt work, we need to backport the patch. i had a quick look
and this should do the job:

http://svn.gnome.org/viewcvs/beast/trunk/launchers/suidmain.c?r1=2875&r2=4022&view=patch

------- Comment #8 From Alexis Ballier 2007-02-27 23:02:59 0000 -------
thanks stefan for the help, but older version are unfortunately affected by bug
#131751 (and most likely guile incompatibilities also)

I've commited 0.7.1 to the tree, this one depends on guile 1.6*, so I've
pmasked it to not cause up/downgrades of guile.


in guile-1.8 ebuild there are those lines : 

# Guile seems to contain some slotting support, /usr/share/guile/ is slotted,
but there are lots of collisions. Most in /usr/share/libguile. Therefore I'm
slotting this in the same slot as guile-1.6* for now.
SLOT="12"


so perhaps if scheme wants to help there, by either taking care of the b0rkage
that has caused guile bump or by slotting it properly...



I've only pmasked beast 0.7.1, feel free to pmask older versions also as imho
they are broken.

------- Comment #9 From Marijn Schouten 2007-03-02 17:19:59 0000 -------
(In reply to comment #8)
> so perhaps if scheme wants to help there, by either taking care of the b0rkage
> that has caused guile bump or by slotting it properly...

what borkage are you referring to that I could fix? I'd love to slot guile-1.8
separately, but I'm not sure it's possible.

------- Comment #10 From Alexis Ballier 2007-03-02 17:31:58 0000 -------
> what borkage are you referring to that I could fix? I'd love to slot guile-1.8
> separately, but I'm not sure it's possible.


bah I've not managed to compile beast with guile 1.8. Try it, it's in the tree
under pmask, you're probably much more able than I am to deal with guile.

------- Comment #11 From Marijn Schouten 2007-03-13 18:07:06 0000 -------
I've tried it. The beast developers have their work cut out for them I think.

------- Comment #12 From Marijn Schouten 2007-03-23 10:02:09 0000 -------
fixes for beast to compile with guile-1.8 which will be included in the next
release:
http://bugzilla.gnome.org/show_bug.cgi?id=364464

------- Comment #13 From Sune Kloppenborg Jeppesen 2007-03-25 07:54:42 0000 -------
Any news on this one?

------- Comment #14 From Alexis Ballier 2007-03-25 12:24:13 0000 -------
Thanks marijn for the help here, beast 0.7.1 should be fine now, 

Adding arches as I suppose 0.7.1 will have to go stable and older versions will
have to be removed.

------- Comment #15 From Sune Kloppenborg Jeppesen 2007-03-25 19:41:19 0000 -------
Thx Alexis. Updating whiteboard.

------- Comment #16 From Christian Faulhammer 2007-03-26 07:30:17 0000 -------
TEST: test -x "/usr/bin/bsescm-0.7.1"
Failed to verify installation of executable: /usr/bin/bsescm-0.7.1
make[1]: *** [check-installation] Error 1
make[1]: Leaving directory
`/var/tmp/portage/media-sound/beast-0.7.1/work/beast-0.7.1/shell'
make: *** [check-recursive] Error 1

I assume the check should be disabled.

[ebuild  N    ] media-sound/beast-0.7.1  USE="mad -debug -static"

------- Comment #17 From Sune Kloppenborg Jeppesen 2007-03-26 08:14:31 0000 -------
Back to ebuild for now. Alexis please provide an updated ebuild.

------- Comment #18 From Alexis Ballier 2007-03-26 21:41:41 0000 -------
very annoying beast ;)

  26 Mar 2007; Alexis Ballier <aballier@gentoo.org>
  +files/beast-0.7.1-noinstalltest.patch, beast-0.7.1.ebuild:
  Dont test if files are installed as they are not at the time we run src_test

------- Comment #19 From Christian Faulhammer 2007-03-27 04:45:45 0000 -------
(In reply to comment #18)
> very annoying beast ;)
> 
>   26 Mar 2007; Alexis Ballier <aballier@gentoo.org>
>   +files/beast-0.7.1-noinstalltest.patch, beast-0.7.1.ebuild:
>   Dont test if files are installed as they are not at the time we run src_test

 So I cc arches again.

------- Comment #20 From Christian Faulhammer 2007-03-27 06:03:30 0000 -------
x86 stable

------- Comment #21 From Sune Kloppenborg Jeppesen 2007-03-27 06:58:53 0000 -------
Thx Alexis and Christian for the quick response.

------- Comment #22 From Tobias Scherbaum 2007-03-27 18:55:31 0000 -------
Created an attachment (id=114669) [details]
compile-failure on ppc

Doesn't compile on ppc.

------- Comment #23 From Alexis Ballier 2007-03-27 19:21:25 0000 -------
hmmm which linux-headers version do you have ?
In which file is SIGTRAP defined ?

------- Comment #24 From Tobias Scherbaum 2007-03-29 17:32:18 0000 -------
(In reply to comment #23)
> hmmm which linux-headers version do you have ?
=sys-kernel/linux-headers-2.6.17-r2

> In which file is SIGTRAP defined ?
/usr/include/asm/signal.h

------- Comment #25 From Alexis Ballier 2007-03-30 18:07:15 0000 -------
Ok I've been able to track and reproduce this error by compiling a cross
toolchain and reading cpp output (ouch), it seems that there is a problem in
glib headers : 

/usr/include/glib-2.0/glib/gbacktrace.h

line 55 (glib 2.12.11): 
#else   /* !__i386__ && !__alpha__ */
#  define G_BREAKPOINT()        G_STMT_START{ raise (SIGTRAP); }G_STMT_END
#endif  /* __i386__ */


but this file never includes signal.h on those non x86{,_64} nor alpha arches.

while this could be fixed by including signal.h in any file using G_BREAKPOINT,
I tend to think that's it's a glib bug.


what do you think, should I just patch beast to resolve this security issue
asap and then let the gnome team fix that or wait for a fix from the gnome team
?

------- Comment #26 From Sune Kloppenborg Jeppesen 2007-03-30 19:55:04 0000 -------
Thx Alexis.

Since this appears to be suid root I would prefer a fix asap and the let the
gnome ppl fix their error afterwards.

------- Comment #27 From Alexis Ballier 2007-03-30 20:46:36 0000 -------
then lets go : 
  30 Mar 2007; Alexis Ballier <aballier@gentoo.org>
  +files/beast-0.7.1-signalheader.patch, beast-0.7.1.ebuild:
  Include signal.h to workaround glib not including it causing compile
  failures on ppc

------- Comment #28 From Tobias Scherbaum 2007-03-31 10:30:44 0000 -------
(In reply to comment #27)
> then lets go : 
>   30 Mar 2007; Alexis Ballier <aballier@gentoo.org>
>   +files/beast-0.7.1-signalheader.patch, beast-0.7.1.ebuild:
>   Include signal.h to workaround glib not including it causing compile
>   failures on ppc

Thanks, ppc stable.

------- Comment #29 From Sune Kloppenborg Jeppesen 2007-04-13 20:29:39 0000 -------
I've never used BEAST but fail to see how you're going to escalate privileges
unless you find another vulnerability in BEAST.

hlieberman/Sound/gtk/Security do you know of any way of using this to gain root
privileges without another vuln?

------- Comment #30 From Pierre-Yves Rofes 2007-04-13 23:55:57 0000 -------
sound or gnome: could someone explain why this app need setuid? Is it really
necessary?
according to this: http://security.linuxtoday.com/developer/2004030900926NWGNRL
It's just to get a -20 priority... I really don't see the point in doing this
:/ Is it a kind of safety net to prevent jitters in case the box get
overloaded? 

please advise.

------- Comment #31 From Daniel Gryniewicz 2007-04-16 18:42:51 0000 -------
I don't personally use beast; but I assume, based on past experience with
people using sound systems like JACK, that it is setuid root so that it can set
itself to SCHED_FIFO (or SCHED_RR).  There are workarounds for those to not
need root; maybe Gentoo already does it for JACK?  If so, beast could be
modified to use that, or maybe just configured to use it.

------- Comment #32 From Raphael Marichez 2007-04-27 21:49:19 0000 -------
200704-22, thanks everybody. Sorry for the delay.

Bug List: (This bug is not in your last search results)   Show last search results      Search page      Enter new bug