           SPELL=libsafe-old
         VERSION=2.0-5
          SOURCE=libsafe-$VERSION.tar.bz2
SOURCE_DIRECTORY=$BUILD_DIRECTORY/libsafe-$VERSION
   SOURCE_URL[0]=http://ole.tange.dk/projekter/libsafe/$SOURCE
     SOURCE_HASH=sha512:1ff17fc8a991cf88c92443ee26e194be36d44722eed24bb8e8dcbd2917d242c84d25f7956747bd484a35c2a9d23d6eaa8445af16f74fb9ccc99bbc82db71b13f
      LICENSE[0]=LGPL
        WEB_SITE=http://www.research.avayalabs.com/project/libsafe/
         ENTERED=20020328
         UPDATED=20020427
        KEYWORDS="libs"
           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

