ot Valeri Dachew(12-06-2000)
Date: Fri, 9 Jun 2000 17:06:30 +0200
From: Markus Friedl markus.friedl@INFORMATIK.UNI-ERLANGEN.DE
Subject: OpenSSH's UseLogin option allows remote access with
root privilege.
Optsiiata na OpenSSH UseLogin pozvoliava na otdalechen
potrebitel dostup s
root-ski privilegii.
1. Zasegnati sistemi:
Instalatsiiata po podrazbirane na OpenSSH ne e zasegnata,
dokolkoto
UseLogin po podrazbirane e 'no'. Obache, ako UseLogin e
vklyuchena,
vsichki versii na OpenSSH predi 2.1.1 sa zasegnati.
2. Opisanie:
Ako optsiiata UseLogin e vklyuchena, OpenSSH survurut (sshd) ne
prevklyuchva na UID-a na vlizashtiia potrebitel. Vmesto tova,
sshd
razchita na login(1) da svurshi rabotata. Obache, ako
potrebiteliat
zadade komanda za otdalecheno izpulnenie, login(1) ne mozhe da
bude
izpolzvan i sshd se provalia v slaganeto na veren UID.
Komandata se
startira sus sushtite privilegii kato sshd (obiknoveno
root-ski
privilegii).
3. Opasnost:
Ako administratora vklyuchi UseLogin, niakoi potrebitel mozhe da
vzeme
privilegirovan dostup do survura, na koito e pusnat sshd.
4. Kratkovremenno reshenie:
Ne vklyuchvaite UseLogin na mashinata si ili izklyuchete UseLogin
otnovo v:
UseLogin no
5. Reshenie:
Obnovete do OpenSSH-2.1.1 ili prilozhete prikrepeniia patch.
OpenSSH-2.1.1 mozhete da namerite ot www.openssh.com.
Prilozhenie:
1. OpenSSH-1.2.2
--- sshd.c.orig Thu Jan 20 18:58:39 2000
+++ sshd.c Tue Jun 6 10:12:00 2000
@@ -2231,6 +2231,10 @@
struct stat st;
char *argv[10];
+ /* login(1) is only called if we execute the login shell
*/
+ if (options.use_login && command != NULL)
+ options.use_login = 0;
+
f = fopen("/etc/nologin", "r");
if (f) {
/* /etc/nologin exists. Print its contents and exit. */
2. OpenSSH-1.2.3
--- sshd.c.orig Mon Mar 6 22:11:17 2000
+++ sshd.c Tue Jun 6 10:14:07 2000
@@ -2250,6 +2250,10 @@
struct stat st;
char *argv[10];
+ /* login(1) is only called if we execute the login shell
*/
+ if (options.use_login && command != NULL)
+ options.use_login = 0;
+
f = fopen("/etc/nologin", "r");
if (f) {
/* /etc/nologin exists. Print its contents and exit. */
3. OpenSSH-2.1.0
--- session.c.orig Wed May 3 20:03:07 2000
+++ session.c Tue Jun 6 10:10:50 2000
@@ -744,6 +744,10 @@
struct stat st;
char *argv[10];
+ /* login(1) is only called if we execute the login shell
*/
+ if (options.use_login && command != NULL)
+ options.use_login = 0;
+
f = fopen("/etc/nologin", "r");
if (f) {
/* /etc/nologin exists. Print its contents and exit. */
<< Izleze versiia 1.2.0 na XMMS | Bulgarskoto Linuks Obshtestvo v Evropa >>
|