ot Valeri Dachew na 12-06-2000@6:50 GMT(+2)
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. */
[Komentari: 0] |