SNAP Innovation's PrimeBase Database 4.2 poor default file permissions and
use of symlinks during install.
September 1, 2003

I. BACKGROUND

>From the readme.txt file

"The PrimeBase Database Server is a relational Database Management System
(DBMS) for Mac, UNIX and Windows platforms. The PrimeBase Database Server
supports all common database access standards (PBT, SQL, ODBC, JDBC, PHP,
Perl, RealBasic, EOF and DAL) and protocols (TCP/IP, Shared Memory and
Appletalk)."

II. DESCRIPTION

1. Poor use of temporary files during installation.

I noticed the PrimeBase install script creates the following files in
/tmp:

[nobody $] ln -s /etc/shadow /tmp/PrimeBase.log

Then if a malicious user has previous knowledge of the administrators
installation of PrimeBase the contents of /etc/shadow will be overwritten
with the contents of PrimeBase.log.


LOG="/tmp/PrimeBase.log"
        echo "$str:[y/n]"  | tee  $LOG
echo "PrimeBase Installation: $now" >>  $LOG

2. Poor default file permissions.
A malicious local user could manipulate the binaries for PrimeBase used by
the administrator and execute arbitrary code.  The attacker would need to
wait until the Database was restarted or the system rebooted.

root@Fester local]#  ls -ld /usr/local/primebase
drwxrwxrwx    6 root     root         4096 Sep  1 13:57 primebase


III. ANALYSIS

Local attackers can exploit these vulnerabilities to clobber root owned
system files and modify software binaries.  This could possibly lead to a
denial of service or system compromise.

IV. DETECTION

PrimeBase Data Server Build 4212.
http://www.primebase.com/en/index.html

V. WORKAROUND

1. temp file vulnerability.

Boot the system into single user mode only and ensure no other users are
logged in during installation.

2. Default file permissions.
Change directories to more restrictive ownerships (untested).

VI. VENDOR FIX

Not Notified.

VII. CVE INFORMATION

The Mitre Corp.'s Common Vulnerabilities and Exposures (CVE) Project
has not assigned an identification number to this issue.

VIII. DISCLOSURE TIMELINE

9/16/2003	Issue disclosed to Vendor.

IX. CREDIT

Larry W. Cashdollar (http://vapid.dhs.org) discovered this vulnerability.