Wins blog

글로벌 정보보안 파트너! Global Security  No.1 윈스는 국가대표 정보보안 기업에서 글로벌 강소기업으로 도약합니다.

보안 정보

앞 내용 보기 다음 내용 보기
취약점 정보취약한 QNAP NAS 대상 GNU Bash Variable 취약점 공격
작성일 2014-12-19 조회 1855

1. 개요

GNU Bash Evironment Variable을 이용한 공격이 지속적으로 이루어지고 있다. WSEC에서는 최근 QNAP NAS 를 대상으로 하는 공격이 확인됨에 따라 이에 대한 내용을 같이 살펴보고자 한다. QNAP NAS는 취약한 버전의 경우 GNU Bash Evironment Variable의 직접적인 영향이 될 수 있다는 내용이 GNU Bash Evironment Variable 취약점 발표 당시 공개되었다. 이에 따라, QNAP NAS가 어떻게 공격자로부터 위협이 되는지 본 게시 글을 통해 같이 살펴보고자 한다.

 

2. 확인 내용

1) NAS Storage는?

- NAS는 Network Attached Storage의 약자로 네트워크 결합 스토리지 이다. Network에 연결된 파일 수준의 컴퓨터 기억 장치로 서로 다른 Network Client에 데이터 접근 권한을 제공할 수 있다. 

 

2) QNAP NAS는 왜 ShellShock 공격 대상이 되는가?

- 지난 10월 Fireeye에서 QNAP NAS에 대한 공격 시도가 탐지된 것을 확인하여 공개 발표하였다. 또한 공격 대상의 위치는(Location) 주로 한국과 일본에서 활동한다는 내용이 포함되어 있어 WSEC에서는 그와 관련된 모니터링을 진행해왔다.

- 지난 11월 KISA에서 공개한 “GNU Bash 원격코드실행 취약점 이슈 분석 및 대응방안 (2014.11)”에서도 QNAP NAS이 Bash 취약점을 이용한 공격 대상에 올려져 있다는 것을 공식적으로 언급하였다.

- QNAP NAS Storae에 대한 공격은 취약한 버전에서 사용하고 있는 CGI Script를 이용하여 이뤄지고 있다. 해당 CGI는 /cgi-bin/authLogin.cgi로 로그인 시에 호출되며 인증 절차 없이 (Authentication) 접근 가능하다. 이에 해당 스크립트 접근 시, Bash 환경 변수 취약점을 이용한 Format을 전송하여 시스템 명령 수행, 추가 악성 코드 다운로드를 수행하는 행위를 하게 된다. 공격자는 취약한 QNAP NAS Storage에 대하여 작업을 진행한다.

 

3) WSEC QNAP NAS  대상 공격 확인 모니터링

- 현재까지 QNAP NAS에 대한 공격 트래픽이 확인되고 있다. 국내 불특정 기관을 대상으로 진행 중이며 2)에서 확인된 것과 같이 /cgi-bin/authLogin.cgi에 대한 접근을 시도하며 Bash 환경 변수 취약점을 이용한 “() { :; }” 문자열이 확인되며 이후 대상 시스템에 명령을 내리기 위해 시스템 명령어를 통한 악성 행위를 진행한다.


[그림1. WSEC에서 관찰된 QNAP NAS Storage 대상 공격 트래픽]

 

3. 악성 행위 분석 내용

[그림1]에서 보이는 것과 같이 공격자는 QNAP NAS의 취약점을 이용, 시스템 권한 탈취 후 추가 악성 스크립트 다운로드 수행, 실행을 하고 있다. 공격의 목적은 취약한 QNAP NAS를 이용한 Botnet 구축이 예상되며, 각 기관의 데이터가 보관되어 있는 만큼 Ransomware 류의 악성 코드를 추가 다운로드를 통한 악성 행위를 및 공격자의 의도에 따라 공격의 내용은 달라질 것으로 예상된다. 확인된 악성 스크립트는 크게 5가지의 악성 행위를 진행하는데 그 내용은 아래 [표1]과 같다.

 

[표1. 악성 행위 리스트]

 

1) CPU Architecture에 따른 분기 및 DNS 설정 값 변경

- 3가지 유형에 따라 분기된다. 타입 별로 하는 행위는 동일하다. DNS 설정 값 변경은 google DNS 주소인 8.8.8.8로 변경을 한다. 그 이유는 사용되는 Domain이 Black List화 되는 것을 피하고, 기타 분석 기관의 로깅을 피하기 위한 것으로 추측 된다. ([그림2] 참고)



[그림2. CPU에 따른 분기 및 DNS 설정 값 변경]

 

2)  SSH 서버 생성 / 실행

