분석 정보/리눅스 분석 정보

과거 리눅스 커널 취약점 활용한 악성파일 유포 주의

TACHYON & ISARC 2018. 12. 3. 15:31

1. 개요

최근 리눅스 커널의 취약점을 이용하여 관리자 권한을 탈취하는 Dirty Cow 취약점(CVE-2016-5195)을 사용한 악성 파일이 유포되고 있다. 해당 샘플에 감염될 시 가상화폐 채굴기로 이용될 뿐만 아니라 감염 PC 의 통신 기록을 참고하여 감염 대상을 늘리는 기능이 있기 때문에 주의가 필요하다.

 

이번 보고서에서는 Dirty Cow 취약점을 이용하는 백도어 프로그램의 악성 동작에 대해 알아보고자 한다.

 

 

2. 분석 정보

2-1. 파일 정보

 

 

2-2. 유포 경로

해당 프로그램은 SSH 통신을 이용한 감염 기능을 포함하고 있으며, 이에 따라 SSH 통신을 통해 유포되고 있을 것으로 추측된다.

 

2-3. 실행 과정

악성 셸 스크립트를 실행하면 가장 먼저 감염 PC 의 시스템 정보를 읽어 감염 동작에 필요한 파일 다운로드 및 설치를 진행한다. 이후 기존에 실행 중인 가상 화폐 채굴기를 제거 하고 새로운 악성 채굴기 설치를 진행하며, 악성 스크립트가 관리자 권한으로 실행되지 않았을 경우엔 Dirty Cow 취약점을 이용하여 관리자 탈취를 시도한다. 관리자 권한으로 실행될 경우 실행 중인 백신 프로세스를 종료시키고, 백도어를 설치 하여 사용자가 악성 동작을 탐지하기 어렵게 만든다.

모든 행위를 마친 후에는 “known_hosts”, “.bash_history” 파일을 참조하여 과거 SSH 통신에 사용된 정보를 추출하고, 해당 주소로 SSH 통신을 시도하여 위의 감염 동작을 재개한다.

 

 

3. 악성 동작

3-1. 기존 가상 화폐 채굴기 제거 및 악성 채굴기 설치

해당 샘플은 자신이 실행시킨 악성 채굴 프로세스를 제외한 프로세스의 cmdline 을 확인한 후, [표 1]에 속한 문자열이 있으면 가상 화폐 채굴 프로세스로 판단하여 종료시킨다. 이후 다운받은 악성 가상 화폐 채굴 프로그램을 실행하여 공격자의 지갑 주소로 설정된 채굴 작업을 진행한다.

 

[표 1] cmdline 탐지 문자열 목록

 

악성 프로그램이 관리자 권한으로 실행될 시 백도어 기능을 수행할 추가 파일을 다운로드한다. 먼저 시스템 OS를 확인하여 OS에 따른 백도어 데몬을 설치하고, 악성 프로세스에 사용되는 Port, 파일, 등이 감지되지 않도록 설정하여 탐지 행위를 방해한다.

 

[표 2] 백도어 설치 대상 OS 목록

 

 

3-3. 백신 프로세스 종료 및 삭제

관리자 권한으로 실행될 시 “/etc/init.d” 디렉터리를 확인하여 [표 3]에 속하는 파일이 존재할 경우, 관련 프로세스 및 파일을 제거한다.

 

[표 3] 종료 백신 프로세스 목록

 

 

3-4. SSH 통신 기록을 이용한 감염

마지막으로, SSH 통신 관련 정보를 기록하는 “known_hosts” 파일과 bash 셸 명령어 내역을 기록한 “.bash_history” 파일을 참조하여 과거 SSH 통신에 사용된 정보를 추출하여 목록화한다. 이후 해당 정보를 이용하여 SSH 통신을 시도하며, 성공 시 위의 감염 동작을 반복하여 감염 PC를 늘린다.

 

[그림 1] SSH 통신 기록 정보 추출

 

 

4. 결론

Dirty Cow 취약점은 시스템 관리자 권한을 빼앗는다는 강력한 메리트 때문에 첫 등장 이후로도 이를 응용한 새로운 취약점이 발견되는 등, 빈번하게 사용되어왔다. 앞서 보았듯이 감염된 PC는 자기 시스템만 조종당할 뿐만 아니라 신뢰 관계를 맺고 있는 다른 PC까지 감염시킬 수 있기 때문에, 이를 방지하기 위해서라도 지속적인 최신 OS 업데이트가 필요하다.

 

상기 악성코드는 잉카인터넷 안티바이러스 제품 TACHYON Internet Security 5.0에서 진단 및 치료가 가능하다.

 

[그림 2] TACHYON Internet Security 5.0 진단 및 치료 화면