Amazon Best VPN GoSearch

Значок OnWorks

guestfs-security - Интернет в облаке

Запустите guestfs-security в провайдере бесплатного хостинга OnWorks через Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.

Это команда guestfs-security, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.

ПРОГРАММА:

ИМЯ


guestfs-security - безопасность libguestfs

ОПИСАНИЕ


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

БЕЗОПАСНОСТЬ OF КРЕПЛЕНИЯ ФИЛЕСИСТЕМЫ
Никогда не следует монтировать ненадежную гостевую файловую систему непосредственно на ядре вашего хоста (например,
используя loopback или kpartx).

Когда вы монтируете файловую систему, ошибки в файловой системе ядра (VFS) могут перерасти в
эксплойты злоумышленников, создающие вредоносную файловую систему. Эти подвиги очень серьезны для
две причины. Во-первых, в ядре очень много драйверов файловой системы, и многие из них
они используются нечасто, и разработчики уделяют коду не так много внимания.
Пользовательское пространство Linux помогает потенциальным взломщикам определять тип файловой системы и
автоматический выбор правильного драйвера VFS, даже если этот тип файловой системы является неожиданным.
Во-вторых, эксплойт на уровне ядра похож на эксплойт локального root (в некотором смысле хуже),
немедленный и полный доступ к системе вплоть до аппаратного уровня.

