Как я обновляю удар на EOL версии Ubuntu?

Я не имею никакого ответа для этого, но заметил ту же проблему в: http://bugs.gnu.org/14024#41

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

6
06.08.2018, 06:37
5 ответов

Краткий ответ для квантала (Ubuntu 12.10): Скачайте и установите bash-пакет из точного репозитория.

Прогулка

Для квантала (Ubuntu 12.10): Я искал bash-пакеты из ближайших выпусков. Я скачал пакеты, чтобы быть точным и скупым.

Перед началом работы я сделал резервную копию своего существующего bash-пакета, так что я надеюсь, что смогу восстановить свою систему, если свежая установка не удастся. (Требуется пакет dpkg-repack.)

$ dpkg-repack bash

Хотя, вероятно, мне следовало просто скопировать исполняемый файл /bin/bash в /root/bash.vulnerable, так как это было бы проще восстановить в экстренной ситуации.

Raring

Сначала я попробовал пакет от raring:

$ dpkg -i bash_4.2-5ubuntu3_i386.deb

Но он тестировался как все еще уязвимый!

Точно

Тогда я попробовал пакет с точностью:

$ dpkg -i bash_4.2-2ubuntu2.6_i386.deb

Который тестировался как безопасный, используя сценарий bashcheck.

Testing /bin/bash ...
GNU bash, version 4.2.25(1)-release (i686-pc-linux-gnu)

