lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <4316ED7B.2070304@zataz.com>
Date: Thu Sep  1 14:09:56 2005
From: eromang at zataz.com (Eric Romang / ZATAZ.com)
Subject: silc server and toolkit insecure temporary file
	creation

#########################################################

silc server and toolkit insecure temporary file creation

Vendor: http://silcnet.org/
Advisory: http://www.zataz.net/adviso/silc-server-toolkit-06152005.txt
Vendor informed: yes
Exploit available: yes
Impact : low
Exploitation : low

#########################################################

The vulnerability is caused due to temporary file being created insecurely.
This can be exploited via symlink attacks in combination  to create and 
overwrite arbitrary files with the privileges of the user running the 
affected script.

##########
Versions:
##########

silc-server <= 1.0
silc-toolkit <= 0.9.12-r3

##########
Solution:
##########

To prevent symlink attack use kernel patch such as grsecurity

#########
Timeline:
#########

Discovered : 2005-05-31
Vendor notified : 2005-06-15
Vendor response : none
Vendor fix : none
Disclosure : 2005-09-01

#####################
Technical details :
#####################

Vulnerable code :
-----------------

In silcd/silcd.c

258 /* Dump server statistics into a file into /tmp directory */
259
260 SILC_TASK_CALLBACK(dump_stats)
261 {
262   FILE *fdd;
263   char filename[256];
264
265   memset(filename, 0, sizeof(filename));
266   snprintf(filename, sizeof(filename) - 1, "/tmp/silcd.%d.stats", 
getpid());
267   fdd = fopen(filename, "w+");
268   if (!fdd)
269     return;
270
271 #define STAT_OUTPUT(fmt, stat) fprintf(fdd, fmt "\n", (int)stat);
272
273   fprintf(fdd, "SILC Server %s Statistics\n\n", silcd->server_name);
274   fprintf(fdd, "Local Stats:\n");

#########
Related :
#########

Bug report : http://bugs.gentoo.org/show_bug.cgi?id=94587

#####################
Credits :
#####################

Eric Romang (eromang@...az.net - ZATAZ Audit)
Thxs to Gentoo Security Team. (Taviso, jaervosz, solar, etc.)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