update to 1.8.5
- fixed CVE-2012-2337 - temporarily disabled SSSD support
This commit is contained in:
parent
74fe5b93c4
commit
86c7e6867b
@ -1,44 +0,0 @@
|
||||
diff -up sudo-1.8.1p2/configure.in.getgrouplist sudo-1.8.1p2/configure.in
|
||||
--- sudo-1.8.1p2/configure.in.getgrouplist 2011-07-12 12:13:29.562597933 +0200
|
||||
+++ sudo-1.8.1p2/configure.in 2011-07-12 12:15:27.116597851 +0200
|
||||
@@ -2007,7 +2007,7 @@ dnl
|
||||
AC_FUNC_GETGROUPS
|
||||
AC_CHECK_FUNCS(strrchr sysconf tzset strftime initgroups getgroups fstat \
|
||||
regcomp setlocale nl_langinfo getaddrinfo mbr_check_membership \
|
||||
- setrlimit64 sysctl)
|
||||
+ setrlimit64 sysctl getgrouplist)
|
||||
AC_CHECK_FUNCS(getline, [], [
|
||||
AC_LIBOBJ(getline)
|
||||
AC_CHECK_FUNCS(fgetln)
|
||||
diff -up sudo-1.8.1p2/plugins/sudoers/pwutil.c.getgrouplist sudo-1.8.1p2/plugins/sudoers/pwutil.c
|
||||
--- sudo-1.8.1p2/plugins/sudoers/pwutil.c.getgrouplist 2011-07-12 12:13:17.346597942 +0200
|
||||
+++ sudo-1.8.1p2/plugins/sudoers/pwutil.c 2011-07-12 12:19:02.171597700 +0200
|
||||
@@ -711,6 +711,28 @@ user_in_group(struct passwd *pw, const c
|
||||
}
|
||||
#endif /* HAVE_MBR_CHECK_MEMBERSHIP */
|
||||
|
||||
+#ifdef HAVE_GETGROUPLIST
|
||||
+ if (user_ngroups >= 0 &&
|
||||
+ strcmp(pw->pw_name, list_pw ? list_pw->pw_name : user_name) == 0)
|
||||
+ {
|
||||
+ gid_t *grouplist, grouptmp;
|
||||
+ int n_groups, i;
|
||||
+ n_groups = 1;
|
||||
+
|
||||
+ if (getgrouplist(user_name, user_gid, &grouptmp, &n_groups) == -1) {
|
||||
+ grouplist = (gid_t *) emalloc(sizeof(gid_t) * (n_groups + 1));
|
||||
+ if (getgrouplist(user_name, user_gid, grouplist, &n_groups) > 0)
|
||||
+ for (i = 0; i < n_groups; i++)
|
||||
+ if (grouplist[i] == grp->gr_gid) {
|
||||
+ free(grouplist);
|
||||
+ retval = TRUE;
|
||||
+ goto done;
|
||||
+ }
|
||||
+ free(grouplist);
|
||||
+ }
|
||||
+ }
|
||||
+#endif /* HAVE_GETGROUPLIST */
|
||||
+
|
||||
done:
|
||||
if (grp != NULL)
|
||||
gr_delref(grp);
|
@ -1,28 +0,0 @@
|
||||
diff -up sudo-1.8.3/src/ttysize.c.pipelist sudo-1.8.3/src/ttysize.c
|
||||
--- sudo-1.8.3/src/ttysize.c.pipelist 2011-10-21 15:01:26.000000000 +0200
|
||||
+++ sudo-1.8.3/src/ttysize.c 2011-10-26 02:09:39.582790562 +0200
|
||||
@@ -20,6 +20,7 @@
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/ioctl.h>
|
||||
+#include <sys/stat.h>
|
||||
#include <stdio.h>
|
||||
#ifdef STDC_HEADERS
|
||||
# include <stdlib.h>
|
||||
@@ -48,6 +49,16 @@ void
|
||||
get_ttysize(int *rowp, int *colp)
|
||||
{
|
||||
char *p;
|
||||
+ struct stat st;
|
||||
+
|
||||
+ if (fstat(STDOUT_FILENO, &st) == 0) {
|
||||
+ if (S_ISFIFO(st.st_mode)) {
|
||||
+ *rowp = 0;
|
||||
+ *colp = 0;
|
||||
+ return;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
#ifdef TIOCGWINSZ
|
||||
struct winsize wsize;
|
||||
|
@ -1,23 +0,0 @@
|
||||
--- sudo-1.8.3p1/src/sudo.c Fri Oct 21 09:01:26 2011
|
||||
+++ sudo-1.8.3p1/src/sudo.c Tue Jan 24 15:59:03 2012
|
||||
@@ -1208,15 +1208,15 @@
|
||||
sudo_debug(int level, const char *fmt, ...)
|
||||
{
|
||||
va_list ap;
|
||||
- char *fmt2;
|
||||
+ char *buf;
|
||||
|
||||
if (level > debug_level)
|
||||
return;
|
||||
|
||||
- /* Backet fmt with program name and a newline to make it a single write */
|
||||
- easprintf(&fmt2, "%s: %s\n", getprogname(), fmt);
|
||||
+ /* Bracket fmt with program name and a newline to make it a single write */
|
||||
va_start(ap, fmt);
|
||||
- vfprintf(stderr, fmt2, ap);
|
||||
+ evasprintf(&buf, fmt, ap);
|
||||
va_end(ap);
|
||||
- efree(fmt2);
|
||||
+ fprintf(stderr, "%s: %s\n", getprogname(), buf);
|
||||
+ efree(buf);
|
||||
}
|
29
sudo-1.8.5-pipelist.patch
Normal file
29
sudo-1.8.5-pipelist.patch
Normal file
@ -0,0 +1,29 @@
|
||||
diff -up sudo-1.8.5rc5/common/ttysize.c.pipelist sudo-1.8.5rc5/common/ttysize.c
|
||||
--- sudo-1.8.5rc5/common/ttysize.c.pipelist 2012-04-06 21:43:19.000000000 +0200
|
||||
+++ sudo-1.8.5rc5/common/ttysize.c 2012-05-16 13:03:17.184034854 +0200
|
||||
@@ -20,6 +20,7 @@
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/ioctl.h>
|
||||
+#include <sys/stat.h>
|
||||
#include <stdio.h>
|
||||
#ifdef STDC_HEADERS
|
||||
# include <stdlib.h>
|
||||
@@ -71,8 +72,17 @@ get_ttysize_ioctl(int *rowp, int *colp)
|
||||
void
|
||||
get_ttysize(int *rowp, int *colp)
|
||||
{
|
||||
+ struct stat st;
|
||||
debug_decl(fork_cmnd, SUDO_DEBUG_EXEC)
|
||||
|
||||
+ if (fstat(STDOUT_FILENO, &st) == 0) {
|
||||
+ if (S_ISFIFO(st.st_mode)) {
|
||||
+ *rowp = 0;
|
||||
+ *colp = 0;
|
||||
+ return;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
if (get_ttysize_ioctl(rowp, colp) == -1) {
|
||||
char *p;
|
||||
|
File diff suppressed because it is too large
Load Diff
26
sudo.spec
26
sudo.spec
@ -1,7 +1,7 @@
|
||||
Summary: Allows restricted root access for specified users
|
||||
Name: sudo
|
||||
Version: 1.8.3p1
|
||||
Release: 6%{?dist}
|
||||
Version: 1.8.5
|
||||
Release: 1%{?dist}
|
||||
License: ISC
|
||||
Group: Applications/System
|
||||
URL: http://www.courtesan.com/sudo/
|
||||
@ -29,11 +29,9 @@ Patch2: sudo-1.7.2p1-envdebug.patch
|
||||
# add m4/ to paths in aclocal.m4
|
||||
Patch3: sudo-1.7.4p3-m4path.patch
|
||||
# disable word wrapping if the ouput is piped
|
||||
Patch4: sudo-1.8.3-pipelist.patch
|
||||
# CVE-2012-0809
|
||||
Patch5: sudo-1.8.3p1-CVE-2012-0809.patch
|
||||
Patch4: sudo-1.8.5-pipelist.patch
|
||||
# SSSD support
|
||||
Patch6: sudo-1.8.3p1-sssd-support.patch
|
||||
Patch5: sudo-1.8.5-sssd-support.patch
|
||||
|
||||
%description
|
||||
Sudo (superuser do) allows a system administrator to give certain
|
||||
@ -62,8 +60,7 @@ plugins that use %{name}.
|
||||
%patch2 -p1 -b .envdebug
|
||||
%patch3 -p1 -b .m4path
|
||||
%patch4 -p1 -b .pipelist
|
||||
%patch5 -p1 -b .CVE-2012-0809
|
||||
%patch6 -p1 -b .sssd-support
|
||||
%patch5 -p1 -b .sssd-support
|
||||
|
||||
# Remove execute permission on this script so we don't pull in perl deps
|
||||
chmod -x plugins/sudoers/sudoers2ldif
|
||||
@ -95,8 +92,8 @@ export CFLAGS="$RPM_OPT_FLAGS $F_PIE" LDFLAGS="-pie -Wl,-z,relro -Wl,-z,now"
|
||||
--with-ldap \
|
||||
--with-selinux \
|
||||
--with-passprompt="[sudo] password for %p: " \
|
||||
--with-linux-audit \
|
||||
--with-sssd
|
||||
--with-linux-audit
|
||||
# --with-sssd
|
||||
# --without-kerb5 \
|
||||
# --without-kerb4
|
||||
make
|
||||
@ -141,9 +138,6 @@ rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
%files -f sudo_all.lang
|
||||
%defattr(-,root,root)
|
||||
%doc ChangeLog NEWS README* MANIFEST
|
||||
%doc doc/HISTORY doc/LICENSE doc/TROUBLESHOOTING doc/UPGRADE
|
||||
%doc doc/schema.* plugins/sudoers/sudoers2ldif doc/sample.*
|
||||
%attr(0440,root,root) %config(noreplace) /etc/sudoers
|
||||
%attr(0750,root,root) %dir /etc/sudoers.d/
|
||||
%config(noreplace) /etc/pam.d/sudo
|
||||
@ -162,6 +156,7 @@ rm -rf $RPM_BUILD_ROOT
|
||||
%{_mandir}/man8/sudoedit.8*
|
||||
%{_mandir}/man8/sudoreplay.8*
|
||||
%{_mandir}/man8/visudo.8*
|
||||
%{_docdir}/sudo-%{version}/*
|
||||
|
||||
|
||||
# Make sure permissions are ok even if we're updating
|
||||
@ -175,6 +170,11 @@ rm -rf $RPM_BUILD_ROOT
|
||||
%{_mandir}/man8/sudo_plugin.8*
|
||||
|
||||
%changelog
|
||||
* Thu May 17 2012 Daniel Kopecek <dkopecek@redhat.com> - 1.8.5-1
|
||||
- update to 1.8.5
|
||||
- fixed CVE-2012-2337
|
||||
- temporarily disabled SSSD support
|
||||
|
||||
* Wed Feb 29 2012 Daniel Kopecek <dkopecek@redhat.com> - 1.8.3p1-6
|
||||
- fixed problems with undefined symbols (rhbz#798517)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user