- ipkg를 이용하여 openssh 설치하며, -p 옵션을 사용하여 포트를 26번 포트로 변경하고 있다. 이는 기본 22번 포트는 사용하고 있을 가능성이 존재하며, 이를 피하기 위한 것으로 판단된다.

 

[그림3. openssh 설치 및 포트 설정 (26번)]

 

3)  계정 생성 (id : request)

- 지속적인 악성 행위를 위해서는 정상 서비스를 이용하는 것 외에 추가 계정 생성을 통해 그 지속적인 행위를 강화하고자 시도한다.

 


[그림4. request 계정 생성]

 

4) 추가 스크립트 생성 및 특정 경로에 복사

- 아래 [그림5]와 같이 wget 명령어를 통해 지정된 서버에서 armgH.cgi (이름은 변경 가능)를 다운로드 하며 이를 exo.cgi로 변경 후, 최종적으로 ${fold}에 저장된 경로로 이동한다. 이에 관리자는 ${fold} 경로에 대한 체크가 필요하다. 

 


[그림5. 추가 스크립트 다운로드 및 이동 로직 부분]

 

5) 악성 행위를 위한 자동 재시작 스크립트

- 악성 행위 지속을 위해 시스템 재부팅 시에도 자동적으로 악성 환경을 구축하기 위한 작업이다. /tmp/config/autorun.sh에 순차적으로 악성 행위에 대해 값을 입력한다.

 

6) 추가 취약 대상 Device에 대한 스캔을 위한 행위 가능성도 확인된다.

- 특정 서버로부터 run이라는 스크립트를 다운로드 한 뒤 백그라운드 형태로 스크립트를 수행한다.

 

7) 악성 코드는 ssh 서버의 정상 설치로 감염 NAS Device에 대한 접근이 용이함에 따라 Bash Environment Variable 취약점이 fix된 버전의 firmware를 직접 다운로드 하여 설치하는 행위를 진행 한다. 이는 전산 당담자로 하여금 GNU Bash Environment Variable이 패치된 버전으로 인식하도록 유도하는 것으로 생각되며, 이 외 숨은 의도가 있는지는 확인이 필요하다.

 


[그림6. GNU Bash Environment Variable 취약점 fix firmware 설치]

 

4. 정리

14년 하반기 가장 큰 사건이라 할 수 있는 GNU Bash Environment Variable 취약점의 여파가 발견 당시부터 현재까지, 그리고 앞으로도 지속될 것으로 예상된다. 취약한 QNAP NAS에 대한 본 공격은 타 보안 기관에서 발표하였듯이 WSEC의 네트워크 모니터링 결과 한국을 대상으로 하는 것이 분명해졌다. 이에 QNAP NAS Storage를 사용하는 각 기관의 전산 담당자들은 사용하는 QNAP NAS의 버전을 체크하고, 지난 10월 이후로 업데이트 된 버전으로 Update 진행을 반드시 해야 하겠다. 또한 전산 당담자는 버전 체크 외, 불필요한 ssh 서비스의 사용, 불필요한 cgi 스크립트 확인 (ex, /share/MD0_DATA/optware/.xpl/exo.cgi), 몰래 설치된 자동 시작 스크립트(/tmp/config/autostart.sh) 등의 유무를 체크하도록 해야할 것이다. 본 취약점을 이용한 공격은 이미 패치된 버전이 나왔음에도 관리되지 않는 장비들을 대상으로 꾸준히 지속되고 있으며 이는 다른 종류의 장비들을 포함 2015년에도 지속될 것으로 판단된다. 앞서 이야기한 것과 같이 공격자는 QNAP NAS를 대상으로 Botnet 구축, Ransomware를 실행할 가능성이 있으며 공격자의 의도에 따라 여러 형태의 공격이 변형되어 수행될 수 있을 것이라 판단된다. 전산 담당자들은 시스템 점검 (Logging 정보, 불필요한 파일 생성, 파일 무결성 등) 및 SNIPER 대응 패턴을 통한 네트워크 모니터링을 통해 파급력 있는 공격자의 공격에 각별히 유의할 수 있도록 해야하겠다.

 

5. 대응 방안

# SNIPER IPS 대응 패턴

- 취약한 QNAP NAS를 대상으로 공격 수행 시에 아래 패턴으로 대응할 수 있다.



 

※ 참고자료

- https://isc.sans.edu/diary/Worm+Backdoors+and+Secures+QNAP+Network+Storage+Devices/19061

- http://jrnerqbbzrq.blogspot.kr/2014/12/a-little-shellshock-fun.html

- http://threatpost.com/shellshock-worm-exploiting-unpatched-qnap-nas-devices/109870

- https://forsec.nl/2014/11/qnap-shellshock/

 

첨부파일 첨부파일이 없습니다.
태그