Эти эксплойты могут присутствовать в ядре очень долго.
(https://lwn.net/Articles/538898/).

Libguestfs предлагает многоуровневый подход к защите от эксплойтов:

ненадежная файловая система
--------------------------------------
ядро устройства
--------------------------------------
процесс qemu работает как некорневой
--------------------------------------
sVirt [при использовании libvirt + SELinux]
--------------------------------------
ядро хоста

Мы запускаем ядро ​​Linux внутри виртуальной машины qemu, обычно работающей от имени пользователя без полномочий root.
Злоумышленнику потребуется написать файловую систему, которая сначала использовала бы ядро, а затем
использовал либо виртуализацию qemu (например, неисправный драйвер qemu), либо libguestfs
протокол, и, наконец, чтобы быть столь же серьезным, как эксплойт ядра хоста, необходимо
повысить свои привилегии до root. Кроме того, если вы используете серверную часть libvirt и
SELinux, sVirt используется для ограничения процесса qemu. Эта многоступенчатая эскалация, выполненная
статическим фрагментом данных считается чрезвычайно трудным, хотя мы никогда не говорим
«никогда» о проблемах безопасности.

Вызывающие могут также уменьшить поверхность атаки, указав тип файловой системы при монтировании.
(используйте "guestfs_mount_vfs").

ОБЩАЯ ИНФОРМАЦИЯ БЕЗОПАСНОСТЬ ОТХОДОВ
Будьте осторожны с любыми файлами или данными, которые вы загружаете от гостя (под словом "скачать" мы подразумеваем
не только команду "guestfs_download", но и любую команду, которая читает файлы, имена файлов,
каталоги или что-нибудь еще из образа диска). Злоумышленник может манипулировать данными, чтобы
обмануть вашу программу, заставив ее делать неправильные вещи. Рассмотрим такие случаи, как:

· Данные (файл и т. Д.) Отсутствуют

· Присутствует, но пусто

· Быть намного больше обычного

· Содержащие произвольные 8-битные данные

· Нахождение в неожиданной кодировке символов

· Содержащие гомоглифы.

ПРОТОКОЛ БЕЗОПАСНОСТЬ
Протокол разработан для обеспечения безопасности и основан на RFC 4506 (XDR) с определенным верхним пределом.
размер сообщения. Однако программа, использующая libguestfs, также должна позаботиться о том, чтобы
вы можете написать программу, которая загружает двоичный файл из образа диска и выполняет его локально,
и никакая защита протокола не спасет вас от последствий.

ИНСПЕКЦИЯ БЕЗОПАСНОСТЬ
Части API проверки (см. «ПРОВЕРКА») возвращают ненадежные строки непосредственно из
guest, и они могут содержать любые 8-битные данные. Абоненты должны быть осторожны, чтобы избежать этих
перед их печатью в структурированный файл (например, используйте экранирование HTML при создании
страница интернета).

Конфигурация гостя может быть изменена необычными способами администратором виртуального
машине и может не отражать реальность (особенно для ненадежных или активно злонамеренных
гости). Например, мы анализируем имя хоста из файлов конфигурации, таких как
/ и т.д. / sysconfig / сеть что мы находим в гостевой, но гостевой администратор может легко
манипулировать этими файлами, чтобы указать неправильное имя хоста.

API проверки анализирует гостевую конфигурацию с помощью двух внешних библиотек: Augeas (Linux
конфигурация) и hivex (реестр Windows). Оба разработаны, чтобы быть прочными в лицо.
вредоносных данных, хотя атаки отказа в обслуживании все еще возможны, например, с
файлы конфигурации увеличенного размера.

БЕГ Ненадежный ГОСТЬ КОМАНДЫ
Будьте очень осторожны при выполнении команд от гостя. Запустив команду в
гость, вы передаете процессорное время двоичному файлу, который вы не контролируете, под тем же пользователем
аккаунт в качестве библиотеки, хотя и завернутый в виртуализацию qemu. Дополнительная информация и
альтернативы можно найти в разделе «РАБОЧИЕ КОМАНДЫ».

CVE-2010-3851
https://bugzilla.redhat.com/642934

Эта ошибка безопасности касается автоматического определения формата диска, которое qemu выполняет на диске.
изображениями.

Необработанный образ диска - это просто необработанные байты, без заголовка. Другие образы дисков, такие как qcow2
содержат специальный заголовок. Qemu справляется с этим, ища один из известных заголовков,
и если ничего не найдено, предполагается, что образ диска должен быть необработанным.

Это позволяет гостю, которому был предоставлен необработанный образ диска, записывать другой заголовок. В
при следующей загрузке (или когда к образу диска обращается libguestfs) qemu выполнит автоматическое определение
и думаю, что формат образа диска был, скажем, qcow2 на основе заголовка, написанного гостем.

Само по себе это не будет проблемой, но qcow2 предлагает множество функций, одна из которых -
разрешить образу диска ссылаться на другой образ (так называемый «резервный диск»). Он делает это
поместив путь к опорному диску в заголовок qcow2. Этот путь не подтвержден
и может указывать на любой файл хоста (например, "/ И т.д. / пароль"). После этого открывается опорный диск.
через "дыры" в образе диска qcow2, который конечно полностью под контролем
злоумышленника.

В libguestfs это довольно сложно использовать, за исключением двух случаев:

1. Вы включили сеть или открыли диск в режиме записи.

2. Вы также запускаете ненадежный код от гостя (см. «ВЫПОЛНЕНИЕ КОМАНД»).

Способ избежать этого - указать ожидаемый формат диска при добавлении дисков (
необязательный параметр «формат» для «guestfs_add_drive_opts»). Вы всегда должны делать это, если
disk - это необработанный формат, и это тоже хорошая идея для других случаев. (См. Также «ИЗОБРАЖЕНИЕ ДИСКА.
ФОРМАТЫ ").

Для дисков, добавленных из libvirt с помощью вызовов типа "guestfs_add_domain", выбирается формат
из libvirt и прошел.

Для инструментов libguestfs используйте --формат соответствующий параметр командной строки.

CVE-2011-4127
https://bugzilla.redhat.com/752375

Это ошибка в ядре, которая позволяла гостям перезаписывать части дисков хоста.
к которым они обычно не должны иметь доступа.

Достаточно обновить libguestfs до любой версии ≥ 1.16, которая содержит изменение, которое
смягчает проблему.

CVE-2012-2690
https://bugzilla.redhat.com/831117

В старых версиях команды virt-edit и guestfish "edit" был создан новый файл.
содержащие изменения, но не установили разрешения и т. д. для нового файла в соответствии с
Старый. Результатом этого было то, что если вы редактировали чувствительный к безопасности файл, такой как
/ И т.д. / тень тогда он будет доступен для чтения после редактирования.

Достаточно обновить libguestfs до любой версии ≥ 1.16.

CVE-2013-2124
https://bugzilla.redhat.com/968306

Эта ошибка безопасности была уязвимостью при проверке, когда недоверенный гость использовал специально
созданный файл в гостевой ОС может привести к двойному освобождению библиотеки C (отказ
оказание услуг).

Достаточно обновить libguestfs до версии, которая не уязвима: libguestfs ≥
1.20.8, ≥ 1.22.2 или ≥ 1.23.2.

CVE-2013-4419
https://bugzilla.redhat.com/1016960

При использовании рыба-гость(1) --дистанционный пульт или рыба-гость --Слушать варианты, guestfish создаст
розетка в известном месте (/tmp/.guestfish-$UID/сокет-$PID).

Местоположение должно быть известным, чтобы оба конца могли общаться. Однако нет
была произведена проверка того, что содержащий каталог (/tmp/.guestfish-$UID) принадлежит
Пользователь. Таким образом, другой пользователь может создать этот каталог и потенциально захватить сокеты, принадлежащие
клиентом или сервером guestfish другого пользователя.

Достаточно обновить libguestfs до версии, которая не уязвима: libguestfs ≥
1.20.12, ≥ 1.22.7 или ≥ 1.24.

Отказ of СЕРВИС когда инспектирование диск изображений и коррумпированных лиц Btrfs тома
Было возможно вывести из строя libguestfs (и программы, использующие libguestfs в качестве библиотеки) с помощью
представление образа диска, содержащего поврежденный том btrfs.

Это было вызвано разыменованием указателя NULL, вызывающим отказ в обслуживании, и не является
считается пригодным для дальнейшего использования.

См. Фиксацию d70ceb4cbea165c960710576efac5a5716055486 для исправления. Это исправление включено в
Стабильные ветки libguestfs ≥ 1.26.0, ≥ 1.24.6 и ≥ 1.22.8, а также в RHEL ≥ 7.0.
Более ранние версии libguestfs не уязвимы.

CVE-2014-0191
Libguestfs ранее использовала небезопасные API libxml2 для синтаксического анализа libvirt XML. Эти API
по умолчанию разрешены сетевые подключения, когда определенные XML-документы были
представлен. Используя искаженный XML-документ, также можно было исчерпать весь ЦП, память
или файловые дескрипторы на машине.

Поскольку XML libvirt поступает из надежного источника (демона libvirt), это не считается
что это можно было использовать.

Это было исправлено в libguestfs ≥ 1.27.9, и исправление было перенесено в стабильные версии ≥
1.26.2, ≥ 1.24.9, ≥ 1.22.10 и ≥ 1.20.13.

Shellshock (баш CVE-2014-6271)
Эта ошибка bash косвенно влияет на libguestfs. Для получения дополнительной информации см .:
https://www.redhat.com/archives/libguestfs/2014-September/msg00252.html

CVE-2014-8484
CVE-2014-8485
Эти две ошибки в binutils влияют на GNU струны(1) программа, и, следовательно,
API-интерфейсы "guestfs_strings" и "guestfs_strings_e" в libguestfs. Запуск струн на
ненадежный файл может вызвать выполнение произвольного кода (ограниченного libguestfs
прибор).

В libguestfs ≥ 1.29.5 и ≥ 1.28.3 libguestfs использует "строки" -a возможность избежать BFD
парсинг файла.

CVE-2015-5745
https://bugzilla.redhat.com/show_bug.cgi?id=1251157

Это не уязвимость в libguestfs, а потому, что мы всегда указываем виртуальный последовательный порт.
каждому гостю (поскольку именно так происходит общение между гостем и хостом), эскалация от
возможно подключение к хосту процесса qemu. Это может повлиять на вас, если:

· Ваша программа libguestfs запускает ненадежные программы из гостевой системы (используя "guestfs_sh"
и т. д.), или

· Другой эксплойт был обнаружен (например) в коде файловой системы ядра, который позволял
искаженная файловая система, чтобы взять на себя управление устройством.

Если вы используете sVirt для ограничения qemu, это предотвратит некоторые атаки.

Разрешения... of .ssh и .ssh / authorized_keys
https://bugzilla.redhat.com/1260778

Инструменты виртуальная настройка(1) вирт-sysprep(1) и строитель добродетели(1) иметь --ssh-внедрить
опция для внедрения ключа SSH в образы дисков виртуальных машин. Они могут создать
~ пользователь / .ssh каталог и ~ пользователь / .ssh / authorized_keys файл в гостевой системе, чтобы сделать это.

В libguestfs <1.31.5 и libguestfs <1.30.2 новый каталог и файл будут иметь режим
0755 и режим 0644 соответственно. Однако эти разрешения (особенно для ~ пользователь / .ssh)
шире разрешений, которые использует OpenSSH. В текущем libguestfs каталог
и файл создается с режимом 0700 и режимом 0600.

Используйте guestfs-security онлайн с помощью сервисов onworks.net


Бесплатные серверы и рабочие станции

Скачать приложения для Windows и Linux

Команды Linux

Ad




×
Реклама
❤️Совершайте покупки, бронируйте или заказывайте здесь — никаких затрат, что помогает поддерживать бесплатность услуг.