Подробная информация здесь :
Действие
-exec
вызывает запуск другой программы.Он передает программе имя файла, который рассматривается в данный момент. Вызванная программа обычно затем выполняет какое-либо действие с этим файлом . Еще раз, есть состояние гонки, которое можно использовать здесь. Мы возьмем в качестве конкретного примера командуfind / tmp -path / tmp / umsp / passwd -exec / bin / rm
В этом простом примере мы определяем только один файл, который будет удалил и вызвав
/ bin / rm
, чтобы удалить его. Проблема возникает из-за того, что существует временной интервал между точкой, в которой find решает, что ему необходимо обработать действие-exec
, и точкой, в которой/ bin Команда / rm
фактически вызывает системный вызов unlink () для удаления файла из файловой системы. В течение этого периода времени злоумышленник может переименовать/ tmp / umsp
, заменив его символической ссылкой на/ etc
. Невозможно для/ bin / rm
определить, работает ли он с тем же файлом, который имел в виду find . Как только символическая ссылка установлена, злоумышленник убедил находку вызвать удаление файла/ etc / passwd
, что не является результатом, предполагаемым командой который действительно был вызван.
Не уверен, насколько вероятно, что кто-нибудь сможет это использовать; но я думаю, есть ответ!
Опция backupvolfile -server=имя сервера -имя резервного сервера volfile для подключения клиента. Если эта опция добавлена при монтировании клиента fuse, то при сбое первого сервера volfile сервер, указанный в опции сервера backupvolfile -, используется как сервер volfile для монтирования клиента.
Запись fstab вида:
gluster01:/volname /mnt/gluster glusterfs defaults,_netdev,backupvolfile-server=gluster02 0 0
Не ставьте несколько IP-адресов разных серверов для одного и того же имени хоста и не используйте его в качестве узла кластера.