Re: Security hole. remote root access.

2012-09-21 Пенетрантность Artem Chuprina
Damir Hakimov - debian-russian@lists.debian.org  @ Thu, 20 Sep 2012 13:19:59 
+0400:

   DH А вот если, из-под другого пользователя сказать sudo ssh-copy-id
   DH somehost интересно что произойдет? В чей known_hosts попадет
   DH соотвествующая запись?
 
  В known_hosts - юзера, потому что sudo не меняет $HOME.  Кстати, с
  ненулевыми шансами на то, что потом этому known_hosts придется еще
  говорить sudo chown перед попыткой добавить туда что-то еще.  А вот на
  том конце, скорее всего, в рутовый authorized_keys, потому что юзера
  sudo как раз меняет, и туда оно пойдет как root.

 DH Ну вот...  :-(
 DH Надеешься, что нашел супер-мега дырищу, бросаешься спасать мир от Зла...
 DH А оказываешься лохом! Тьфу! Стыдоба, да и только!

Добро пожаловать в реальный мир компьютерной безопасности.  Теорема 1:
безопасность не монотонна.

А вот стыдиться этого не надо.  Это нормальная наработка интуиции в
области безопасности.  Даже весьма опытные безопасники ходят по подобным
граблям с регулярностью, и это у них нормально.

А супер-мега дырищи у нас бывают.  Чего стоила одна лишь бага с
рандомайзером в openssl...


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/878vc3dhrf@wizzle.ran.pp.ru



Re: Security hole. remote root access.

2012-09-20 Пенетрантность Artem Chuprina
Damir Hakimov - debian-russian@lists.debian.org  @ Thu, 20 Sep 2012 09:01:07 
+0400:

 DH Если она там была на момент показанного выше ssh-copy-id bogdo, то почему
 DH The authenticity of host 'bogdo (192.168.10.164)' can't be established.  ??

Потому что она была залита не с этой машины или не под этим юзером.  Или
вообще не по ssh.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/87pq5hcf40@wizzle.ran.pp.ru



Re: Security hole. remote root access.

2012-09-20 Пенетрантность Damir Hakimov
  DH Если она там была на момент показанного выше ssh-copy-id bogdo, то 
 почему
  DH The authenticity of host 'bogdo (192.168.10.164)' can't be established.  
 ??

 Потому что она была залита не с этой машины или не под этим юзером.  Или
 вообще не по ssh.

Не по ssh - исключено. Я ленив, и не стану выкаблучиваться если
можно сказать два слова:
ssh-keygen и ssh-copy-id.

А вот если, из-под другого пользователя сказать sudo ssh-copy-id
somehost интересно что произойдет? В чей known_hosts попадет
соотвествующая запись?

--
DamirX


Re: Security hole. remote root access.

2012-09-20 Пенетрантность Artem Chuprina
Damir Hakimov - debian-russian@lists.debian.org  @ Thu, 20 Sep 2012 11:56:41 
+0400:

   DH Если она там была на момент показанного выше ssh-copy-id bogdo, то 
  почему
   DH The authenticity of host 'bogdo (192.168.10.164)' can't be 
  established.  ??
 
  Потому что она была залита не с этой машины или не под этим юзером.  Или
  вообще не по ssh.

 DH Не по ssh - исключено. Я ленив, и не стану выкаблучиваться если
 DH можно сказать два слова:
 DH ssh-keygen и ssh-copy-id.

Мне казалось, что ключ там был root@backup.  То есть, вероятно, уже
существующий.  А ставил ты новые машины, а не бэкап-сервер.  У меня в
шляпе сисадмина в такой ситуации был бы tar с файлами, которые надо
развернуть у рута на новой машине, и .ssh/authorized_keys (не только с
ключом бэкап-юзера, но и со специфической командой для бэкапа) в нем бы
был.

 DH А вот если, из-под другого пользователя сказать sudo ssh-copy-id
 DH somehost интересно что произойдет? В чей known_hosts попадет
 DH соотвествующая запись?

В known_hosts - юзера, потому что sudo не меняет $HOME.  Кстати, с
ненулевыми шансами на то, что потом этому known_hosts придется еще
говорить sudo chown перед попыткой добавить туда что-то еще.  А вот на
том конце, скорее всего, в рутовый authorized_keys, потому что юзера
sudo как раз меняет, и туда оно пойдет как root.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/87haqtcbbf@wizzle.ran.pp.ru



Re: Security hole. remote root access.

2012-09-20 Пенетрантность Damir Hakimov
20 сентября 2012 г., 13:07 пользователь Artem Chuprina r...@ran.pp.ru написал:
  DH А вот если, из-под другого пользователя сказать sudo ssh-copy-id
  DH somehost интересно что произойдет? В чей known_hosts попадет
  DH соотвествующая запись?

 В known_hosts - юзера, потому что sudo не меняет $HOME.  Кстати, с
 ненулевыми шансами на то, что потом этому known_hosts придется еще
 говорить sudo chown перед попыткой добавить туда что-то еще.  А вот на
 том конце, скорее всего, в рутовый authorized_keys, потому что юзера
 sudo как раз меняет, и туда оно пойдет как root.

Ну вот...  :-(
Надеешься, что нашел супер-мега дырищу, бросаешься спасать мир от Зла...
А оказываешься лохом! Тьфу! Стыдоба, да и только!

--
DamirX


Re: Security hole. remote root access.

2012-09-20 Пенетрантность Andrey Rahmatullin
On Thu, Sep 20, 2012 at 01:19:59PM +0400, Damir Hakimov wrote:
 Ну вот...  :-(
 Надеешься, что нашел супер-мега дырищу, бросаешься спасать мир от Зла...
 А оказываешься лохом! Тьфу! Стыдоба, да и только!
Разумеется.
select isn't broken.

-- 
WBR, wRAR


signature.asc
Description: Digital signature


Re: Security hole. remote root access.

2012-09-19 Пенетрантность Yuriy Vidineev
А каким образом вы не задаете пароль рута при установке?

On Wednesday, September 19, 2012 06:38:59 PM Damir Hakimov wrote:

Привет всем.
Нашел в сквизи дыру, через которую можно получить удаленного рута.
Воспроизводится так:


При установке системы, пароль руту не задаем. При этом пользователь, 
заведенный через инсталятор, получит возможность выполнять любую команду через 
sudo, введя свой пароль.


После установки, можно сделать апдейты с security debian. Лично Я всегда 
делаю, но по отношению к этой дыре это, по моему не имеет значения.


Собственно дыра обнаруживается так: с другой машины, из-под рута говорим 
ssh-copy-id  new-machine-ip
... и ... собс-но все! ключ каким-то волшебным образом копируется на эту 
машину и можно заходить рутом:
slogin new-machine-ip
Подтвердите или опровергните, кто может.
В качестве временного решения - установить пароль рута на новой машине.


--
DamirX



Re: Security hole. remote root access.

2012-09-19 Пенетрантность Damir Hakimov
19 сентября 2012 г., 18:44 пользователь Yuriy Vidineev
ade...@yandex.ruнаписал:

 **

 А каким образом вы не задаете пароль рута при установке?


 в графическом инсталяторе - просто нужно оставить поле пустым.

--
DamirX


Re: Security hole. remote root access.

2012-09-19 Пенетрантность Alex Shulgin
2012/9/19 Damir Hakimov damir.haki...@gmail.com:
 Привет всем.
 Нашел в сквизи дыру, через которую можно получить удаленного рута.
 Воспроизводится так:

 При установке системы, пароль руту не задаем. При этом пользователь,
 заведенный через инсталятор, получит возможность выполнять любую команду
 через sudo, введя свой пароль.

 После установки, можно сделать апдейты с security debian. Лично Я всегда
 делаю, но по отношению к этой дыре это, по моему не имеет значения.

 Собственно дыра обнаруживается так: с другой машины, из-под рута говорим
 ssh-copy-id  new-machine-ip
 ... и ... собс-но все! ключ каким-то волшебным образом копируется на эту
 машину и можно заходить рутом:
 slogin new-machine-ip

Зачем так сложно?  ssh root@remote-ip с пустым паролем тоже должно сработать.

 Подтвердите или опровергните, кто может.
 В качестве временного решения - установить пароль рута на новой машине.

И запретить root login в sshd_config


Re: Security hole. remote root access.

2012-09-19 Пенетрантность Damir Hakimov
19 сентября 2012 г., 19:08 пользователь Alex Shulgin alex.shul...@gmail.com
 написал:

  Собственно дыра обнаруживается так: с другой машины, из-под рута говорим
  ssh-copy-id  new-machine-ip
  slogin new-machine-ip

 Зачем так сложно?  ssh root@remote-ip с пустым паролем тоже должно
 сработать.

может быть - не пробовал. Я настраивал rsnapshot через ssh и при обмене
ключами вдруг вылезло. Я, если честно, и осознал-то не сразу что произошло.


  Подтвердите или опровергните, кто может.
  В качестве временного решения - установить пароль рута на новой машине.

 И запретить root login в sshd_config

Да, и проверить на наличие лишних ключей.

Видимо, это бага инсталлятора. А Я специально пароль руту в инсталляторе не
ставил, чтобы он мне пользователя в sudo включил (и sudo поставил).

--
DamiX


Re: Security hole. remote root access.

2012-09-19 Пенетрантность Andrey Melnikoff
Damir Hakimov damir.haki...@gmail.com wrote:
 [-- text/plain, кодировка base64, кодировка: UTF-8, 7 строк --]

 19 сентября 2012 г., 18:44 пользователь Yuriy Vidineev
 ade...@yandex.ruнаписал:

  **
 
  А каким образом вы не задаете пароль рута при установке?
 
  в графическом инсталяторе - просто нужно оставить поле пустым.
grep root: /etc/shadow /etc/passwd покажи?


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/kj5pi9-vja@kenga.kmv.ru



Re: Security hole. remote root access.

2012-09-19 Пенетрантность Andrey Rahmatullin
On Wed, Sep 19, 2012 at 06:38:59PM +0400, Damir Hakimov wrote:
 Привет всем.
 Нашел в сквизи дыру, через которую можно получить удаленного рута.
 Воспроизводится так:
 
 При установке системы, пароль руту не задаем. При этом пользователь,
 заведенный через инсталятор, получит возможность выполнять любую команду
 через sudo, введя свой пароль.
 
 После установки, можно сделать апдейты с security debian. Лично Я всегда
 делаю, но по отношению к этой дыре это, по моему не имеет значения.
 
 Собственно дыра обнаруживается так: с другой машины, из-под рута говорим
 ssh-copy-id  new-machine-ip
 ... и ... собс-но все!
Просит пароль рута.

-- 
WBR, wRAR


signature.asc
Description: Digital signature


Re: Security hole. remote root access.

2012-09-19 Пенетрантность Damir Hakimov
19 сентября 2012 г., 22:00 пользователь Andrey Rahmatullin
w...@wrar.name написал:


  Собственно дыра обнаруживается так: с другой машины, из-под рута говорим
  ssh-copy-id  new-machine-ip
  ... и ... собс-но все!
 Просит пароль рута.


Товарищи господа! Я, конечно, извиняюсь - видимо бага где-то в голове,
только никак не пойму где именно...
Вот лог (сохранившийся в screen)
-
root@backup:/home/bu/data# ping bogdo
PING bogdo (192.168.10.164) 56(84) bytes of data.
64 bytes from bogdo (192.168.10.164): icmp_req=1 ttl=64 time=3.41 ms
64 bytes from bogdo (192.168.10.164): icmp_req=2 ttl=64 time=0.327 ms
64 bytes from bogdo (192.168.10.164): icmp_req=3 ttl=64 time=0.354 ms
^C
--- bogdo ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2000ms
rtt min/avg/max/mdev = 0.327/1.365/3.415/1.449 ms
root@backup:/home/bu/data# ssh-copy-id bogdo
The authenticity of host 'bogdo (192.168.10.164)' can't be established.
RSA key fingerprint is 4f:17:4e:4f:b1:43:a8:45:a6:7b:60:24:a7:43:e1:9a.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'bogdo' (RSA) to the list of known hosts.
Now try logging into the machine, with ssh 'bogdo', and check in:

  .ssh/authorized_keys

to make sure we haven't added extra keys that you weren't expecting.

root@backup:/home/bu/data# slogin bogdo
Linux bogdo 2.6.32-5-686 #1 SMP Sun May 6 04:01:19 UTC 2012 i686

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Wed Sep 19 10:23:57 2012 from 192.168.10.103
---

Никаких пассвордов не спросили.
Вот вывод grep root: /etc/shadow /etc/passwd с машины bogdo:
/etc/shadow:root:$6$ofYFpmiI$IIZ.iY/mO0VK8W2Rf5brbWSEJ5fKvyA3wQ6aY5.OF/M.lO1QiRm8XFBnxtgdLxbzcB2TkZnJ3N2zGKsXYdjuj.:15600:0:9:7:::
/etc/passwd:root:x:0:0:root:/root:/bin/bash

Т.е. пассворд руту УЖЕ установлен. И, на момент ssh-copy-id bogdo он
уже БЫЛ установлен.

Теперь, самое интересное:
---
root@bogdo:~/.ssh# cat authorized_keys | grep root@backup | wc -l
2
root@bogdo:~/.ssh# cat authorized_keys | grep root@backup | uniq | wc -l
1
---

Я в недоумении, дорогая редакция, откуда там две одинаковые строки с
одним ключом??
Если она там была на момент показанного выше ssh-copy-id bogdo, то почему
The authenticity of host 'bogdo (192.168.10.164)' can't be established.  ??

А если ее там не было - то почему не спросили пассворд??

PS. У меня тут апгрейд серверов - и Я штуки 4 этих debian-ов поставил
с понедельника. (Решил, что проще переустановить, ибо некоторые
дебианы аж sarge, и апдейтить их до сквизи Я поленился). Так вот,
показанное Выше поведение ssh-copy-id (не понятно, чем вызванное) Я
наблюдал дважды.  Пожалуй, надо попытаться смоделировать эту ситацию
начисто.

--
DamirX


Re: Security hole. remote root access.

2012-09-19 Пенетрантность Yuriy Vidineev
Вряд ли, конечно, но просто, чтобы исключить:

А вы раздел с /root форматировали во время установки нового debian поверх 
старого? Может быть, ключ остался со времен старого debian?


On Thursday, September 20, 2012 09:01:07 AM Damir Hakimov wrote:
 19 сентября 2012 г., 22:00 пользователь Andrey Rahmatullin
 
 w...@wrar.name написал:
   Собственно дыра обнаруживается так: с другой машины, из-под рута говорим
   ssh-copy-id  new-machine-ip
   ... и ... собс-но все!
  
  Просит пароль рута.
 
 Товарищи господа! Я, конечно, извиняюсь - видимо бага где-то в голове,
 только никак не пойму где именно...
 Вот лог (сохранившийся в screen)
 
 -
 root@backup:/home/bu/data# ping bogdo
 PING bogdo (192.168.10.164) 56(84) bytes of data.
 64 bytes from bogdo (192.168.10.164): icmp_req=1 ttl=64 time=3.41 ms
 64 bytes from bogdo (192.168.10.164): icmp_req=2 ttl=64 time=0.327 ms
 64 bytes from bogdo (192.168.10.164): icmp_req=3 ttl=64 time=0.354 ms
 ^C
 --- bogdo ping statistics ---
 3 packets transmitted, 3 received, 0% packet loss, time 2000ms
 rtt min/avg/max/mdev = 0.327/1.365/3.415/1.449 ms
 root@backup:/home/bu/data# ssh-copy-id bogdo
 The authenticity of host 'bogdo (192.168.10.164)' can't be established.
 RSA key fingerprint is 4f:17:4e:4f:b1:43:a8:45:a6:7b:60:24:a7:43:e1:9a.
 Are you sure you want to continue connecting (yes/no)? yes
 Warning: Permanently added 'bogdo' (RSA) to the list of known hosts.
 Now try logging into the machine, with ssh 'bogdo', and check in:
 
   .ssh/authorized_keys
 
 to make sure we haven't added extra keys that you weren't expecting.
 
 root@backup:/home/bu/data# slogin bogdo
 Linux bogdo 2.6.32-5-686 #1 SMP Sun May 6 04:01:19 UTC 2012 i686
 
 The programs included with the Debian GNU/Linux system are free software;
 the exact distribution terms for each program are described in the
 individual files in /usr/share/doc/*/copyright.
 
 Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
 permitted by applicable law.
 Last login: Wed Sep 19 10:23:57 2012 from 192.168.10.103
 
 ---
 
 Никаких пассвордов не спросили.
 Вот вывод grep root: /etc/shadow /etc/passwd с машины bogdo:
 /etc/shadow:root:$6$ofYFpmiI$IIZ.iY/mO0VK8W2Rf5brbWSEJ5fKvyA3wQ6aY5.OF/M.lO1
 QiRm8XFBnxtgdLxbzcB2TkZnJ3N2zGKsXYdjuj.:15600:0:9:7:::
 /etc/passwd:root:x:0:0:root:/root:/bin/bash
 
 Т.е. пассворд руту УЖЕ установлен. И, на момент ssh-copy-id bogdo он
 уже БЫЛ установлен.
 
 Теперь, самое интересное:
 
 --- root@bogdo:~/.ssh# cat authorized_keys | grep root@backup | wc -l
 2
 root@bogdo:~/.ssh# cat authorized_keys | grep root@backup | uniq | wc -l
 1
 
 ---
 
 Я в недоумении, дорогая редакция, откуда там две одинаковые строки с
 одним ключом??
 Если она там была на момент показанного выше ssh-copy-id bogdo, то почему
 The authenticity of host 'bogdo (192.168.10.164)' can't be established.  ??
 
 А если ее там не было - то почему не спросили пассворд??
 
 PS. У меня тут апгрейд серверов - и Я штуки 4 этих debian-ов поставил
 с понедельника. (Решил, что проще переустановить, ибо некоторые
 дебианы аж sarge, и апдейтить их до сквизи Я поленился). Так вот,
 показанное Выше поведение ssh-copy-id (не понятно, чем вызванное) Я
 наблюдал дважды.  Пожалуй, надо попытаться смоделировать эту ситацию
 начисто.
 
 --
 DamirX

Re: Security hole. remote root access.

2012-09-19 Пенетрантность Damir Hakimov
20 сентября 2012 г., 9:10 пользователь Yuriy Vidineev
ade...@yandex.ru написал:
 Вряд ли, конечно, но просто, чтобы исключить:

 А вы раздел с /root форматировали во время установки нового debian поверх
 старого? Может быть, ключ остался со времен старого debian?

Debian-ы ставились на чистые железяки и новые виртуальные машины.
Разделы, содержащие каталог /root (у меня этот раздел смонтирован на
корень) со старых машин не переносились.

--
DamirX