Назад | Перейти на главную страницу

Windows пытается получить доступ к общему ресурсу IPC $ раньше предоставленного

У меня есть самба-сервер, на котором я отключил доступ к IPC$ share [1] по соображениям безопасности (перечисление пользователей и общих ресурсов, запрос информации о пользователе, ...).

Я могу получить доступ к общим данным на этом сервере без проблем с любого компьютера на базе Unix с mount.cifs. Однако, когда я пытаюсь получить к ним доступ с компьютеров Windows (протестированных с Windows 7 и 10), я получаю В доступе отказано ошибка сразу после предоставления моих учетных данных.

После записи трафика SMB я заметил, что компьютеры с Windows всегда Tree connect request на IPC$ поделиться, прежде чем пытаться получить доступ к предоставленному мной общему ресурсу (через карта сетевой диск или добавить сетевое местоположение). Мой сервер самбы возвращается В доступе отказано для IPC$ share, и Windows никогда не пытается получить доступ к тому, что я хочу.

Итак, мой вопрос в том, как я могу запретить Windows выполнять этот бесполезный запрос на IPC$ и просто получить доступ к предоставленной мной папке? Или, по крайней мере, как я могу заставить Windows получить доступ к реальному ресурсу после IPC$ один вернулся В доступе отказано?

Заранее благодарим за помощь и счастливых праздников!

Губка Боб

[1] https://www.samba.org/samba/docs/man/Samba-HOWTO-Collection/securing-samba.html#id2618877

Итак, мой вопрос: как я могу запретить Windows выполнять этот бесполезный запрос ...? Или, по крайней мере, как я могу заставить Windows получить доступ к реальной папке после ..?

Ответ: вы не можете! Извините, но это так. Однако, хотя это верный ответ на ваш вопрос, я не хочу показаться бесполезным. Я действительно хочу помочь, поэтому надеюсь, что нижеследующее - лучший совет, который я могу дать, который окажется полезным для вас в вашей ситуации.

Я профессиональный тестер на проникновение и часто использую анонимный общий доступ (например, IPC $) для получения информации о системах и взлома в целях законного тестирования. Ключевым моментом является предотвращение перечисления пользователей и общих ресурсов анонимным пользователем (кем-то без действительных учетных данных). После получения действительных учетных данных обычно есть другие способы перечисления пользователей (например, cat / etc / passwd), и в любом случае это становится менее приоритетным для злоумышленника.

Статья, на которую вы ссылаетесь, содержит следующее:

Если вы используете этот метод, то клиентам будет предоставлен ответ «отказано в доступе» при попытке доступа к общему ресурсу IPC $. Эти клиенты не смогут просматривать общие ресурсы, а также могут не иметь доступа к некоторым другим ресурсам. Это не рекомендуется за исключением случаев, когда по какой-либо причине вы не можете использовать один из других только что обсужденных методов.

Причина, по которой это не рекомендуется, заключается в том, что «Эти клиенты ... могут также не иметь доступа к некоторым другим ресурсам». Примером этого является невозможность Windows получить доступ к общим ресурсам на машине. К сожалению, Windows требует доступа к IPC $ для просмотра других общих ресурсов. Если он не видит IPC $, он просто предполагает, что другие общие ресурсы недоступны, и отказывается.

Клиентская реализация Samba для Linux работает несколько иначе и, следовательно, не испытывает той же проблемы. Поскольку другого пути нет, я бы просто позаботился о том, чтобы доля IPC $ не разглашала информацию анонимным пользователям.

Используя Защита на основе хоста и Защита на основе пользователей Разделы отправленной вами статьи являются хорошими способами предотвращения нежелательного доступа ко всей Samba, включая общий ресурс IPC $ из ненадежных источников, и вполне могут дать вам все необходимое.

Однако дальнейшие советы доступны в определенных разделах этой страницы: https://www.samba.org/samba/docs/man/manpages-3/smb.conf.5.html

Разделы для просмотра:

"перечисление общих ресурсов на основе доступа"

"просматриваемый" - установка на "нет" для всех общих ресурсов (кроме IPC $) должна предотвратить их отображение, но окна все равно должны иметь доступ

"guest ok" - проверьте, не запрещает ли установка значения "нет" на общем ресурсе IPC $ доступ Windows к другим общим ресурсам

Если вы используете winbind, установите следующее, чтобы предотвратить их перечисление:

winbind enum groups = no
winbind enum users = no