Variable function parser pre/suffixed [%%, upstream], bugs not exploitable
Not vulnerable to CVE-2014-6271 (original shellshock)
Not vulnerable to CVE-2014-7169 (taviso bug)
Not vulnerable to CVE-2014-7186 (redir_stack bug)
Test for CVE-2014-7187 not reliable without address sanitizer
Not vulnerable to CVE-2014-6277 (lcamtuf bug #1)
Not vulnerable to CVE-2014-6278 (lcamtuf bug #2)

Но мне очень жаль, что я не установил релиз LTS. Я все еще планирую сделать обновление, когда у меня будет время...

3
27.01.2020, 20:23

Поскольку вы хотите продолжать использовать официально неподдерживаемую версию , ваша единственная возможность - поддерживать ее самостоятельно.

Я бы посоветовал получить исходные тексты конкретной версии на Ubuntu (будь то 11.0, 12.0 или 13.10), а затем применить те же патчи, которые были применены на официальных пакетах; для справки смотрите:

Пожалуйста, обратите внимание, что хотя уязвимость Bash и получила лучшее освещение в СМИ, существует множество других уязвимостей - почти ежедневно - и вам следует серьезно подумать о подписке, по крайней мере, на ubuntu-security-announce, чтобы вы постоянно о них знали. Это особенно важно в вашем случае, так как вы используете неподдерживаемый релиз.

4
27.01.2020, 20:23

Вы можете оценить, критично ли исправление этой ошибки на вашем сервере. Ubuntu не использует bash как / bin / sh , поэтому беспокойство вызывают только векторы атаки, в которых bash вызывается явно. Проверьте:

  • скриптов CGI, выполняемых bash (начиная с #! / Bin / bash , а не #! / Bin / sh )
  • клиентских скриптов DCHP, выполняемых bash
  • Ограниченные учетные записи с bash в качестве оболочки или выполняющие сценарии bash
  • В более общем смысле, любая ситуация, когда сценарий bash (не sh) запускается с переменной среды, содержимое которой может быть предоставлено злоумышленником (обратите внимание, что выполняемые сценарии via sudo не уязвимы благодаря собственной фильтрации sudo)

Следующая команда находит сценарии bash в текущем каталоге и его подкаталогах:

find . -type f -executable -exec file {} + | grep 'Bourne-Again shell script'

Если любой из этих сценариев выполняется из вектора атаки, вам нужно обновить bash или изменить эти сценарии, чтобы они запускались под dash или ksh. Также проверьте наличие ограниченных учетных записей, оболочка которых - bash, и сценариев, явно вызывающих bash ( bash -c '…' , bash / path / to / script ,…).

Если вы не можете найти двоичный файл для обновления bash в своей системе, вы можете загрузить исходный код, применить патч для своей версии и перекомпилировать (установите build-essential пакет, а также зависимости сборки bash - autoconf autotools-dev quilt bison libncurses5-dev texinfo debhelper texi2html locales gettext sharutils time xz-utils dpkg-dev от Ubuntu 12.04).

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

2
27.01.2020, 20:23

Это не нормально, это явно проблема конфигурации KDE. К сожалению, большинство дистрибутивов Linux не очень-то работает, настраивая KDE, практически это только компиляция и загрузка в архив пакетов без более глубокого тестирования. Это не в их основном объеме.: - (

Хотя в большинстве случаев можно легко справиться с такими проблемами. KDE - это только совокупность множества X-программ, в основном kwin оконный менеджер и приложение для лотков, и все же их множество. Все они используют инструментарий Qt, который является очень мощной и интересной технологией. К счастью, у нас также есть тривиальный сценарий, который запускает все необходимые инструменты для сеанса KDE из командной строки. Это имя называется startkde . Он не был запущен вашим gdm (возможно, он был настроен неправильно), вы можете сделать это вручную.

Откройте символьную консоль с тем же пользователем, что и пользователь X (alt/ctrl/f1), и введите команду ДИСПЛЕЕВ =: 0 startkde & . Этот startkde инициирует обычную последовательность загрузки KDE из командной строки.

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


Если есть проблемы, существует более простой способ, если вы начинаете только kwin вместо startkde . Он откроет только оконный менеджер, а не целый сеанс, но, возможно, он будет работать.


Можно попробовать другой дистрибутив с реальной поддержкой KDE (я предлагаю OpenSUSE или Mint).

-121--186956-

Можно отключить проблему «a» при отключении архивов в целом.

Обработать - > Настройки - > Дополнительно - > Общие - > mail.identity.default.archive_enabled - > ложь

-121--17005-

Кто-то создал сценарий perl, который делает именно это.

Репозиторий Github для пакетного сценария.

$ git clone https://github.com/sillymoose/bashfix.git
$ cd bashfix
$ chmod +x bashfix.pl
$ ./bashfix.pl
Bash version 4.2.13 detected
Created working directory /tmp/PIRKRioxmM
Downloading Bash
Downloading Patches
Bash patched to level 52
Bash fully patched!
Configuring Bash ...
Building and testing Bash ...
Success. New Bash binary built!
Making backup copy of /usr/bin/bash at /usr/bin/bash.bak
Making backup copy of /bin/bash at /bin/bash.bak
Bash version 4.2.52 is now installed
1
27.01.2020, 20:23

Сборка bash из исходного кода довольно проста, вам нужна жизнеспособная среда разработки C (gcc, binutils и т. Д.), А также библиотека и заголовки termcap (по умолчанию, но вы можете использовать curses вместо).

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

Такая же последовательность действий должна работать для всех версий с bash-2.05b до bash-4.3, просто замените «4.3» соответствующим образом, чтобы при необходимости можно было придерживаться той же версии. Если вы не используете довольно античный bash-2.05b, который уязвим, но не доступен официальный патч, AFAICT Исправление также было перенесено на версию 2.05b.

Вам следует дважды проверить на официальном сайте текущий уровень патча, на всякий случай, если вы столкнетесь с устаревшим зеркалом.

mkdir -p /usr/local/src/dist && cd /usr/local/src/dist
wget http://ftpmirror.gnu.org/bash/bash-4.3.tar.gz.sig
wget http://ftpmirror.gnu.org/bash/bash-4.3.tar.gz
wget http://tiswww.case.edu/php/chet/gpgkey.asc
gpg --import gpgkey.asc
gpg --verify bash-4.3.tar.gz.sig
cd ..
tar xzvf dist/bash-4.3.tar.gz
cd bash-4.3
mkdir patches && cd patches 
wget -r --no-parent --accept "bash43-*" -nH -nd  \
  ftp.heanet.ie/mirrors/gnu/bash/bash-4.3-patches/     # Use a local mirror
echo *sig | xargs -n 1 gpg --verify --quiet            # see note 2

cd ..
echo patches/bash43-0?? | xargs -n 1 patch -p0 -i      # see note 3 below

./configure --prefix=/usr  --bindir=/bin \             
        --docdir=/usr/share/doc/bash-4.3 \
        --without-bash-malloc            \
        --with-installed-readline

 make
 make test && make install   # see note 6

Примечания:

  1. Используйте локальное зеркало для исправлений, ftpmirror.gnu.org возвращает перенаправление на одно, но это не работает с параметром -r для загрузки всего каталога
  2. (для шляп из фольги) gpg не устанавливает полезный код ошибки и не очень громко жалуется, если проверка не удалась, ищите строку «BAD» в (обильном) выводе
  3. В настоящее время существует 25 27 30 исправлений для bash-4.3, 25–30 адресов CVE-2014-6271 и последующих связанных проблем. Возможно, еще есть исправления для решения этой проблемы! Вы можете получить предупреждения патча типа «Игнорирование потенциально опасного имени файла ../bash-4.3/patchlevel.h», эти должны быть безвредными, проверьте, что patchlevel .h содержит строку #define PATCHLEVEL ... с ожидаемым уровнем исправления.
  4. параметры configure изменяют значение по умолчанию / usr / local / , это означает, что программа make install должна перезаписать текущий bash
  5. - без-bash-malloc выбирает libc malloc, а не более быструю (немного более расточительную) внутреннюю реализацию. Это может повлиять на вас, если вы используете загружаемые модули bash, поскольку это может вызвать несовместимость, но не многие люди используют эту функцию. Пакет для этого, вероятно, называется bash-builtins .
  6. make test займет некоторое время. Для завершения make install необходимо иметь root-права (часто считается плохой практикой компилировать программное обеспечение с правами root)
  7. Ubuntu, производный от Debian, вероятно, использует те же дополнительные патчи, что и Debian, см. здесь например. Эти исправления могут содержать функции, которые вы используете. Если вы примените патч к дереву исходных текстов bash, см. Подробности в файле debian / README .
  8. Еще одна медвежья ловушка, у вас также может быть двоичный файл static-bash, который вам также следует пересобрать. Для этого перезапустите с шага « ./ configure ... », добавив - enable-static-link .

См. Также сборку bash в Linux с нуля . Список OSS-SEC - хорошее место для поиска исправлений и текущий статус.

3
27.01.2020, 20:23

Теги

Похожие вопросы