           SPELL=libsafe-old
         VERSION=2.0-5
          SOURCE=libsafe-$VERSION.tar.bz2
   SOURCE_MD5SUM=c8d0154f016c0820e6e8af3df9cb6248
SOURCE_DIRECTORY=$BUILD_DIRECTORY/libsafe-$VERSION
   SOURCE_URL[0]=http://ole.tange.dk/projekter/libsafe/$SOURCE
          MD5[0]=7dc518a9a7781025cf836950cb54c022
      LICENSE[0]=LGPL
        WEB_SITE=http://www.research.avayalabs.com/project/libsafe/
       BUILD_API=2
         ENTERED=20020328
         UPDATED=20020427
           SHORT="Libsafe: Protecting Critical Elements of Stacks"
cat << EOF
The exploitation of buffer overflow and format string vulnerabilities
in process stacks constitutes a significant portion of security
attacks in recent years. We present a new method to detect and handle
such attacks. In contrast to previous work, our method does not
require any modification to the operating system and works with
existing binary programs. Our method does not require access to the
source code of defective programs, nor does it require recompilation
or off-line processing of binaries. Furthermore, it can be implemented
on a system-wide basis transparently. Our solution is based on a
middleware software layer that intercepts all function calls made to
library functions that are known to be vulnerable. A substitute
version of the corresponding function implements the original
functionality, but in a manner that ensures that any buffer overflows
are contained within the current stack frame, thus, preventing
attackers from 'smashing' (overwriting) the return address and
hijacking the control flow of a running program. We have implemented
our solution on Linux as a dynamically loadable library called
libsafe. Libsafe has demonstrated its ability to detect and prevent
several known attacks, but its real benefit, we believe, is its
ability to prevent yet unknown attacks. Experiments indicate that the
performance overhead of libsafe is negligible.

This version is compatible with installwatch
EOF

