[2024년 3월 취약점 보고서] BlueShell Malware Vulnerability | Cloud SECaaS platform AIONCLOUD

AIONCLOUD BLOG

Share information related to AIONCLOUD !

블로그 메인페이지로 돌아가기

[2024년 3월 취약점 보고서] BlueShell Malware Vulnerability

1. 개요

BlueShell 취약점은 Go 언어로 개발된 백도어 악성코드입니다.

단순한 형태의 백도어인 BlueShell 취약점은 C&C 서버와의 통신에 TLS 암호화를 지원해 네트워크 탐지를 우회하여 공격자 명령을(원격 명령 실행, 파일 다운로드/업로드, Socks5 프록시) 수행하는 공격입니다.

 

image.png

출처: 깃허브 https://github.com/restran/BlueShell


2. 공격 과정

BlueShell은 3개의 설정 데이터를 가지고 있는데 C&C 서버의 IP 주소, Port 번호 그리고 대기 시간입니다. 또한 C2 서버에서는 총 4개 명령("shell", "upload", "download", "socks")을 수신 가능하며, 각 명령에 따른 구체적인 행위를 통해 공격합니다.

2-1 Shell 명령어
  • C2 서버로부터 수신한 명령이 “shell” 인 경우, 사용자 정의 패키지인 shell 패키지의 GetInteractiveShell 메소드가 호출
  • cmd 프로세스의 입출력을 현재 연결된 C2의 네트워크 입출력으로 변경한 뒤, cmd를 실행
  • 공격자는 이를 통해 원격에서 cmd 명령을 실행

K2Nimage.png

2-2 Upload 명령어
  • C2 서버로부터 수신한 명령이 “upload” 인 경우, 사용자 정의 패키지인 shell 패키지의 UploadFile 메소드가 호출
  • UploadFile 메소드가 호출되면, 피해 서버에 공격자가 지정한 경로의 파일을 생성한 뒤 네트워크를 통해 수신한 데이터를 사용
  • 공격자는 해당 명령으로 피해 서버의 특정 경로에 파일을 업로드

PNJimage.png

2-3 Download 명령어
  • C2 서버로부터 수신한 명령이 “download” 인 경우, 사용자 정의 패키지인 shell 패키지의 DownloadFile 메소드가 호출
  • DownloadFile 메소드가 호출되면, 피해 서버에서 공격자가 지정한 파일을 읽어 들여 C2 서버로 전송
  • 공격자는 이를 통해 피해 서버의 특정 파일을 다운로드

c2Bimage.png

2-4 Socks 명령어
  • C2 서버로부터 수신한 명령이 “socks” 인 경우, 사용자 정의 패키지인 shell 패키지의 RunSocks5Proxy 메소드가 호출
  • RunSocks5Proxy 메소드가 호출되면, C2 서버에서 전달받은 인증정보(username:password)를 바탕으로 프록시 서버를 설정
  • 공격자는 이를 통해 피해 PC에서 프록시 기능을 사용

Doyimage.png


3. 대응

백도어 악성코드는 결국 해당 악성코드를 심는 과정이 필요하기 때문에 파일 업로드 등의 선행 작업이 필요하고,
바이너리화 된 악성코드들을 패턴으로 탐지하기 어렵다는 점을 이유로 패턴 대응이 어려운 취약점입니다.

BlueShell 취약점과 유사한 케이스들에 대해 지속적으로 모니터링 중입니다.


4. 결론

BlueShell은 백도어 악성코드로서 감염 시스템에서 공격자의 명령을 받아 명령 실행, 파일 다운로드 / 업로드, Socks5 프록시 등의 기능을 수행할 수 있습니다.

Go 언어로 개발됨에 따라 윈도우 환경 뿐만 아니라 리눅스 환경도 공격 대상이 될 수 있습니다. 또한 깃허브에 오픈 소스로 공개되어 다양한 공격자들이 공격에 사용하고 있습니다.

이와 같은 보안 위협을 방지하기 위해서는 취약한 환경 설정을 검사하고, 관련 시스템들을 항상 최신 버전으로 업데이트하여 공격으로부터 보호해야 합니다. 또한 방화벽/보안 프로그램을 최신 버전으로 업데이트하여 악성코드의 감염을 사전에 차단할 수 있도록 신경써야 합니다.


5. 참조

Scroll Up