다운로드하는 순간 디도스 폭탄! 피봇 디도스 봇 유포 중

대다수 공격자가 악성코드를 유포할 때 크랙(Crack) 등 불법 소프트웨어로 위장한 사이트를 이용한다. 공격자는 유료 소프트웨어 크랙이나 시리얼 생성기와 같은 프로그램 형태로 악성코드를 업로드하고, 사용자가 해당 프로그램을 설치하는 과정에서 악성코드에 감염된다.

 

안랩은 피봇(PYbot) 악성코드가 불법 소프트웨어와 함께 유포 중인 정황을 확인했다. 피봇은 파이썬으로 개발된 오픈 소스 디도스 (DDoS) 악성코드이다. 피봇 디도스 봇 악성코드가 유포된 과정을 자세히 살펴보자.

 

 

공격자는 ‘니트로 제너레이터(Nitro Generator)’라는 코드 생성기를 미끼로 사용했다. 니트로는 [그림 1]과 같이 디스코드(Discord)의 다양한 기능을 제공하는 유료 서비스이며, 니트로 제너레이터는 해당 서비스를 모두 무료로 사용할 수 있도록 니트로 서비스 코드를 생성하는 툴이다.

 

[그림 1] 디스코드 니트로 유료 서비스

피봇은 일반적인 디도스 봇 악성코드와는 다르게 오로지 디도스 공격 기능만 수행한다. 현재로서 피봇의 주요 표적은 윈도우 시스템이지만, 향후 리눅스 시스템을 노릴 가능성도 간과해서는 안 된다. 피봇 개발에 사용된 파이썬의 특성상 리눅스 환경에서도 동작할 수 있기 때문이다.

 

[그림 2] 오픈 소스 악성코드 피봇

이제 본격적으로 피봇이 유포된 과정을 자세히 알아보자. 최초로 유포된 악성코드는 DRPU Setup Creator로 제작된 인스톨러(Installer) 유형이다. 이들은 ‘nitrogen.exe’ 및 ‘ntrg.exe’라는 이름으로 유포됐다.

 

[그림 3] 피봇을 설치하는 인스톨러 악성코드

 

이 인스톨러 악성코드는 Program Files 경로에 [그림 4]의 파일들을 생성한다. ‘NitroGenerator.exe’는 다운로더(DownLoader) 악성코드로, 외부에서 추가 악성코드를 설치한다.

 

[그림 4] 인스톨러가 설치한 악성코드

 

다운로더 악성코드는 닷넷(.NET)으로 개발됐으며, [그림 5]와 같이 단순한 형태이다. 이 악성코드는 %TEMP% 경로에 ‘p.exe’, ‘n.exe’를 다운로드 및 실행하며, 시작 폴더에 바로 가기 파일을 생성해 재부팅 이후에도 피봇이 동작하도록 한다.

 

[그림 5] 다운로더 악성코드

 

‘n.exe’는 ‘FireDragon’s Nitro Generator’라는 프로그램의 인스톨러이다. 설치가 끝나면 [그림 6]처럼 디스코드의 유료 서비스인 니트로 코드를 생성하는 불법 프로그램이 생성된다.

 

[그림 6] 디스코드 니트로 코드 생성기

 

피봇은 파이썬 악성코드이지만, 공격자는 파이인스톨러(PyInstaller)를 통해 윈도우 실행 파일로 빌드한 후 유포했다. 파이인스톨러란 파이썬이 설치되지 않은 환경에서도 파이썬 스크립트가 동작하도록 실행에 필요한 모듈과 함께 ‘exe’, 즉 윈도우 실행 파일 포맷으로 변환해 주는 툴을 말한다. 파이인스톨러는 기본적으로 스크립트를 실행 파일로 변환하는 ‘Bat2exe’와 유사한 툴이라고 할 수 있다. 하지만 파이썬 스크립트 파일의 경우, 윈도우 기본 환경에서 동작 가능한 Batch 파일과는 달리 파이썬이 설치돼 있어야 구동하기 때문에 파이썬 스크립트를 실행하는 다수의 모듈을 포함한 것이 특징이다.

파이인스톨러로 제작된 바이너리 파일을 분석하기 위해 실행 파일 내부에 저장된 각 모듈을 추출하면 [그림 7]처럼 컴파일된 파이썬 스크립트 ‘bot (1)’과 다수의 파이썬 모듈을 확인할 수 있다.

 

[그림 7] 파이인스톨러 내부의 파일들을 추출한 결과

 

[그림 8]은 컴파일된 파이썬 스크립트 ‘bot (1)’을 디컴파일한 결과이다. 디컴파일은 컴파일된 실행 파일을 소스 코드로 되돌리는 작업이다. 피봇의 소스 코드와 거의 유사하지만, 약간 다르다. 피봇에는 cURL을 이용한 다운로드 루틴이 존재하지 않지만, 이번 공격에 사용된 피봇은 외부에서 추가 페이로드를 다운로드하는 루틴이 확인됐다. 다운로드 주소의 도메인이 C&C 서버와 동일해 악성코드로 추정되지만, 현재는 다운로드할 수 없어 어떤 악성코드를 설치하는지 알 수 없다.

[그림 8] 공격에 사용된 피봇의 소스 코드

 

피봇은 TCP 및 TCP SYN, UPD 플로드(Flood)와 같은 기본적인 레이어 4(Layer 4) 공격뿐만 아니라 VSE, HTTP GET Request 플로드 공격 등 다양한 디도스 공격을 지원한다. VSE는 밸브 소스 엔진(Valve Source Engine)의 줄임말로, VSE 플로드는 특정 게임 서버에 다수의 쿼리를 전달하는 방식의 디도스 공격이다.

[그림 9] 피봇이 지원하는 디도스 공격

 

이처럼 피봇에 감염되면 사용자의 시스템은 공격자의 명령을 받아 특정 대상을 표적으로 디도스 공격을 가하는 디도스 봇(DDoS Bot)으로 악용될 수 있다. 피봇 디도스 봇 악성코드로 인한 피해를 막으려면 사용자는 알려지지 않은 경로에서 다운로드한 실행 파일을 각별히 주의하고, 유틸리티, 게임 등의 프로그램은 공식 홈페이지를 통해 다운로드할 것을 권장한다. 또한, V3를 최신 버전으로 업데이트해 악성코드 감염을 사전에 차단해야 한다.

 

 

출처 : AhnLab

02-553-2331
견적 요청
카카오톡 문의