Re: Trusted System Challenge
[email protected] Thu, 13 Jan 2005 04:13:33 -0500
| Newsgroups | gmane.comp.security.programming |
|---|---|
| Message-ID | <[email protected]> |
On Thu, 13 Jan 2005 02:05:55 GMT, [email protected] said: > I have put up a little challenge for anyone to play with. > The challenge is to modify 3 specific files on the system. > I am granting full root access to everyone. I presume you're familiar with Bruce Schneier's explanation of why challenges like these rarely do anything to inspire confidence in your system. If you're not, go read 'Secrets and Lies'. If you haven't read that already, you're probably not qualified to design trusted systems. Now, if you were to *explain* how your trusted system worked, and why it should prevent the challenge, we *might* start thinking about taking the challenge seriously. Wander over to the SELinux site, and look at the amount of analysis work they've done. Creating a trusted system with a useful amount of functionality is *hard*, and you've not shown us any reason to think that your system is worth testing. So what happens? The people who could mount a credible test probably don't try it, because they can tell from what they've seen so far that the scheme is probably flawed (I can't remember an open challenge that *wasn't* flawed). So the only people who bother trying are script kiddies and the like - giving you a false sense of confidence in its security. And more snake oil gets sold. If you want commentary from seriously clued people, try the following: 1) Explain in 3-4 paragraphs what your approach was to making a trusted Linux system. Include enough information to prove that you've bothered doing the research to find previous attempts, and why you didn't follow their approaches (successful or not). Why is (or isn't) Bastille interesting, for example? What issues do LIDS, GRSecurity, and SELinux have? Why are you doing things similarly to them, or differently? 2) List the 4 or 5 most obvious classes of attack against your system, and explain what you've done to *ensure* they won't work. This (a) keeps us from wasting our time trying things that won't work, and (b) shows that you've thought things through at least somewhat. What does your system do to protect against a coding error in a set-UID program? What does it do to protect against an exploitable kernel bug? What do you do about things like resource starvation attacks? How do you prevent an 'insmod' of malicious (or just buggy and exploitable) kernel modules? And I assure you that *my* checklist of "things it has to do right before we even *think* of calling it trusted" is *much* shorter than, say, Steve Bellovin or Matt Blaze's (and again, if you don't understand this comment, you probably should stay away from trusted system design till you *do*..)
signature.asc
(application/pgp-signature, 226 B)
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.6 (GNU/Linux) Comment: Exmh version 2.5 07/13/2001 iD8DBQFB5ju9cC3lWbTT17ARAjwoAJ9fT9y6sZk7aRWQrs75w9OeLEUL0ACgxEr5 L9O7ZpwrrpqYJUKDRFB3zHA= =KJxW -----END PGP SIGNATURE-----