On Sun, 14 May 2000, Charlie Brady wrote:
>
> On Fri, 12 May 2000 [EMAIL PROTECTED] wrote:
>
> > This would likely include:
> >
> > 1. A Daemon re-written in 'C' rather then perl. (primarily for security
> > reasons)
>
> Really? Your C compiler does automated taint checking for you? You see a
> much higher proportion of security problems with perl programs cf C
> programs?
It is more a case of what a well coded daemon should do, that is difficult
in Perl. In this case I would expect the daemon to take the following
measures on startup:
1. Dissasociate from the controlling terminal. (2 * fork)
2. Close *ALL* open handles. (call to sysopt, multiple calls to close)
3. Destroy the runtime environment && Re-create what is needed.
(To stop bad/unwanted environment vars being passed to called
programs - namely the virus scanners.)
4. Open a channel to Syslog.
5. SU to a non-privileged user.
6. chroot with a minimal runtime environment.
Most of these can be done to some degree with perl, barring the chroot
(and possibly the suid - anybody know how to do this in perl ?).
The problem here being a complete perl runtime would be needed in the
chroot environment. As the entire purpose of a chroot prison is to
provide a restrictive environment without any of the tools a hacker would
find useful - this defeats the purpose of it.
Security is always a concern and MUST be designed in from day 1. It can
not be retrofitted into a package - as people have found time and time
again.
Cheers
Jason.
---
Jason Ball
Electronic Commerce Specialist
Corporate Express Australia Ltd
Phone: +61 2 9335 0374 Fax: +61 2 9335 0753
Email: [EMAIL PROTECTED]
--
SLUG - Sydney Linux Users Group Mailing List - http://www.slug.org.au
To unsubscribe send email to [EMAIL PROTECTED] with
unsubscribe in the text