|
|
|
|
| |
"SILC Server enables system administrators to set up their own SILC networks. SILC Toolkit is full implementation of the SILC protocol and is intended for software and application developers who want to integrate SILC support in their products."
Insecure temporary file usage allows local attackers to perform a symlink attack on Silc server and toolkit. |
| |
Credit:
The information has been provided by Eric Romang.
The original article can be found at: http://www.zataz.net/adviso/silc-server-toolkit-06152005.txt
|
| |
Vulnerable Systems:
* silc-server version 1.0 and prior
* silc toolkit version 0.9.12-r3 and prior
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.
Vulnerable code:
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");
Disclosure Timeline:
Discovered : 2005-05-31
Vendor notified : 2005-06-15
Vendor response : none
Vendor fix : none
Disclosure : 2005-09-01
|
|
|
|
|
|
|
|
|
|