Russ Allbery <[EMAIL PROTECTED]> writes:

> Package: rssh
> Version: 2.3.0-1
> Severity: grave
> Tags: security patch
> Justification: renders package unusable

> Due to missing curly braces in util.c, if rssh gets as far as checking
> to see if the issued command was CVS, the check will always succeed.
> Furthermore, this failure can be exploited to pass -e options to CVS,
> since the command invoked will actually be /usr/bin/cvs and the security
> check for -e options will be bypassed.

> This breaks all use of rsync and rdist since /usr/bin/cvs is actually
> invoked instead of those programs.  It also bypasses all security
> checking from rssh.conf if the check for what program to run gets that
> far.

> I've confirmed that the attached trivial patch fixes the problem.

Ack, sorry, here's the patch.

--- rssh-2.3.0/util.c.orig      2005-11-27 09:01:52.000000000 -0800
+++ rssh-2.3.0/util.c   2006-01-06 16:23:04.000000000 -0800
@@ -209,13 +209,14 @@
                return PATH_SCP;
        }
 
-       if ( check_command(cl, opts, PATH_CVS, RSSH_ALLOW_CVS) )
+       if ( check_command(cl, opts, PATH_CVS, RSSH_ALLOW_CVS) ){
                if ( opt_exist(cl, 'e') ){
                        fprintf(stderr, "\ninsecure -e option not allowed.");
                        log_msg("insecure -e option in cvs command line!");
                        return NULL;
                }
                return PATH_CVS;
+       }
 
        if ( check_command(cl, opts, PATH_RDIST, RSSH_ALLOW_RDIST) ){
                /* filter -P option */

-- 
Russ Allbery ([EMAIL PROTECTED])               <http://www.eyrie.org/~eagle/>


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to