Gentoo Archives: gentoo-hardened

From: Ned Ludd <solar@g.o>
To: gentoo-hardened@l.g.o
Subject: Re: [gentoo-hardened] SSP + setjmp() = badness?
Date: Sun, 06 Aug 2006 13:02:03
Message-Id: 1154869172.10256.42.camel@localhost
In Reply to: Re: [gentoo-hardened] SSP + setjmp() = badness? by "Peter S. Mazinger"
1 On Sun, 2006-08-06 at 13:17 +0200, Peter S. Mazinger wrote:
2 > On Mon, 31 Jul 2006, Ned Ludd wrote:
3 >
4 > > On Mon, 2006-07-31 at 20:33 +0200, pageexec@××××××××.hu wrote:
5 > > > On 31 Jul 2006 at 11:28, Ned Ludd wrote:
6 > > > > gcc-4.x and hardened are not in the works..
7 > > > > We are undecided at this time how much we wish to pursue that avenue.
8 > > >
9 > > > which part of hardened gcc is in question? i'd think that at least
10 > > > PIE/RELRO/BIND_NOW are as easy to support as in 3.x.
11 > >
12 > > Yes these would be pretty trivial to do.
13 > >
14 > > > ssp may or may
15 > > > not be a good idea given how new the 4.x series is, but as Mike said,
16 > > > at least there's an eager upstream to fix any issues.
17 >
18 > toolchain.eclass misses the needed support for gcc-4.1 like ssp
19 >
20 > > I think the major problem we are facing here is how to cleanly upgrade
21 > > from 3.x to 4.x. symbol names have changed. And using the stub/aliases
22 > > method Peter used in uClibc svn allows the __guard to be overwritten.
23 >
24 > How can __guard be overwritten, it is even marked with attribute_relro?
25
26 We tested and talked about this before peter..
27 None the less here is a simple testcase for you.
28
29 extern unsigned long __guard;
30
31 void fail() {
32 __guard = 0;
33 }
34
35 int main() {
36 puts("This should fail");
37 fail();
38 puts("This should not be reached");
39 return 0;
40 }
41
42
43 ./guardtest
44 This should fail
45 main: stack smashing attack in function fail()
46 Aborted
47
48 You results should be similar.
49
50
51 --
52 Ned Ludd <solar@g.o>
53 Gentoo Linux
54
55 --
56 gentoo-hardened@g.o mailing list

Replies

Subject Author
Re: [gentoo-hardened] SSP + setjmp() = badness? "Peter S. Mazinger" <ps.m@×××.net>