> 운영 및 유지보수 > CentOS > CentOS에서 Bash를 업그레이드하는 방법(셸 손상 취약점 수정)

CentOS에서 Bash를 업그레이드하는 방법(셸 손상 취약점 수정)

藏色散人
풀어 주다: 2021-03-01 16:01:59
앞으로
2570명이 탐색했습니다.

centos 튜토리얼 칼럼에서는 CentOS 업그레이드 Bash를 소개합니다. --- 쉘 파괴 취약점을 수정하는 것이 필요한 친구들에게 도움이 되길 바랍니다!

CentOS에서 Bash를 업그레이드하는 방법(셸 손상 취약점 수정)

많은 회사가 자체 yum 소스를 가지고 있기 때문에 업그레이드를 용이하게 하고 안전을 위해 다른 yum 소스를 직접 구성하여 업그레이드하는 것은 허용되지 않습니다. 테스트, 먼저 테스트를 위해 테스트 기계를 사용하십시오.

CentOS 복구 솔루션

yum 플러그인 설치 yum-downloadonly

참고: yum-downloadonly 플러그인의 기능은 필요한 패키지를 직접 설치하지 않고 필요한 패키지만 다운로드하는 것입니다yum-downloadonly 插件的作用是实现只下载所需包而不直接安装

sudo yum -y install yum-downloadonly
로그인 후 복사

添加 CentOS  的官方源 CentOS-Base.repo

CentOS 5 的官方源

# CentOS-Base.repo
#
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client. You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the 
# remarked out baseurl= line instead.
#
#
[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
#released updates 
[updates]
name=CentOS-$releasever - Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
#baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib
#baseurl=http://mirror.centos.org/centos/$releasever/contrib/$basearch/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
로그인 후 복사

CentOS 6 的官方源

# CentOS-Base.repo
#
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client. You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the 
# remarked out baseurl= line instead.
#
#
[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
#released updates 
[updates]
name=CentOS-$releasever - Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
#baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib
#baseurl=http://mirror.centos.org/centos/$releasever/contrib/$basearch/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
로그인 후 복사

下载最新的 bash 包

把最新版本的 bash 的 rpm 包下载到 /tmp 目录

sudo  yum -y install --downloadonly --downloaddir=/tmp/ bash
로그인 후 복사

下载后的包名分别如下:

CentOS 5

bash-3.2-33.el5_10.4.x86_64.rpm
로그인 후 복사

CentOS 6

bash-4.1.2-15.el6_5.2.x86_64.rpm
로그인 후 복사

安装最新的 bash 包

CentOS 5

sudo yum -y install bash-3.2-33.el5_10.4.x86_64.rpm
로그인 후 복사

CentOS 6

sudo yum -y install bash-4.1.2-15.el6_5.2.x86_64.rpm
로그인 후 복사

验证

env X='() { (a)=>' sh -c "echo date"; cat echo  输出如下:

date
Mon Sep 29 10:11:56 CST 2014
로그인 후 복사

env VAR='() { :;}; echo Bash is vulnerable!' bash -c "echo Bash Hello"

Bash Hello
로그인 후 복사
CentOS CentOS-Base.repo의 공식 소스 추가

CentOS 5의 공식 소스

rrreee

CentOS 6의 공식 소스🎜🎜rrreee🎜최신 bash 패키지 다운로드🎜🎜Download 최신 버전의 bash rpm 패키지를 /tmp 디렉토리에 🎜rrreee🎜다운로드한 패키지 이름은 다음과 같습니다. 🎜🎜🎜CentOS 5🎜🎜rrreee🎜🎜CentOS 6🎜🎜rrreee🎜최신 bash 설치 package🎜🎜🎜CentOS 5🎜🎜rrreee 🎜 🎜CentOS 6🎜🎜rrreee🎜Verification🎜🎜env X='() { (a)=>' sh -c "echo date"; > 출력은 다음과 같습니다: 🎜rrreee🎜<code> env VAR='() { ::}; echo Bash는 취약합니다!' bash -c "echo Bash Hello" 출력은 다음과 같습니다: 🎜rrreee 🎜수리 성공 증명🎜🎜기존 rpm 소스 추가🎜🎜마지막 단계는 테스트한 패키지를 회사 자체 소스에 추가한 후 전체 네트워크에 푸시하는 것입니다. 🎜🎜

위 내용은 CentOS에서 Bash를 업그레이드하는 방법(셸 손상 취약점 수정)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:segmentfault.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