RokRAT은 북한 해킹 그룹인 APT37(ScarCruft, RedEyes, Vedalia)이 주로 사용하는 원격 액세스 트로이 목마(RAT: Remote Access Trojan) 악성코드이다. RAT은 감염된 컴퓨터를 공격자가 원격에서 제어할 수 있도록 설계된 악성코드의 한 종류이다.
행위 조직: APT37
북한 해킹 그룹 APT37(ScarCruft, RedEyes, Vedalia 라고도 알려져 있는)이 주로 사용한다.
이 그룹은 주로 대한민국 정부 기관, 기업, 대북 관련 인사 등을 표적으로 삼는다.
유포 방식
주로 스피어 피싱(Spear Phishing: 특정 개인, 그룹 또는 조직을 대상으로 하는 피싱 공격) 이메일을 통해 유포된다.
악성 LNK 파일 형태로 위장하는 경우가 많으며, 이 파일은 정상 문서 파일처럼 보이지만, 실행 시 악성 PowerShell 명령어를 통해 RokRAT 페이로드를 실행한다.
예를 들어, 악성 한글 문서(.hwp)나 워드 문서(.doc, .docx)에 포함된 매크로 또는 취약점 공격 코드를 통해 유포된다.
또는, 악성 웹사이트 다운로드, 멀버타이징(Malvertising) 등으로도 유포된다.
회피 기법
바이러스 탐지를 회피하기 위해 다음과 같은 방법들을 사용한다.
- 클라우드 서비스 이용
: C2(Command and Control) 서버와의 통신에 Dropbox, Google Drive,OneDrive 등 합법적인 클라우드 서비스를 활용하여 탐지를 회피한다. - 다단계 감염
: LNK파일 -> PowerShell Script -> 암호화된 쉘코드 복호화 -> 최종 악성코드 실행 - 안티-분석(Anti-Analysis) 기법
: 디버깅 방지, 가상 환경 감지 등 분석을 어렵게 하는 기술을 포함시켜 회피한다. - 메모리 상주
: 파일 형태로 디스크에 남지 않고 메모리에서 실행되는 Fileless 형태로 동작시켜 회피한다.
악성 행위
- 정보 수집: 시스템 정보, 프로세스 목록, 파일 목록 등
- 키로깅(Keylogging): 키보드 입력 기록
- 스크린 캡쳐
- 오디오 녹음
- 파일 제어: 파일 업로드/다운로드, 생성, 수정, 삭제 등
- 원격 명령 실행
- 프로세스 제어
- 웹 브라우저 데이터 탈취
C2 통신 방식
주로 HTTP GET/POST 방식을 사용하며, RC4 암호화와 Base64 인코딩, 문자열 치환 등을 조합하여 데이터를 암호화하여 전송한다.
평상시에는 404(Not Found) 상태 코드를 응답하지만, 공격자의 명령이 있을 경우 200(OK) 상태 코드와 함께 암호화된 명령 데이터를 응답한다.
활용하는 취약점
특정 취약점을 직접 악용하기보다, 유포 과정에서 0-day 또는 1-day 취약점을 활용하는 경우가 있다.
- HWP 문서의 EPS 객체 취약점 (CVE-2013-0808, CVE-2017-8291)
- Windows Scripting Engine의 메모리 손상 취약점 (CVE-2020-1380)
- Windows Scripting Engine의 메모리 손상 취약점 (CVE-2024-38178)
- 등..
결론
RoKRAT은 북한 APT 그룹이 주로 사용한s RAT 악성코드로, 탐지를 회피하기 위해 클라우드 서비스, 다단계 감염, 안티-분석 기법을 활용하며, 감염된 시스템에서 정보 탈취 및 원격 제어를 수행한다. 사용자는 최신 보안 업데이트를 적용하고 의심스러운 이메일이나 파일을 열지 않음으로 예방할 수 있다.