보안 제품정보


리눅스에 백도어 계정 설치하는 사이버 공격 발견... 다양한 악성코드 추가 설치 2024.01.31

백도어 설치한 공격자...새로운 계정 추가, 루트 계정 비밀번호 변경, SSH 키 등록
시스템 제어 및 랜섬웨어나 코인 마이너, 디도스 봇 등 다양한 악성코드 설치


[보안뉴스 박은주 기자] 리눅스 SSH 허니팟을 활용해 불특정 다수의 리눅스 시스템을 대상으로 한 공격이 발견됐다. 공격자는 기본 설정이나 단순한 형태의 비밀번호를 사용하는 등 부적절하게 관리되는 리눅스 시스템을 무차별 대입 공격 및 사전 공격해 악성코드를 설치하는 등의 공격을 수행했다.

[이미지=gettyimagesbank]


최근 안랩 시큐리티 인텔리전스 센터(ASEC)에 따르면 악성코드 대신 백도어 계정을 생성하는 공격 사례는 최근까지 많은 공격 로그가 확인됐다. 공격자는 새로운 계정을 추가하거나 기준 루트(root) 계정의 비밀번호를 변경하기도 하며 비밀번호 없이 로그인하기 위한 SSH 키를 등록하는 방식의 공격을 사용한다. 이에 따라 추후 계정으로 로그인해 감염 시스템을 제어할 수 있고, 랜섬웨어나 코인 마이너, 디도스 봇 등 다양한 악성코드를 설치할 수 있다.

지속성을 유지하는 단계에서는 최초 공격 이후에도 지속해서 감염 시스템을 제어할 수 있게 한다. 일반적으로 악성코드는 레지스트리 Run 키나 작업 스케줄러, 서비스 등에 자신을 등록해 재부팅 이후에도 공격이 실행되도록 지속성을 유지한다. 이외에도 백도어 계정을 추가하는 방법이 있다.

일례로 북한 해킹그룹 김수키(Kimsuky)는 윈도우 시스템을 공격할 때 감염 시스템을 제어하기 위해 RAT를 사용하기도 하지만, RDP를 이용해 GUI 환경으로 감염 시스템을 원격 제어하기도 한다. 김수키 그룹은 감염 시스템에 RDP Wrapper를 설치하거나 RDP 서비스를 활성화하고, 이후 RDP 서비스를 패치해 RDP 다중 접속을 가능하게 한다. 이후 새로운 계정을 등록하고 은폐한 후 생성한 계정으로 감염 시스템을 제어하는 식이다.

계정을 등록해 공격하는 방식은 윈도우 시스템뿐만 아니라 리눅스에서도 동일하다. 이외에도 루트 계정처럼 높은 권한을 가지며 이미 존재하는 계정의 비밀번호를 변경할 수도 있다. 공격자는 계정에 직접 생성한 SSH 키를 등록함으로써 이후 해당 키를 이용해 비밀번호 입력 없이 감염 시스템에 로그인할 수 있게 된다.

이에 대비하기 위해 리눅스 관리자는 SSH 서버에 비밀번호로 로그인하는 대신 서버에 SSH 키를 등록해 이후 생성한 키를 기반으로 클라이언트에서 서버로 로그인할 수 있다. 또한 허용된 IP만 접속할 수 있도록 접근을 제한하는 방법도 제시된다.

▲리눅스 백도어 계정 공격 사례에서 사용된 아이디, 비밀번호 목록[표=안랩 ASEC]


리눅스 백도어 계정 공격 사례
사용자 계정을 추가한 공격자는 생성한 계정을 통해 다음에도 감염 시스템에 로그인하여 악성코드를 설치하거나 다양한 악성 행위를 수행할 수 있게 된다. 공격 로그는 다수의 Attack Source에서 확인되는 계정 및 비밀번호도 매번 달라진다. 이를 통해 로그인에 성공한 이후 계정을 등록하는 명령까지 모두 자동화된 스크립트가 있을 것으로 보인다. 만약 로그인에 성공한 시스템에 대해 백도어 계정을 추가하는 스크립트를 추가 설치했다면 해당 공격을 자동화할 수 있게 된다.

기존 계정에 루트 계정 비밀번호를 변경하는 방식도 다수 확인됐다. 루트 계정은 일반적인 리눅스 시스템에 존재하며 시스템을 제어할 수 있는 권한으로 주요 공격 대상이 된다. 공격자는 다음과 같은 명령을 이용해 루트 계정의 비밀번호를 변경했으며, 로그도 다수 확인됐다.

공격자는 시스템에 스캐너 악성코드와 함께 해당 명령을 수행하는 스크립트를 함께 설치한 것으로 보인다. 단순 비밀번호 변경만 아니라, 감염 시스템 운영체제, 하드웨어, 사용자 정보 등 다양한 정보를 출력하는 명령을 함께 사용하는 공격사례도 존재한다. 공격자는 루트 계정을 본인만 로그인할 수 있는 백도어 계정으로 전환한 이후 해당 정보를 기반으로 추후 악성코드를 설치하거나 다크웹에 자격 증명 정보를 판매할 것으로 예상된다.

▲새롭게 설치된 SSH 공개 키[자료=안랩 ASEC]

]
리눅스 서버에 SSH 키를 생성하는 형태는 리눅스 서버에 SSH를 이용해 로그인할 시 비밀번호를 입력할 수 있지만 SSH 키를 이용하면 비밀번호 입력 없이도 로그인 할 수 있다. 이를 위해 SSH 공개 키, 개인 키를 생성하고 로그인할 리눅스 서버에 SSH 공개 키를 설치하는 과정이 필요하다. 공개 키가 설치되면 이후 생성한 개인 키를 이용해 클라이언트에서 서버로 비밀번호 입력 없이 로그인할 수 있게 된다.

한편 악성코드를 활용한 공격도 이어졌다. ‘KONO DIO DA 코인 마이너’, ‘디도스 봇’을 설치한 공격 사례가 확인된 것. 코인마이너 공격 사례에서는 XMRig 코인 마이너를 설치하는 동시에 SSH 키 파일을 함께 추가하기도 했다. 디도스 봇을 활용한 공격에서는 Tsunami, ShellBot을 설치하며 SSH 키 파일을 생성하는 사례가 발견됐다.

공격자는 로그인에 성공한 이후 Bash 스크립트를 다운로드하고 실행했는데, 여기에는 코인 마이너, DDoS Bot, 로그 클리너 악성코드들을 설치하는 루틴들뿐만 아니라 SSH 키 파일을 생성하는 루틴이 확인됐다.

이에 따라 SSH 관리자는 서버의 보안 정책을 강화해야 한다. 먼저 계정의 비밀번호를 추측하기 어려운 형태로 사용하고, 주기적으로 변경하는 등 무차별 대입 공격과 사전 공격으로부터 리눅스 서버를 보호하기 위한 노력이 요구된다.
[박은주 기자(boan5@boannews.com)]

<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>