bb3e8f5e8d
"A security issue has been reported in Kerberos, which potentially can be exploited by malicious, local users to perform certain actions with escalated privileges. The security issue is caused due to missing checks for whether the "setuid()" call has succeeded in the bundled krshd and v4rcp applications. This can be exploited to disclose or manipulate the contents of arbitrary files or execute arbitrary code with root privileges if the "setuid()" call fails due to e.g. resource limits." http://secunia.com/advisories/21402/ http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-3083 http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-3084 http://web.mit.edu/kerberos/www/advisories/MITKRB5-SA-2006-001-setuid.txt Bump PKGREVISION.
20 lines
555 B
Text
20 lines
555 B
Text
$NetBSD: patch-as,v 1.1 2006/08/09 17:31:10 salo Exp $
|
|
|
|
Security fix for SA21402.
|
|
|
|
--- lib/krb4/kuserok.c.orig 2003-03-05 04:38:51.000000000 +0100
|
|
+++ lib/krb4/kuserok.c 2006-08-09 18:52:53.000000000 +0200
|
|
@@ -159,9 +159,11 @@ kuserok(kdata, luser)
|
|
*/
|
|
if(getuid() == 0) {
|
|
uid_t old_euid = geteuid();
|
|
- seteuid(pwd->pw_uid);
|
|
+ if (seteuid(pwd->pw_uid) < 0)
|
|
+ return NOTOK;
|
|
fp = fopen(pbuf, "r");
|
|
- seteuid(old_euid);
|
|
+ if (seteuid(old_euid) < 0)
|
|
+ return NOTOK;
|
|
if ((fp) == NULL) {
|
|
return(NOTOK);
|
|
}
|