"CVE-2014-6271 쉘쇼크 Bash 취약점 조치"의 두 판 사이의 차이

잔글 (Jmnote 사용자가 (CVE-2014-6271) Bash 취약점 조치 문서를 2014 쉘쇼크 Bash 취약점 조치 문서로 옮겼습니다)
잔글 (Jmnote 사용자가 2014 쉘쇼크 Bash 취약점 조치 문서를 쉘쇼크 Bash 취약점 조치 문서로 옮겼습니다)
(차이 없음)

2014년 9월 30일 (화) 08:45 판

1 개요

shellshock
[CVE-2014-6271] GNU Bash 원격코드 인젝션 취약점 확인 및 조치
2014년 9월 Bourne Again Shell(Bash) 취약점 보안 업데이트
쉘쇼크, 쉘쇼크 조치방법

2 확인방법

env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
rm -f echo; env X='() { (a)=>\' sh -c "echo date"; cat echo
(for x in {1..200} ; do echo "for x$x in ; do :"; done; for x in {1..200} ; do echo done ; done) | bash ||
echo "CVE-2014-7187 vulnerable, word_lineno"

3 확인 1 (취약)

[root@jmnote ~]# env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
vulnerable
this is a test
echo vulnerable이 수행되었으므로 취약함
[root@jmnote ~]# rm -f echo; env X='() { (a)=>\' sh -c "echo date"; cat echo
sh: X: line 1: syntax error near unexpected token `='
sh: X: line 1: `'
sh: error importing function definition for `X'
→ date 명령어가 실행되고 echo 파일이 생성되었으므로 취약함
[root@jmnote ~]# (for x in {1..200} ; do echo "for x$x in ; do :"; done; for x in {1..200} ; do echo done ; done) | bash ||
> echo "CVE-2014-7187 vulnerable, word_lineno"
bash: line 129: syntax error near `x129'
bash: line 129: `for x129 in ; do :'
CVE-2014-7187 vulnerable, word_lineno
→ echo ... 명령어가 수행되었으므로 취약함

4 Bash 버전 확인

[root@jmnote tmp]# rpm -qa | grep bash
bash-3.2-32.el5

5 Bash 업데이트

[root@jmnote ~]# yum update bash
... (생략)
===========================================================================================
 Package          Arch               Version                     Repository           Size
===========================================================================================
Updating:
 bash             x86_64             3.2-33.el5_10.4             updates             1.8 M

Transaction Summary
===========================================================================================
Install       0 Package(s)
Upgrade       1 Package(s)

Total download size: 1.8 M
Is this ok [y/N]: y
... (생략)
Updated:
  bash.x86_64 0:3.2-33.el5_10.4                                                            

Complete!

6 확인 2 (안전)

[root@jmnote ~]# env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
this is a test
[root@jmnote ~]# rm -f echo; env X='() { (a)=>\' sh -c "echo date"; cat echo
date
cat: echo: No such file or directory
[root@jmnote ~]# (for x in {1..200} ; do echo "for x$x in ; do :"; done; for x in {1..200} ; do echo done ; done) | bash ||
> echo "CVE-2014-7187 vulnerable, word_lineno"

7 같이 보기

8 참고 자료

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}