ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: Alexander Bokovoy <ab@altlinux.org>
To: ALT Linux Team development discussions <devel@lists.altlinux.org>
Subject: Re: [devel] samba 0-day exploit
Date: Sun, 7 Feb 2010 08:41:30 +0200
Message-ID: <6062a6e61002062241s62003199rc6c5cde0ecf32c6f@mail.gmail.com> (raw)
In-Reply-To: <201002071220.10615.alb@altlinux.ru>

2010/2/7 Alexey Borovskoy <alb@altlinux.ru>:
> Добрый день.
>
> http://www.securityfocus.com/archive/1/509389
>
> P.S. Давайте все же слезем с неподдерживаемой ветки.
Не читайте желтую прессу. То, что там упомянуто -- не имеет отношения
к древности и неподдерживаемости ветки.

Выставьте

wide links = no
unix extensions = no

и забудьте об этой проблеме.

Подробнее прочитайте дискуссию
http://lists.samba.org/archive/samba-technical/2010-February/069183.html

Это не уязвимость, а "фича". В Самбе есть два режима, при которых можно
использовать символические ссылки в файловой системе на ресурсы: для Windows
(wide links) и для Unix (unix extensions). В первом случае разрешение ссылок в
реальные ресурсы делает сервер, во втором -- клиент.

Оба случая имеют под собой реальную основу и могут использоваться в реальной
жизни. Проблема возникает только с ситуациями, когда одновременно настроены
unix extensions и wide links.

Таким образом, для администраторов необходимо:
1. Включить unix extensions, отключить wide links,  -- для случая, когда
используются преимущественно unix-клиенты.

2. Отключить unix extensions, включить wide links -- для windows-клиентов в
этом случае будут выполняться проверки на выход за пределы текущей share и
никакая созданная клиентом символическая ссылка не сможет выйти за пределы
текущей share.

3. Отключить unix extensions, отключить wide links -- в этом случае невозможно
будет создать символическую ссылку с любого клиента.

Во всех случаях "привязывание" ресурсов за пределами текущей share правильнее
делать средствами mount -o bind.

Одновременно держать включенными обе опции смысла нет. К сожалению, это как раз
и является настройкой по умолчанию в Самбе с 2005 года.

Назвать это "уязвимостью" можно только с большой натяжкой, модифицировать для
этого smbclient вовсе не нужно -- в данном случае это показатель того, что
человек не понимает совершенно, что он делает.

Если пользователь имеет доступ по ssh на этот же сервер, то он может создать в
домашней директории символическую ссылку на что угодно, а потом разрешить эту
символическую ссылку из Windows клиента. Если используются unix extensions, то
фактически это равносильно доступу этого же клиента по ssh в смысле файловых
операций. За одним исключением -- в этом режиме символические ссылки разрешать
будет клиент, а не сервер. А переключившись на клиента, который не умеет unix
extensions, при включенном wide links, мы заставим сервер разрешить эту же
символическую ссылку -- с теми правами, под которыми зайдет пользователь (чаще
всего nobody для публичных ресурсов и с правами конкретного пользователя для
авторизованных).

Поскольку такое поведение в любом случае должно определяться ситуацией в
конкретной организации, то это вопрос настроек, применяемых администратором.
Максимум, что можно сделать с нашей (дистрибутивной) стороны -- сменить
умолчание на wide links = no, unix extensions = yes, предполагая, что будет
больше unix клиентов, либо сменить на умолчание wide links = yes, unix
extensions = no.

Я могу также добавить код, тестируемый сейчас Джереми Эллисоном,
который запрещает wide links при включении unix extensions и наоборот.
Любой взаимоисключающий (или выключающий оба режима) вариант возможен
в качестве дистрибутивного.

Хотелось бы только одного -- поменьше "веры" в то, что говорят в
желтой прессе, которой стали многие информационные бюллетени по
безопасности.
-- 
/ Alexander Bokovoy

  reply	other threads:[~2010-02-07  6:41 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-02-07  0:20 Alexey Borovskoy
2010-02-07  6:41 ` Alexander Bokovoy [this message]
2010-02-07  8:12   ` Andrew Clark
2010-02-07  8:31     ` Alexander Bokovoy
2010-02-07  9:02       ` Andrew Clark
2010-02-07  9:34         ` Alexander Bokovoy
2010-02-07  9:38           ` Anton Farygin
2010-02-07  9:52             ` Alexander Bokovoy
2010-02-07 21:44               ` [devel] samba 3.$current Michael Shigorin
2010-02-08  6:12                 ` Alexander Bokovoy
2010-02-07  9:39           ` [devel] samba 0-day exploit Andrew Clark
2010-02-07  9:54             ` Alexander Bokovoy
2010-02-07  8:32     ` Alexander Bokovoy
2010-02-07 13:39   ` Dmitry V. Levin
2010-02-07 14:34     ` Alexander Bokovoy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=6062a6e61002062241s62003199rc6c5cde0ecf32c6f@mail.gmail.com \
    --to=ab@altlinux.org \
    --cc=devel@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git