페이스북 광고가 트리거? 클릭 후 벌어진 일

암호화폐에 대한 관심이 높아지는 가운데, 이를 노린 사이버 공격도 점점 정교해지고 있다. 최근 안랩은 암호화폐 사용자들을 겨냥해 페이스북 광고를 통해 유포되는 악성코드를 발견했다. 공격자는 유명 암호화폐 거래소인 바이낸스로 위장한 웹사이트를 제작해 사용자가 악성 파일을 다운로드하도록 유도하고, 이를 통해 시스템 정보와 화면 캡처, 브라우저 정보 등을 탈취하는 인포스틸러(InfoStealer)를 실행시킨다. 이번 공격의 주요 방식과 특징을 살펴본다.

 

 

사용자가 페이스북 광고에 포함된 ‘더 알아보기’ 또는 ‘다운로드’ 버튼을 클릭할 경우, 바이낸스로 위장한 가짜 거래소 웹사이트로 리다이렉션된다. 다만, 사용자가 페이스북에 로그인되어 있지 않거나, URL에 utm_campaign, utm_content, cid, bid, fbclid, fbid 등의 특정 파라미터가 포함되지 않은 경우에는 위장 사이트가 아닌, 광고와 무관한 일반 사이트로 연결된다.

 

[그림 1] 페이스북 피드에 게시된 가짜 광고

 

이런 조건을 모두 만족해 사용자가 피싱 사이트에 접속하게 되면, 공격자는 메인 화면에 ‘Windows용 다운로드’ 버튼을 표시해 악성 파일 다운로드를 유도한다.

 

[그림 2] 바이낸스로 위장한 웹사이트

 

사용자가 다운로드 버튼을 클릭하면 ‘installer.msi’라는 이름의 파일이 다운로드되고, 설치가 진행된다. 설치 과정에서 로컬 호스트의 특정 포트(30303)가 열리며, 이후 위장된 웹사이트가 이 포트를 통해 시스템과 통신을 시도한다. 이때 전달되는 명령은 파라미터에 따라 달라지며, 각 파라미터의 기능은 [표 1]과 같다.

 

[표 1] 파라미터 별 기능

 

[그림 3] 피싱 사이트에 로드된 JavaScript 코드 일부

 

/r 파라미터를 통해 피해 시스템의 GUID가 공격자 서버로 전송되면, 서버는 시스템 정보를 수집할 수 있는 WMI 쿼리를 응답한다. 피해자의 PC는 이 쿼리를 실행해 시스템 정보를 수집하고, /worker 파라미터를 이용해 해당 정보를 다시 공격자 서버로 전달한다. 이후, 시스템이 가상 환경으로 판단되면 서버는 NULL 값을 반환하고 통신을 종료한다. 반면, 실제 환경일 경우 서버는 파워셸(PowerShell) 스케줄러를 실행하도록 구성된 XML 형식의 파일을 응답한다.

 

[그림 4] (상) 가상 환경으로 판단돼 통신이 종료된 경우 (하) 실제 환경으로 판단돼 공격 명령이 실행된 경우

 

스케줄러가 등록되면, Application(응용 프로그램) 로그에서 이벤트가 발생할 경우 BASE64로 인코딩된 파워셸 스크립트를 실행한다. 실행되는 스크립트별 기능은 [표 2]와 같다.

 

[표 2] 스크립트 별 기능

 

[그림 5] 등록된 스케줄러

 

[표 2]의 3번 또는 4번 스크립트가 실행되면, 외부에서 추가 파워셸 스크립트를 다운로드 및 실행한다. 다운로드된 스크립트는 [그림 6]처럼 또 다시 외부에서 추가 스크립트를 다운로드하고 실행한다.

 

[그림 6] 추가 스크립트를 다운로드하는 파워셸 스크립트

 

이처럼 암호화폐에 사용자를 노리는 악성코드는 브라우저 데이터, 텔레그램(Telegram) 계정 정보는 물론, 키로깅 등 다양한 악성 행위를 수행한다. 사용자는 파일을 다운로드할 때 반드시 도메인 주소를 확인해 공식 웹사이트인지 여부를 먼저 확인해야 하며, 페이스북 등 광고를 통해 제공되는 프로그램은 불필요한 PUP이거나 악성코드일 가능성이 높으므로 가급적 다운로드는 피하는 것이 바람직하다.

 

 

출처 : AhnLab

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