Версии Debian прежней версии и Контузия Bash

Я нашел решение здесь: http://forums.opensuse.org/english/get-technical-help-here/multimedia/479556-test-audio-works-but-no-sound-any-application-3.html

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

11
01.10.2014, 14:00
4 ответа

У вас есть возможность просто обновить bash. Для этого используйте следующую команду apt-get:

apt-get update

Затем, после того как обновление получит все доступные обновления, запустите:

apt-get install --only-upgrade bash

Для получения обновлений на старых версиях, например, Squeeze, вам, вероятно, понадобится добавить Squeeze-LTS repo в ваш исходный файл source.list.

Чтобы добавить это хранилище, отредактируйте /etc/apt/sources.list и добавьте следующую строку в конец файла.

deb http://ftp.us.debian.org/debian squeeze-lts main non-free contrib

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

EDIT 1

Чтобы обновить bash на Lenny или Etch, взгляните на ответ Ильи Шершоффа ниже, как скомпилировать bash из исходных текстов и вручную обновить версию bash, используемую в вашем релизе.

EDIT 2

Вот пример файла source.list с сервера Squeeze, который я успешно обновил:

deb http://ftp.us.debian.org/debian/ squeeze main
deb-src http://ftp.us.debian.org/debian/ squeeze main

deb http://security.debian.org/ squeeze/updates main
deb-src http://security.debian.org/ squeeze/updates main

# squeeze-updates, previously known as 'volatile'
deb http://ftp.us.debian.org/debian/ squeeze-updates main
deb-src http://ftp.us.debian.org/debian/ squeeze-updates main

# Other - Adding the lsb source for security updates
deb http://http.debian.net/debian/ squeeze-lts main contrib non-free
deb-src http://http.debian.net/debian/ squeeze-lts main contrib non-free
11
27.01.2020, 19:58

Чтобы обновить Bash на многих разных ОС, вы можете использовать универсальный скрипт deshellshock .

0
27.01.2020, 19:58

Не уверены, если вы хотите доверять эти пакеты, но кто-то построил пакеты для древесных (3.0), Sarge (3.1), Etch (4.0) и Ленни (5,0). Они доступны здесь:

http://blog.bofh.it/debian/id_451

Будьте осторожны, не существует хранилища для установки этих пакетов через apt-get . Вам нужно использовать DPKG или создайте свой собственный локальный репозиторий.

1
27.01.2020, 19:58

Если опция apt-get install не сработала, вам нужно будет перекомпилировать bash из исходников. Примеры Ленни и Этча в ответе. У меня нет машин Squeeze, но можно легко разобраться, что делать.

Решение из TaNNkoST, которое я нашел в сети:

Проверьте количество доступных патчей и измените номер в "(seq" части, если есть новые.

ДЛЯ ЛЕННИ

#first find out the version you have so you know what to get for the patches and source files
dpkg-query -l|grep bash
ii bash 4.1-3 The GNU Bourne Again SHell

#do this in the /usr/src dir
cd /usr/src
wget http://ftp.gnu.org/gnu/bash/bash-4.1.tar.gz
tar zxvf bash-4.1.tar.gz
cd bash-4.1

# fetch all patches, including latest ones that patches CVE-2014-6271
for i in $(seq -f "%03g" 0 14); do
wget -nv http://ftp.gnu.org/gnu/bash/bash-4.1-patches/bash41-$i
patch -p0 < bash41-$i
done

# check if yacc is installed. if not - install yacc
apt-get install bison

# configure,compile and install bash (this will install bash into /usr/local/bin/bash)
./configure && make
make install

# make a symlink from /bin/bash to the new binary
mv /bin/bash /bin/bash.old
ln -s /usr/local/bin/bash /bin/bash

# check that you're not vulnerable anymore wiith the output of the following
# it should not output vulnerable word anymore
env x='() { :;}; echo vulnerable' bash -c echo

#you can  Delete the old one thats a problem
rm /bin/bash.old

ДЛЯ ETCH Я следовал той же логике, но в системе не был установлен yacc, поэтому для этого мне пришлось установить пакет bison. Вот что я придумал:

#first find out the version you have so you know what to get for the patches and source files
dpkg-query -l|grep bash
ii bash 3.2-4 The GNU Bourne Again SHell

#do this in the /usr/src dir
cd /usr/src
wget http://ftp.gnu.org/gnu/bash/bash-3.2.tar.gz
tar zxvf bash-3.2.tar.gz
cd bash-3.2

# fetch all patches, including latest ones that patches CVE-2014-6271
for i in $(seq -f "%03g" 0 54); do
wget -nv http://ftp.gnu.org/gnu/bash/bash-3.2-patches/bash32-$i
patch -p0 < bash32-$i
done

# check if yacc is installed. if not - install yacc
apt-get install bison

# configure,compile and install bash (this will install bash into /usr/local/bin/bash)
./configure && make
make install

# at this point my system is not vulnerable already, test your system
env VAR='() { :;}; echo Bash is vulnerable!' bash -c "echo Bash Test"

# if this is not the case for your system - try the following

# make a symlink from /bin/bash to the new binary
mv /bin/bash /bin/bash.old
ln -s /usr/local/bin/bash /bin/bash

# check that you're not vulnerable anymore wiith the output of the following
# it should not output vulnerable word anymore
env x='() { :;}; echo vulnerable' bash -c echo

#you can Delete the old one thats a problem
rm /bin/bash.old
4
27.01.2020, 19:58

Теги

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