comp.lang.ada
 help / color / mirror / Atom feed
From: Georg Bauhaus <sb463ba@l1-hrz.uni-duisburg.de>
Subject: Re: GNAT 3.14p and Red Hat 7.2
Date: Fri, 29 Mar 2002 16:02:05 +0000 (UTC)
Date: 2002-03-29T16:02:05+00:00	[thread overview]
Message-ID: <a8235t$3bt$1@a1-hrz.uni-duisburg.de> (raw)
In-Reply-To: 87sn6kjus2.fsf@deneb.enyo.de

Florian Weimer <fw@deneb.enyo.de> wrote:
: Georg Bauhaus <sb463ba@l1-hrz.uni-duisburg.de> writes:
: 
:> I recall a discussion of OS security in the Minix book
:> by Tanenbaum, where he points out that you should not believe
:> in security because your system manual tells you some part
:> of the system has been secured. On the contrary, the mechanism
:> should be open to cracking attempts, to be tested.
: 
: Did Tanenbaum really write that?  What strange way to think about
: security!

Maybe I should try to state this more clearly. Some quotes:
`First, the system design should be public. Assuming that the intruders
do not know how the system works serves only to delude the designers.'

`Fifth, the protection mechanism should be ... built
into the lowest layers of the system. Trying to retrofit
security to an existing insecure system is nearly impossible.'

: We haven't got just manuals, we have also got source code.
yes, see above.

: Looking at
: the source code is far more efficient than random black box testing
: without vendor support.

Maybe, don't know the efficiency scale here,
but why look at OS source code in order to be free to
care less about null string file names, because the compiler
is smart enough to work around OS's race conditions?

I was trying to argue that while this may be "fixed", it might
support the false idea that Ada programs are safe by RM and
good OS aware compilers. That's a dangerous aproach in my view!

:  but such
: testing can only show the presence of bugs, not their absence.

Neither can the absence be shown to a degree that deserves the name
security. There is none, only protection (OS), trust (human), and
a good setup (both).

:> Improved security due to the removal of one possible hole?
: 
: Yes, of course, and it's not a "possible hole", it's a typical /tmp
: race condition.

So it is a typical hole, that's not a compliment for ___ {, ___}
(fill in here). (Important point. What is the intention
of forcing mkstemp()? Beeing able to say, "See, no GNU Ada program
introduces security problems by using race-condition OS facilities?")

: This particular problem has been documented over and over again. In
: fact, it is one of the most well-known security problems in
: UNIX-centered code.

So change UNIX. Don't change the look of its system calls.
See above, quote 2.

:   But your
: advice not to fix such problems and just document them is entirely
: incomprehensible to me.

I think an OS problem should not be fixed by a compiler,
introducing the possibility of a non-portable fix-me-once-more
problem, should there be another operating system with 
shared scratch space, and someone wants to adapt the compiler to
that system. (Again in an attempt to free programmers from having
to think about possible security holes introduced by their programs?)

And for programs that should run under high protection,
as opposed to an operating system that should be protected
from the vulnerabilities of its inherent race conditions
(mkstemp() is a _workaround_, since the originals are still there),
I would of course try to
make sure every external thing used by the program is in a
well known state, with an appropriate setup and good administration
e.g..

The qoutes can be found in both the Minix book and Modern OSs,
security chapters.

- georg
running Debian GNU/Linux most of the time.



  reply	other threads:[~2002-03-29 16:02 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-03-24 23:20 GNAT 3.14p and Red Hat 7.2 Ken Nelson
2002-03-25 15:22 ` Mark Johnson
2002-03-26  2:12   ` Ken Nelson
2002-03-26 14:56     ` Mark Johnson
2002-03-26 19:52       ` Florian Weimer
2002-03-26 17:21     ` Stephen Leake
2002-03-26 19:53       ` Florian Weimer
2002-03-27 10:49         ` David C. Hoos, Sr.
2002-03-27 11:55           ` Florian Weimer
2002-03-28 16:04             ` Georg Bauhaus
2002-03-28 20:34               ` Florian Weimer
2002-03-29 16:02                 ` Georg Bauhaus [this message]
2002-03-30 16:18                   ` Georg Bauhaus
2002-03-30 19:17                     ` Florian Weimer
2002-03-30 21:22                       ` David C. Hoos, Sr.
2002-03-30 23:14                         ` Florian Weimer
2002-03-26 10:06 ` Dr. Michael Paus
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox