가상화폐 채굴 통한 백도어 설치 공격 주의
안랩은 외부에서 유입되는 다수의 공격을 모니터링하던 중 최근 하이브OS(HiveOS)를 노린 공격 사례를 확인했다. 초기 침투 과정에서 부적절하게 관리되는 SSH 서비스를 표적으로 삼아 최종적으로 새로운 가상화폐를 채굴하는 명령을 실행하고 추가적으로 LinuxRC 백도어를 설치했다. 이번 글에서는 해당 공격 사례에 관해 자세히 살펴본다.
1. 하이브OS
하이브OS는 암호화폐 채굴 전용 운영체제로 다수의 마이닝 리그를 효율적으로 관리하고 모니터링하기 위한 목적으로 사용된다. 이를 이용해 암호화폐 채굴 작업을 자동화하고 최적화할 수 있다.
다른 리눅스 서버와 마찬가지로 하이브OS를 운용 중인 시스템 또한 부적절하게 관리될 경우 공격 대상이 될 수 있다. 특히 원격 관리를 위해 SSH 서비스를 사용 중일 경우 무차별 대입 공격 및 사전 공격의 대상이 된다. 하이브OS를 표적으로 삼은 공격은 수년 전부터 지속되고 있는데, SSH 백도어 계정을 생성하는 유형이 대부분이다. 하지만 최근에는 새로운 유형의 공격이 확인됐다.
2. 초기 침투 과정
공격자는 외부에 공개된 SSH 서비스들을 스캐닝 한 후 무차별 대입 공격을 통해 로그인을 시도했다. 로그인에 성공한 이후에는 아래 명령들을 실행했는데, 이를 통해 “hive” 계정을 추가하고 salt를 이용해 생성한 비밀번호를 지정한다. 이후 외부에서 “run”이라는 이름의 Bash 스크립트 악성코드를 다운로드해 실행한다.
3. Bash 스크립트 (run)
최초로 실행되는 “run”은 백도어 계정을 생성하고 추가 페이로드를 설치하는 기능을 담당한다. 먼저 다음과 같은 명령들을 이용해 “hive” 계정과 “user” 계정의 비밀번호를 변경한다. 그리고 새로운 SSH 공개키를 “authorized_keys” 파일에 덮어쓴다.
[그림 1] 백도어 계정 생성 명령
참고로 리눅스 서버에 SSH를 이용해 로그인할 시 비밀번호를 입력할 수도 있지만 SSH 키를 이용하면 비밀번호 없이도 로그인이 가능하다. 이를 위해 SSH 키 쌍 즉 공개 키/ 개인 키를 생성하고 로그인할 리눅스 서버에 SSH 공개키를 설치하는 과정이 필요하다. 리눅스 서버에 공개키가 설치됐다면 이후 생성한 개인 키를 이용해 클라이언트에서 서버로 비밀번호 입력 없이 로그인이 가능하다. 이 과정을 통해 공격자는 공개 키와 함께 생성되는 개인 키를 이용해 감염 대상 시스템에 로그인한다.
이후 “autofan”이라는 이름의 백도어 악성코드와 이를 서비스로 등록하는 데 사용되는 설정 파일 “autofan.service” 파일을 다운로드하고 서비스에 등록한다. 이 외에도 채굴 기능을 담당하는 Bash 스크립트 악성코드인 “nvidia-conf”와 설정 파일 “overclock.service”를 다운로드하고 서비스에 등록한다. 여기까지의 과정이 끝나면 다수의 로그 파일들을 삭제한다.
4. LinuxRC 백도어
“autofan”는 개발자 “im_bill’이 제작한 LinuxRC 백도어 악성코드로, 깃허브에 소스코드가 공개돼 있다. 유명한 오픈 소스 백도어는 아니지만, 연관 공격 사례들을 확인한 결과 2022년 중국 “360 Netlab”에서 공개한 스프링포셸(Spring4Shell) 공격 사례에서 미라이(Mirai)와 함께 사용된 이력이 존재한다.
[그림 2] LinuxRC의 깃허브 페이지
단순한 형태의 백도어인 LinuxRC는 파일 조회, 다운로드 및 업로드 외에도 명령 실행 및 리버스 쉘 기능을 지원한다. 공격자는 감염 대상 시스템에 SSH를 이용한 원격 제어가 가능하지만 LinuxRC를 활용해 쉽게 파일 작업을 포함한 원격 제어를 수행할 수도 있을 것이다.
[표 1] LinuxRC 명령
5. 레이븐코인(Ravencoin) 채굴
다운로더 Bash 스크립트는 LinuxRC 외에도 “nvidia-conf”라는 이름의 또 다른 Bash 악성코드를 설치했다. “nvidia-conf”는 다음과 같이 하이브OS의 마이너를 GMiner로 설정하고 공격자의 지갑 파일을 다운로드하는 기능을 담당한다. 참고로 하이브OS에는 이미 GMiner가 설치돼 있기 때문에 지갑 파일 만을 교체하는 방식이 사용된다. 이를 통해 감염된 하이브OS 시스템에서는 공격자가 지정한 코인이 채굴된다.
[그림 3] 하이브OS의 마이너 설정 루틴
일반적으로 리눅스 서버를 대상으로 하는 코인 마이너 악성코드들은 XMRig를 설치해 모네로를 채굴한다. 하지만 이번에 확인된 하이브OS 대상 마이너는 레이븐코인을 채굴하는 것이 특징이다. 레이븐코인은 비트코인 기반의 암호화폐로, 자산 전송과 관리에 특화된 암호화폐 및 블록체인 플랫폼이다. 다음과 같이 다운로드된 지갑 파일 “wallet.conf”를 확인해 보면 KawPow는 레이븐코인의 채굴 알고리즘과 공격자가 설정한 마이닝 풀 주소와 지갑 주소를 확인할 수 있다.
6. 결론
이처럼 최근에는 부적절하게 관리되고 있는 하이브OS 서버를 대상으로 한 크립토재킹(Cryptojacking) 공격이 발생하고 있다. 하이브OS는 암호화폐 채굴 전용 운영체제로 원격 관리를 위해 운용 중인 SSH 서버가 취약한 계정 정보를 사용함에 따라 공격 대상이 됐다. 공격자는 최초 침투 이후 레이븐코인을 채굴하도록 조작했으며, LinuxRC 백도어를 설치하기도 했다.
이에 따라 관리자들은 계정의 비밀번호를 추측하기 어려운 형태로 사용하고 주기적으로 변경해 무차별 대입 공격과 사전 공격으로부터 리눅스 서버를 보호하고, 최신 버전으로 패치해 취약점 공격을 방지해야 한다. 또한, 외부에 공개된 접근 가능한 서버에 방화벽과 같은 보안 제품을 이용해 공격자로부터의 접근을 통제해야 한다. 마지막으로 V3를 최신 버전으로 업데이트함으로써 악성코드의 감염을 사전에 차단할 수 있도록 신경 써야 한다.
출처 : AhnLab