영화 같은 은행 해킹 사건

  • AhnLab
  • 2016-06-03

2016년 2월 미국 연방준비은행에 보관된 방글라데시 중앙은행 계좌에서 8,100만 달러(약 966 억 원)가 사라졌다는 영화 같은 뉴스가 보도된다. 누군가 은행 내부 이체 시스템을 조작해 1 억 달러가 넘는 돈을 필리핀과 스리랑카 은행 계좌로 이체했다. 필리핀 은행으로 송금된 8100만 달러는 성공적으로 이체되었지만 스리랑카 은행에 2000 만 달러(약 231억)를 이체할 때 영어 단어를 잘못 써 이를 확인하던 중 발견되었다. 이 사건으로 방글라데시 중앙은행 총재 등은 책임을 지고 사임했다고 한다. 

 

▲방글라데시 중앙은행 총재 기자 회견(출처: AP 연합뉴스)

 

은행이 직접 공격당하는 일이 처음은 아니다. 러시아 갱단으로 추정되는 조직이 2013년부터 30개국 100개 은행을 해킹해 최대 10 억 달려(약 1조 1천억 원)를 훔친 것으로 알려졌다. 하지만 한 번에 1 천 억 원 가까운 거액이 털린 건 처음이다. 특히 이번 사건은 이체 시스템을 조작한 게 내부자의 짓인지 악성코드가 사용되었는지 처음에는 알려지지 않았다. 

 

4월 25일 영국 배시스템(Baesystem)에서 공격에 사용된 것으로 알려진 악성코드 분석 정보를 공개했다. 공격자는 은행 내부 시스템에 침투해, 글로벌 금융거래 정보를 안전한 환경에서 교환할 수 있게 은행과 기타 금융기관 간 연결 네트워크를 제공하는 단체인 스위프트(SWIFT​, Society for Worldwide Interbank Financial Telecommunication)에서 국제간 거래시 이용하도록 제공하는 시스템을 조작할 수 있는 악성코드를 만들었다. 이는 공격자가 목표 은행의 운영에 대한 깊은 수준의 지식을 가지고 있음을 알 수 있다. 이 악성코드 정보가 알려지면서 은행과 거래 시스템 제작 업체 간 책임 공방도 있었다. 스위프트 시스템의 안전성에 문제가 있다는 의견이 나오면서 스위프트는 자사의 네트워크가 해킹당한 게 아니라는 보도자료를 배포한다. 5월 13일에는 과거 사건과 연관된 악성코드와의 유사점이 나오면서 특정 국가의 소행이 아니냐는 의심도 제기되었다. 이는 2014년 소니 픽처스 공격에 사용된 악성코드와 유사한 악성코드가 발견되었기 때문이나, 이미 공개된 악성코드라 의도적으로 비슷하게 만들었을 가능성도 있다는 의견도 있다. 

 

사건의 파장은 점점 커지고 방글라데시 은행뿐만 아니라 다른 은행에서도 공격이 있었음이 알려진다. 2015년 12월 베트남 은행에서도 비슷한 공격 시도가 있었으며, 관련 악성코드도 공개된다. 베트남 은행 공격에 사용된 것으로 알려진 악성코드가 방글라데시 은행 해킹에 사용된 악성코드와 유사하다는 점에서 동일 그룹의 소행일 가능성이 높다. 게다가 에콰도르 은행도 2015년에 유사 사건이 있었음이 뒤늦게 밝혀졌고 필리핀 은행의 피해도 알려졌다. 따라서 은행을 노린 유사 공격이 더 존재할 수도 있다. 

 

필자는 이번 사건을 보며 몇 가지 생각이 떠올랐다.

 

첫째, 완벽한 보안은 역시 없다. 우리는 완벽한 보안은 존재하지 않는다고 알고 있지만 그래도 돈을 관리하는 은행이므로 다른 곳보다는 보안이 완벽할 거라고 믿고 있다. 하지만 개인의 인터넷 뱅킹 계좌 해킹이 아니라 다수의 은행 시스템이 해킹되었다는 점에서 다시 한 번 완벽한 보안은 세상에 존재하지 않는다는 깨달음을 얻을 수 있었다. 

 

둘째, 어떻게 감염되었을까? 이체 조작에 악성코드가 이용되었는데, 그렇다면 반드시 내부 시스템이 악성코드에 감염되어야만 한다. 따라서 어떻게 내부 시스템이 악성코드에 감염되었느냐는 매우 중요하다. 지금까지 예상하지 못했던 방법으로 은행 내부 시스템이 감염되었다면 다른 은행도 공격 당할 가능성이 있으니 그 방법에 맞는 새로운 대응 방안을 만들어야겠지만, 새로울 게 없는 방법으로 보안이 뚫렸다면 책임 소재에 대한 비판을 피할 수 없다. 하지만 현재까지 어떻게 은행 시스템에 침투했는지 알려진 바는 없다.

 

셋째, 공격자는 어디까지 침투해 있을까? 방글라데시 은행 해킹 사건을 보면 공격자는 내부 시스템과 이체 절차를 충분히 알고 있었다. 따라서 내부자의 도움이 있었거나 공격자가 스스로 알아냈을 수 있다. 만약 공격자가 내부자 도움 없이 은행 거래를 지켜보면서 이체 방식을 익혔다면 오랜 기간 은행 내부 시스템이 악성코드에 감염되었다고 볼 수 있다. 이것도 문제지만 은행간 거래와 같이 특수 목적에 사용되는 시스템도 공격자가 조금만 노력하면 충분히 보안 체계를 우회할 수 있다는 점에서 다른 특수 목적 시스템도 안전을 보장할 수 없다. 

 

넷째, 분석가들도 특수 목적에 사용되는 프로그램이나 절차에 대해 알아야 한다. 베트남 은행 해킹에 사용된 악성코드는 2015년 12월 보안 업체에 전달되었다. 하지만 5개월 동안 해당 악성코드는 정상 파일로 분류되어 있었다. 만약 방글라데시 중앙은행 해킹과 관련된 악성코드가 알려지지 않았다면 해당 악성코드는 지금도 정상 파일로 분류 되고 있을 가능성이 있다. 왜 이런 일이 발생할까? 일단 해당 악성코드는 일반적인 악성코드와는 다르게 동작한다. 특정 프로그램이 설치된 환경에서만 악성코드가 제대로 실행기 때문에 특정 프로그램이 설치되어 있지 않은 분석 시스템에서는 별다른 이상을 발견할 수 없다. 시스템이 아닌 사람이 분석할 때는 어떨까? 우선 분석가는 스위프트에 대해 모를 가능성이 높다. 특수 목적으로 사용되는 소프트웨어는 특정 직군의 사람에게는 친숙하겠지만 이외의 사람들은 존재조차 모를 수 있다. 스위프트에 대해 안다고 해도 이런 악성코드를 제대로 분석하려면 스위프트 프로그램이 있어야 하고 이체 과정에 대한 지식도 있어야 한다. 일반 보안 회사에서 이런 특수 목적 프로그램을 보유하고 있을 가능성은 낮다. 이제 몇몇 분석가들은 스위프트에 대해 알게 되겠지만 다른 특수 목적 사용 시스템을 노린 악성코드를 분석하면 또다시 정상 파일로 판단할 가능성도 여전히 존재한다. 따라서 앞으로 보안 업체는 다양한 산업 분야와 좀 더 긴밀하게 협력해야 하지 않을까 싶다. 

 

다섯째, 시스템 운영 회사의 신뢰도 하락이다. 우선 방글라데시 은행에서 사용하는 보안 프로그램이 궁금했다. 해당 보안 회사는 공격을 막지 못했다는 점 때문에 전전긍긍하고 있지 않을까 싶다. 보안 프로그램이 모든 공격을 예방할 수 없지만 일반인은 특정 보안 제품이 공격을 막지 못했다고만 기억하게 된다. 스위프트 측도 마찬가지인데, 악성코드에 일단 감염되면 사람이 컴퓨터로 할 수 있는 대부분의 일을 할 수 있고 기술적으로도 악성코드가 보안 체계를 우회하기 쉽다. 이번 해킹도 악성코드 감염이 은행 과실이라고 해도 서비스를 제공하는 스위프트가 해킹 당했거나 보안에 취약하다고 오해받을 수 있다. 실제로 사건 발생 후 금융권의 스위프트 이용 제한 소식도 들려온다.

 

이런 공격을 예방하기 위해서는 악성코드에 감염되지 않기 위해 노력하고 감염되더라도 빨리 이상을 파악해야 하지만, 내부 시스템을 모두 관리하는 건 불가능에 가깝다. 따라서 중요 시스템에 대해서만이라도 정기검진처럼 정기적으로 이상 유무를 검사하는 프로세스가 필요하다. 단, 점검하는 사람도 포렌식이나 악성코드 분석 경험이 충분하고 내부에서 사용하는 프로그램이나 절차에 대해서도 잘 알고 있어야 한다.  

 

이 글을 마감하는 5월 말까지 피해를 당한 은행은 4곳 이다. 하지만, 이 글이 공개될 때쯤 어떤 은행이 추가 피해를 입었을지는 아무도 알 수 없다. 영화처럼 천 억 원이 넘는 돈이 사라졌지만 범인은 오리무중인 시대에 우리는 살고 있다.

 

[참고 자료]

Bangladesh bank says hackers stole $100M from its New York Fed accont

8,100만달러 해킹∙∙∙물러난 방글라데시 중앙은행 총재

The Great Bank Robby: Carbanak cybergang steals $1bn from 100financial institutions worldwide

TWO BYIES TO $951M

방글라데시 경찰, “SWIFT가 은행 취약하게 해”

Statement on recent allegations

Cyber Heist Attribution

SWIFT Warns Banks: Coordinated Malware Attacks Underway

No impact on SWIFT network, core messaging services or software

Vietnam’s Tien Phong Bank says it was second bank hit by SWIFT cyberattack

제2의 방글라데시 중앙은행 공격 사건 일어났다

Now It’s Three: Ecuador Bank Hacked via Swift

 

 

차민석 프로필 사진

차민석 AhnLab 로고 악성코드 분석가

이 정보에 대한 저작권은 AhnLab에 있으며 무단 사용 및 도용을 금합니다.

단, 개인이 비상업적인 목적으로 일부 내용을 사용하는 것은 허용하고 있으나, 이 경우 반드시 출처가 AhnLab임을 밝혀야 합니다.
기업이 이 정보를 사용할 때에는 반드시 AhnLab 의 허가를 받아야 하며, 허가 없이 정보를 이용할 경우 저작권 침해로 간주되어 법적인 제재를 받을 수 있습니다. 자세한 내용은 컨텐츠 이용약관을 참고하시기 바랍니다.

정보 이용 문의 : contents@ahnlab.com



자동 로그인 정보 탈취, 추가 공격 위한 사전 작업인가?

  • AhnLab
  • 2017-08-01

최근 통계에 따르면 1인당 평균 3개의 소셜 미디어를 이용한다고 한다. 이메일 계정 또한 3개 이상을 사용하는 경우가 대부분이다. 이렇게 다수의 계정을 이용하지만 각 서비스의 계정 설정 규칙이나 이용자 규모 등에 따라 다수의 계정을 동일한 이름으로. 비밀번호 또한 마찬가지다. 그러나, 이처럼 다수의 계정과 비밀번호를 기억하는 것은 만만치 않은 일인데다 자주 이용하는 서비스라면 매번 로그인하기도 번거롭다. 이렇다 보니 많은 사용자들이 ‘자동 로그인’ 기능을 이용하고 있다. 문제는 자동 로그인 기능 이용 시 보안 위협이 높아질 수 있다는 점이다. 이 글에서는 자동 로그인 기능을 이용해 개인정보를 유출하는 악성코드에 대해 살펴본다. 

 

악성코드 제작자들은 금전적 이윤을 위해 다양한 방법을 이용한다. 최근에는 직접적인 수익을 올리기 위해 랜섬웨어를 유포하는 사례가 많아졌지만 전통적인(?) 이윤 추구 방식도 여전히 존재한다. 대표적인 것이 사용자의 로그인 정보를 탈취하는 악성코드다. 현재 웹 브라우저, 이메일 클라이언트를 대상으로 로그인 정보를 탈취하는 악성코드가 지속적으로 제작, 유포되고 있다. 

로그인 정보를 탈취하는 악성코드의 주요 감염 경로는 일반적인 악성코드와 마찬가지로 이메일이다.  대부분 스팸 메일을 통해 대량으로 유포되지만, 일부는 특정한 대상을 노린 표적 공격 형태를 보이기도 한다. 

 

로그인 정보 탈취 방식

그렇다면 공격자는 로그인 정보를 어떻게 탈취할까? 로그인 정보 탈취 방법은 크게 두 가지로, 사용자가 입력하는 키 값을 가로채거나 시스템 상에 저장된 로그인 정보를 탈취하는 방법이 있다. 

 

1. 키 입력 가로채기

유명 서비스로 위장한 프로그램으로 사용자를 현혹해 로그인 정보를 입력하게 하거나 키로거(key-logger)를 이용해 사용자의 계정 정보를 탈취할 수 있다. 하지만, 이 방법은 사용자가 직접 정보를 입력할 때만 탈취가 가능하다는 한계가 있다. 

 

 

[그림 1] 페이팔(PayPal)로 위장한 피싱 프로그램

 

2. 저장된 로그인 정보 탈취

사용자가 애플리케이션의 자동 로그인 기능을 사용하면, 사용자가 최초 입력했던 계정 정보는 어딘가에 저장된다. 대개 파일 또는 데이터베이스 형태로 암호화되어 저장된다. 그러나 일부 프로그램의 경우 암호화 방식이 아닌 인코딩으로 저장하거나 심지어 암호를 그대로 평문 형태로 저장하기도 한다. 따라서 공격자가 탈취하고자 하는 프로그램의 정보 저장 위치를 미리 알고 있다면 로그인 정보를 탈취할 수 있다. 

 

저장된 로그인 정보 탈취 공격 

로그인 정보를 탈취하는 악성코드 제작을 위해 공개된 정보를 이용하는 경우도 있지만 사용자가 잊어버린 암호를 알아내기 위해 이용하는 암호 복구 프로그램을 활용하는 경우도 있다. ‘암호 복구 프로그램’은 저장된 로그인 정보를 잊어버린 사용자들이 이용할 수 있는 프로그램이다. 문제는 암호 복구 프로그램의 원리가 알려지면서 공격자들이 로그인 정보를 유출하는 악성코드를 제작하는데 활용하기도 한다는 점이다. 

 

대표적인 암호 복구 프로그램으로는 윈도우 로그인 정보를 확인하는 프로그램인 Pwdump가 있다. Pwdump는 보안 계정 관리자(SAM)에서 로컬 사용자 계정의 암호 해시를 출력하는 프로그램이다. 공격자는 이렇게 확인한 해시 값을 이용해 로그인에 필요한 정보를 알아내어 공격 대상의 내부 시스템을 장악하는 계획을 세울 수 있다.

 

  

[그림 2] Pwdump 실행 화면

 

이 밖에도 브라우저 등의 로그인 암호를 보여주는 프로그램이 있는데, 이 또한 원래 잊어버린 암호를 찾기 위한 프로그램이다. 공격자는 이러한 프로그램을 이용해 사용자 정보를 알아내기도 한다.

 

  

[그림 3] 실제 해킹에 악용된 브라우저 암호 복구 프로그램

 

1. 주요 공격 대상 

프로그램마다 로그인 정보를 저장하는 위치와 방법이 다르다. 따라서 공격자는 자신이 탈취하고자 하는 프로그램을 분석해 로그인 정보 저장 위치를 알아낸 후 정보에 접근한다. 저장된 로그인 정보 탈취의 대상이 되는 프로그램은 주로 다음과 같다. 

 

 

[표 1] 주요 공격 대상

 

 

2. 공격 대상별 로그인 정보 저장 위치 

사용자가 저장하는 로그인 정보는 파일 혹은 레지스트리에 저장된다. 파일이나 레지스트리에 저장될 때는 암호화되어 저장하기도 하지만 평문이나 간단한 인코딩만으로 저장되는 경우도 존재한다. 다양한 프로그램의 로그인 정보 저장 위치는 다음 사이트에서 확인 할 수 있다.

http://securityxploded.com/passwordsecrets.php

 

■ 인터넷 익스플로러 

인터넷 익스플로러(Internet Explorer)는 로그인 정보를 레지스트리에 저장한다. 

HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\IntelliForms\Storage2 

 

  

[그림 4] 인터넷 익스플로러 자동 로그인 정보

 

■ 크롬

크롬(Chrome)은 ‘Login Data’ 파일에 로그인 정보를 저장한다.  

C:\Users\<user_name>\Appdata\Local\Google\Chrome\User Data\Default\Login Data

 

  

[그림 5] 크롬의 로그인 정보 저장 파일

 

■ 아웃룩

아웃룩(Outlook)은 다음과 같이 레지스트리에 로그인 정보를 암호화하여 저장한다. 

HKEY_CURRENT_USER\Software\Microsoft\Office\(버전)\Outlook\Profiles\Outlook

 

  

[그림 6] 아웃룩 2016의 로그인 정보 저장 레지스트리

 

■ 파일질라

대표적인 파일 전송 프로토콜(File Transfer Protocol, FTP) 프로그램인 파일질라(Filezilla)는 로그인 정보를 sitemanager.xml 등에 텍스트 파일로 저장한다. 과거에는 평문 그대로 저장했지만 현재는 베이스64(Base64)로 인코딩된다. 그러나, 베이스64 디코더를 통해 쉽게 암호를 확인할 수 있다.

 

  

[그림 7] 파일질라의 로그인 암호 저장

 

암호에 사용된 값을 베이스64로 디코딩하면 [그림 8]의 예시와 같이 ‘password’라는 암호를 확인할 수 있다.

 

  

[그림 8] 베이스64 변환 결과

 

2. 주요 로그인 정보 탈취 악성코드 

시스템에 저장된 로그인 정보를 유출하는 악성코드는 다양하다. 대표적인 로그인 정보 탈취 악성코드는 다음과 같다.

 

■ Decoloader (Tkhawk.exe)

RAR SFX(Self-Extractor) 파일이며, 파일 내에 실행 파일과 암호화되어 있는 데이터 파일이 존재한다.

 

  

[그림 9] 압축 파일 내 파일

 

[그림 9]에서 확인할 수 있는 Esvxamvena.bin과 Fbulmigrmkwhr.bin은 암호화되어 있는 데이터 파일이다.

 

  

[그림 10] 암호화된 데이터 파일

 

Osslpjuy.exe는 닷넷으로 제작된 파일로, 실행되면 닷넷 관련 파일인 RegAsm.exe가 실행되고 종료된다.

 

  

[그림 11] Osslpjuy.exe 실행 후 프로세스

 

RegAsm.exe의 메모리를 확인해보면, 코드가 프라이빗(Private) 속성으로 실행된다는 것을 알 수 있다.

 

  

[그림 12] RegAsm.exe 내 메모리

 

[그림 11]의 0x1f0000 주소의 내용을 살펴보면 ‘C:\Users\Jovan\Documents\Visual Studio 2010\Projects\Stealer\CMemoryExecute\CemoryExecute\obj\Release\CMemoryExecute.pdb’와 같은 의심스러운 문자열을 확인할 수 있다.

 

  

[그림 13] 악성코드의 특징적인 PDB 정보

 

메모리에는 다른 실행 파일도 존재하는데, 이들은 웹 브라우저의 로그인 정보를 확인할 수 있는 WebBrowserPassView와 메일 로그인 정보를 알 수 있는 Mail PassView이다. 

 

 

[그림 14] 메모리에서 확인된 암호 복구 프로그램

 

이 악성코드는 기존의 암호 복구 프로그램을 사용자 몰래 실행하여 로그인 정보를 획득한 후 유출한다.

 

■ Trojan/Win32.Loginstealer (fontwow64.exe)

Trojan/Win32.Loginstealer로 진단되는 fontwow64.exe 파일은 2017년 3월 발견된 로그인 정보 탈취 악성코드로, 관련 변종이 2015년 10월에도 발견된 바 있다. 이들 두 샘플 모두 아직까지 바이러스 토탈(Virus Total) 등 악성코드 검사 서비스에 업로드되어 있지 않다. 이로 미루어 볼 때 대량 메일을 통한 유포 보다는 표적 공격에 이용되었을 가능성이 점쳐진다. 

 

해당 악성코드가 실행되면 암호화된 Username과 Password의 암호를 풀어 로그인 정보를 탈취하는 함수를 실행한다. 주요 문자열은 암호화되어 저장되어 있다.

 

  

[그림 15] Trojan/Win32.Loginstealer 코드 시작 부분

 

저장된 로그인 정보를 탈취하는 함수가 실행되면 drf2EPOREVHN.jpg, drf2EPOREXKK.jpg 등과 같은 임의의 이름과 JPG 확장자를 가진 파일을 생성한다. 이후 다양한 웹 브라우저, 메신저, 메일 클라이언트 등의 로그인 정보를 수집해 저장한다.

 

  

[그림 16] 로그인 정보 수집

 

유출된 로그인 정보, APT 공격에 사용될 수 있어

공격자는 탈취한 로그인 정보를 이용해 사용자의 이메일이나 커뮤니티 활동 내역을 몰래 훔쳐볼 수 있다. 얼마 전 이메일 계정 정보를 해킹해 사용자들이 메일 박스에 보관해둔 개인 정보 내역을 추가로 탈취한 사례가 알려지기도 했다. 또한 탈취한 로그인 정보를 2차, 3차 공격에 이용할 수 있기 때문에 공격자들은 더 많은 공격을 위해 지속적으로 사용자의 로그인 정보 탈취를 시도하고 있다. 

 

기업 내에서 이러한 악성코드가 지속적으로 발견된다면 타깃 공격, 지능형 공격(APT)의 내부 침입을 위한 사전 작업일 가능성도 있어 각별한 주의가 요구된다. 실제로 미국 정당 관련 단체에 대한 공격에도 로그인 정보 유출 악성코드가 사용된 것으로 알려져 있다.

 

로그인 정보 탈취 악성코드에 감염되어 있을 경우에는 주기적인 암호 변경도 무용지물이다. 따라서 이러한 악성코드에 의한 피해를 줄이기 위해서는 자동 로그인 기능을 가급적 사용하지 않는 것이 바람직하다. 그나마 다행인 것은 저장된 로그인 정보를 유출하는 방식은 정해져 있다는 점이다. 만일 어떤 프로그램에서 로그인 정보가 저장된 위치에 접근하는 행위를 한다면 로그인 정보 유출 악성코드로 판단할 수 있다.​ 

  • AhnLab 로고
  • ASEC분석팀 차민석 수석연구원

이 정보에 대한 저작권은 AhnLab에 있으며 무단 사용 및 도용을 금합니다.

단, 개인이 비상업적인 목적으로 일부 내용을 사용하는 것은 허용하고 있으나, 이 경우 반드시 출처가 AhnLab임을 밝혀야 합니다.
기업이 이 정보를 사용할 때에는 반드시 AhnLab 의 허가를 받아야 하며, 허가 없이 정보를 이용할 경우 저작권 침해로 간주되어 법적인 제재를 받을 수 있습니다. 자세한 내용은 컨텐츠 이용약관을 참고하시기 바랍니다.

정보 이용 문의 : contents@ahnlab.com



교묘하게 구글 단축 URL을 이용한 악성코드 유포

  • AhnLab
  • 2017-08-16

단축 URL을 이용해 유포된 악성코드가 또다시 기승을 부리고 있다. 특히 교묘하게 위장한 메일 본문에 많은 사용자에게 익숙한 구글의 단축 URL을 포함하고 있어 사용자들의 각별한 주의가 요구된다. 

 

소셜 미디어(Social Media 또는 SNS)와 모바일 이용이 증가하면서 단축 URL 사용이 일상화되었다. 최근에는 업무 메일 등에도 긴 URL 대신 짧은 URL을 첨부하는 경우가 늘고 있다. 문제는 전체 주소가 아닌 주소의 일부를 간추린 형태이다 보니 가짜 단축 URL 일 경우 이를 알아차리기 어렵다는 것이다. 때문에 단축 URL을 이용한 악성코드 유포 시도가 계속되고 있다.

이번에 발견된 단축 URL 악성코드는 [그림 1]과 같이 미국 거래개선협회(BBB, Better Business Bureau)를 사칭한 가짜 메일로 유포되었다. 항의성 메일로 위장한 메일의 본문에는 24시간 이내에 답변을 해야 하며, 자세한 사항을 확인하려면 본문에 포함된 단축 URL을 클릭하라고 쓰여있다. 특히 메일 본문에 수신자의 이름과 회사명까지 언급하는 등 교묘하게 수신자의 의심을 피하고 있다. 

 
[그림 1] 스팸 메일 본문 

수신자가 메일 본문의 구글 단축 URL을 클릭하면 [그림 2]와 같이 익숙한 구글(google)의 URL로 재연결(리다이렉트)되고 .js파일이 다운로드된다.

 
[그림 2] 단축 URL 클릭 시 연결되는 URL 및 다운로드 되는 js파일

다운로드된 .js파일을 실행하면 [그림 3]과 같이 미국 거래개선협회에서 보낸 것처럼 보이는 문서가 나타나 메일 수신자를 안심시키는 역할을 한다. 

 
[그림 3] 생성된 doc 파일(미끼 파일)

수신자가 문서 파일에 관심을 갖는 동안 이 js 파일이 실행되어 텍스트(txt) 파일로 위장한 DLL 파일을 생성한다. 이렇게 생성된 DLL 파일은 스크립트(script) 파일을 생성한 후 자가 삭제된다. 생성된 스크립트 파일이 특정 IP 주소로 접근을 시도한다. 

공격자들이 이메일의 첨부 파일을 이용해 악성코드를 배포하는 방식이 잘 알려져 있어 사용자들이 주의하고 있는 반면, 단축 URL에 대해서는 여전히 사용자들이 방심하는 경우가 많다. 특히 이번 사례처럼 메일 본문에 자신의 이름과 회사명이 언급되어 있다면 더욱 의심 없이 URL을 클릭하기 쉽다.

또한 이번 사례는 스팸 메일을 이용하는 동시에 유명 기업 사칭(Scam)하여 특정 기업과 관련 있는 것처럼 치밀하게 내용을 위장하는 등 지능형 위협(APT, Advanced Persistent Threat)의 형태를 띠고 있다. 특히 구글 단축 URL과 사용자의 의심을 피하기 위한 정상 파일 생성 등 다양한 공격 기법이 사용되었다. 

최근 나날이 교묘하게 진화하고 있는 악성코드 공격에 피해를 입지 않기 위해서는 메일에 포함된 URL을 함부로 클릭하지 않는 등 사용자들의 각별한 주의가 필요하다. 

한편, V3 제품에서는 해당 악성코드를 다음과 같은 진단명으로 탐지하고 있다.
<V3 제품군 진단명> 
- JS/Obfus
- JS/Agent
- Trojan/Win32.Agent
- EML/Malspam
  • AhnLab 로고
  • ASEC대응팀

이 정보에 대한 저작권은 AhnLab에 있으며 무단 사용 및 도용을 금합니다.

단, 개인이 비상업적인 목적으로 일부 내용을 사용하는 것은 허용하고 있으나, 이 경우 반드시 출처가 AhnLab임을 밝혀야 합니다.
기업이 이 정보를 사용할 때에는 반드시 AhnLab 의 허가를 받아야 하며, 허가 없이 정보를 이용할 경우 저작권 침해로 간주되어 법적인 제재를 받을 수 있습니다. 자세한 내용은 컨텐츠 이용약관을 참고하시기 바랍니다.

정보 이용 문의 : contents@ahnlab.com



바이러스, 악성코드, 그리고 좀비PC

  • AhnLab
  • 2011-09-15

최근 발생한 대규모 고객 정보 유출 사건의 주범으로 지목되면서 좀비PC에 대한 관심이 증폭되고 있다. 각종 포털 사이트에서 ‘좀비PC’가 검색어 상위에 오르기도 했다. 좀비PC의 개념은 사실 기존 악성코드와 특별히 다르지 않은데, 왜 이런 비슷한 용어가 계속 생겨나는 걸까?

 

컴퓨터 바이러스(이하 바이러스)가 일반에게 처음 알려진 건 1988년 이후다. 당시, ‘바이러스’라는 용어 자체가 낯설어 많은 사람들이 생물학적 바이러스와 혼동하거나 감염된 디스크를 사용하지 못하는 것으로 오해하기도 했다. 초등학생이었던 필자도 바이러스에 감염된 디스크는 사용할 수 없는 줄 알고 친구에게 준 기억이 있다. 당시 5.25인치 디스켓 가격이 장당 1,500~2,000원이었는데, 초등학생 버스비가 60원이었던 걸 감안한다면 저렴하지 않은 가격이었다. ‘바이러스’가 컴퓨터에 발생하는 자기 복제 능력이 있는 프로그램에 불과하다는 사실을 알기까지는 몇 년의 시간이 걸렸다.

 

바이러스 관련 용어의 혼란은 2000년 웜(worm)이 등장하면서 시작됐다. 바이러스와 달리, 다른 파일은 감염시키지 않고 메일이나 공유 폴더 등으로 전파되는 웜을 ‘웜 바이러스’라고 불렀다. 웜은 일반적으로 알려져 있지 않았고, 바이러스와는 다소 성격이 달라 붙여진 이름이다. 일반 사용자의 이해를 위해 몇몇 업체에서는 바이러스와 웜을 구분하지 않고, 스스로 전파되는 기능을 가지는 것을 바이러스로 통칭하거나 악성코드 전체를 바이러스라고 분류하기도 했다.

 

더 큰 혼란이 발생한 건 2004년 악성코드가 널리 알려지기 시작하면서부터다. 원래 악성코드는 1990년에 처음 만들어졌고, 2000년 초부터 바이러스, 웜, 트로이목마를 통칭하는 이름으로 조금씩 사용되기 시작했다. 하지만, 국내에서는 2003년부터 유행하기 시작한 애드웨어를 일부 업체가 악성코드라고 부르면서 널리 알려졌고, 백신 업체들도 ‘바이러스’보다 ‘악성코드’라는 표현을 더 많이 사용했다. 이 때문에 ‘바이러스’와 ‘악성코드’가 다른 개념이라고 생각하는 사용자들도 있었다. 현재는 언론과 일반 사용자들 모두 ‘바이러스’보다는 ‘악성코드’라는 용어를 더 많이 사용하고 있는데 ‘코드’라는 컴퓨터 친화적 표현이 생물학적 바이러스와의 혼동을 줄여준 것 같다.

 

최근 널리 사용되기 시작한 ‘좀비PC’ 역시 기술적으로 보면 악성코드 그 이상도 그 이하도 아니다. 원래 좀비(zombie)는 서아프리카 민간신앙인 부두교 성직자가 특정한 의식으로 부활시키는 시체들로, 이를 조정해 노예로 삼을 수 있다. 그러나 영화 속 좀비들은 본래 좀비와는 다르게 조종도 받지 않고 살아있는 사람의 생살을 뜯어 먹고 먹힌 사람이 좀비가 되기도 한다. 이는 1968년 조지 A. 로메로 감독의 <살아있는 시체들의 밤(Night of the living dead)>에 등장하는 좀비인데, 전통적인 좀비들을 밀어내고 좀비 영화의 주류가 되었다. 좀비PC의 ‘좀비’는 영화 속 좀비보다는 부두교의 좀비 개념과 더 가깝다고 할 수 있다.

 

좀비PC의 개념은 새로운 것이 아니다. 개인 컴퓨터가 인터넷으로 연결된 외부로부터 원격 제어를 당하는 방식은 이미 1998년에 등장했고, 감염된 다수의 시스템을 조정해 공격하는 방식도 2003년부터 유행하기 시작했다. 세부적인 의미는 조금씩 다르지만, 넓은 의미에서 보면 결국 ‘바이러스 = 악성코드 = 좀비PC’라고 할 수 있다.

 

 

▶하일권 작가의 좀비PC방지 캠페인 웹툰 '내 PC를 구해줘!' 중에서

 

이렇듯 새롭지 않은 ‘좀비 PC’가 왜 갑자기 각광받는 것일까? ‘악성코드’는 너무 광범위한 표현이고, 악성코드에 어느 정도 면역되어 있는 사용자들의 관심을 끌기 위해서 ‘좀비 PC’라는 새롭고 자극적인 표현이 필요했던 건 아닐까?

 

이 외에도 보안 위협과 관련한 신조어는 끊임없이 생겨나고 있다. 지티봇(Gtbot), 피망, 크라임웨어(crimeware), 스피어피싱 등. 하지만 지능적 지속 위협(APT) 외에는 아직까지 일반적으로 뿌리내리지는 못한 듯하다.

 

시대에 따라 조금씩 다른 용어가 사용되는 건, 악성코드의 유형이 바뀌기도 하지만 기존 용어로는 위협을 느끼지 않는 사용자들의 보안 불감증에서 기인하는 건 아닐까. 용어 표현이 점차 자극적이고 강력해지는 것은 그 때문이 아닐까 싶다. 앞으로는 또 어떤 악성코드가 나오고 유행해서 또 어떤 신조어가 등장할지 궁금하다.@

 

 

차민석 프로필 사진

차민석 AhnLab 로고 악성코드 분석가

이 정보에 대한 저작권은 AhnLab에 있으며 무단 사용 및 도용을 금합니다.

단, 개인이 비상업적인 목적으로 일부 내용을 사용하는 것은 허용하고 있으나, 이 경우 반드시 출처가 AhnLab임을 밝혀야 합니다.
기업이 이 정보를 사용할 때에는 반드시 AhnLab 의 허가를 받아야 하며, 허가 없이 정보를 이용할 경우 저작권 침해로 간주되어 법적인 제재를 받을 수 있습니다. 자세한 내용은 컨텐츠 이용약관을 참고하시기 바랍니다.

정보 이용 문의 : contents@ahnlab.com




PUP, 불편하고 때론 위험한 존재에 대하여

  • AhnLab
  • 2017-08-02

조금이라도 보안에 관심이 있는 사람이라면 ‘PUP를 주의해야 한다’는 내용을 한 번쯤은 본 적이 있을 것이다. 또 좀 더 보안에 관심 있거나 IT 관련 지식이 있는 사람이라면 PUP가 곧 악성코드는 아니라는 것을 알고 있을 것이다. 그러나 PUP와 관련된 보안 침해 사례는 지속적으로 나타나고 있다. 이쯤 되면 ‘악성코드는 아닌데 왜 PUP를 조심하라고 하지?’라는 의문이 생길 것이다. PUP가 무엇인지, 왜 PUP를 주의해야 하는지, PUP와 관련된 보안 침해 사례라는 것이 무엇인지 알아보자. 


PUP가 대체 뭐길래?

PUP는 Potentially Unwanted Program의 약자로, 글자 그대로 해석하자면 ‘(사용자가) 잠재적으로 원하지 않는 프로그램’이다. 대개 ‘불필요한 프로그램’으로 불린다. 대부분 미디어 플레이어, PC 최적화 프로그램, PC 클리너, 개인정보보호 프로그램 등 무료 유틸리티 프로그램의 ‘제휴 프로그램, ‘스폰서 프로그램’ 등의 명목으로 함께 설치된다. 

 

  

[그림 1] 유틸리티 설치 시 함께 설치되는 프로그램들

 

안랩을 비롯한 대부분의 보안 업체들은 이렇게 설치되는 프로그램들 중 설치 여부를 사용자가 알 수 있도록 적절한 설명을 제시하지 않거나 설치 항목 목록 화면을 최소화하는 경우, 또 설치되는 프로그램의 정확한 이름이나 목록 전체 내용을 볼 수 없도록 사용자를 기만하는 프로그램 등을 PUP로 구분하고 있다. 

 

  

[그림 2] 사용자에게 적절한 설명 제공 없이 동의한 것처럼 유도하여 설치되는 PUP

 

사용자를 기만하여 설치된 PUP는 웹 서핑 시 지속적으로 배너 광고를 노출하거나 각종 툴바를 설치한다. 또 쇼핑 사이트 등 다양한 사이트를 ‘즐겨찾기’ 목록에 등록하거나 웹 브라우저의 홈화면을 사용자가 설정한 것이 아닌 다른 페이지로 변경해놓는 식이다. 최근에는 제휴 프로그램, 스폰서 프로그램의 설치 동의가 기본으로(default) 설정되어 있는 경우도 있어 사용자가 주의 깊게 살펴야 한다.

 

PUP, 왜 문제일까? – 단순 불편 넘어 악성코드 감염까지 

그렇다면, PUP가 문제가 되는 이유는 무엇일까? 사용자의 인지 여부와 상관없이 또는 사용자를 기만하여 설치된다는 점 외에도 ▲지속적인 광고 노출 ▲과도한 리소스 사용을 통한 PC 속도 저하 ▲허위 내용으로 사용자를 속이거나 결제 유도 등 불편을 초래하는 것을 넘어 실질적인 피해를 유발하기도 한다. 평소보다 PC가 느려졌다거나 웹 브라우저의 홈화면이 변경되어 있거나 설치한 기억이 없는 툴바들이 나타날 경우, 또는 웹 사이트를 이동할 때 마다 광고가 나타난다면 PUP를 의심해볼 필요가 있다. 

 

특히 최근에는 PUP가 악성코드 유포 경로로 악용되면서 더 큰 문제가 되고 있다. 대부분의 무료 유틸리티 프로그램은 프로그램의 제작 및 유지 보수를 위해 별도의 수입원을 필요로 하기 때문에 제휴 프로그램, 스폰서 프로그램을 함께 설치한다. 문제는 제휴 또는 스폰서 프로그램의 제작사가 영세한 경우가 많아 서버가 제대로 관리되지 않는 경우가 많다는 것이다. 즉, 공격자들이 보안에 취약한 PUP 서버를 해킹하여 악성코드를 유포하는 경우가 늘고 있다는 점이다. 심지어 해킹되어 악성코드 유포에 이용됐던 PUP가 또다시 이용되는 사례도 있었다. PUP 서버 관리의 부실함을 확인할 수 있는 대목이다. 

 

또 PUP 자체가 취약하지 않더라도 이 프로그램에 의해 노출되는 광고 배너가 연결되는 페이지가 보안에 취약한 경우도 많다. 사용자가 실수로라도 배너를 클릭하여, 또는 기타 다른 경로를 통해 취약한 광고 페이지에 접속하게 되면 공격자가 해당 웹 페이지의 보안 취약점을 이용해(exploit) 심어둔 악성코드에 감염된다. 사용자가 파일을 다운로드하거나 실행한 적이 없음에도 불구하고, 단지 웹 페이지를 방문한 것만으로도 악성코드에 감염되는 것이다. 이를 ‘드라이브 바이 다운로드(Drive-by-download)’ 방식이라고 한다. 또 이처럼 광고 페이지나 광고 서버를 이용해 악성코드를 유포하는 공격 기법을 멀버타이징(Malvertising)이라고 부른다. 멀버타이징은 악성코드(Malware)와 광고(Advertising)의 합성어이다.  

 

PUP, 어떻게 해야 피할 수 있을까? 

PUP로 인한 불편함이나 악성코드 감염 등의 피해를 입지 않기 위해서는 PUP가 설치하지 않는 것이 첫 번째다. 유틸리티 프로그램 설치 시 무조건 “계속(Next)”을 누르는 대신, 설치 정보에 나타나는 내용을 꼼꼼히 살피는 습관이 필요하다. 최근에는 제휴 프로그램, 스폰서 프로그램의 설치가 기본(default)로 표시되어 있는 경우가 많기 때문에 관련 폴더의 '+' 마크를 클릭해 상세 내용까지 확인하는 것이 바람직하다. 또 설치 단계 초반에서 제휴 프로그램 설치를 해제했다 하더라도 후반부에서 다시 설치 동의에 표시되어 있는 경우도 있으니 끝까지 세심한 주의가 필요하다. 

 

그렇다면 이미 설치되어 있는 PUP는 어떻게 해결할 수 있을까? 대부분의 PUP는 [제어판 > 프로그램 제거]에서 해당 프로그램의 ‘제거 프로그램(Uninstaller)’을 이용해 삭제할 수 있다. 주기적으로 [프로그램 추가/제거]에서 사용하지 않는 프로그램을 확인하고 제거하는 것도 좋은 방법이다. 문제는 최근 제거 프로그램을 실행해도 제거되지 않는 PUP가 등장하고 있다는 점이다. 

 

내 PC에 설치되어 있는 PUP, 어떻게 확인할 수 있을까? 

제거 프로그램(Uninstaller)를 실행해도 제거되지 않는 PUP는 어떻게 해결할 수 있을까? 또 막상 제어판에서 설치된 프로그램 목록을 확인했지만 어떤 것이 PUP인지 알 수 없는 경우는 어떻게 해야 할까? 이럴 때 V3의 쉽고 간편한 기능을 이용해보자. 

 

안랩은 프로그램 제작사 또는 배포지가 불분명한 경우, 허위 사실이나 과장된 결과를 노출해 수익을 얻는 경우, 그리고 상당수의 사용자가 불편을 호소하는 등 평판 정보를 토대로 특정 프로그램들을 PUP로 분류하고 있다. 그리고 대부분의 V3 제품을 통해 PUP로 분류된 프로그램을 사용자 선택에 따라 삭제 또는 허용하는 기능을 제공하고 있다. 

 

V3 365 클리닉 등 V3 제품을 이용해 PC에 설치된 PUP를 확인하고 삭제하려면, ‘환경 설정’을 통해 PUP를 검사 항목으로 설정하면 된다. 

 

► [환경설정(톱니바퀴아이콘)] > [PC 보안] > [PC 검사 설정] > [검사 대상 및 성능 레벨] > [검사 대상 설정] > ‘불필요한 프로그램(PUP)’ 선택(v)

 

  

[그림 3] V3 365 클리닉의 검사 대상 설정 화면

 

‘불필요한 프로그램(PUP)’을 검사 대상으로 설정한 후 ‘정밀 검사’ 등을 실행하면 PC에 설치되어 있는 PUP를 확인할 수 있으며, 이후 PUP가 설치될 때 PC 오른쪽 하단에 “불필요한 프로그램(PUP) 차단” 이라는 알림창이 나타난다. 이 알림창에는 해당 프로그램의 이름, 경로, 상태 등이 함께 표시된다. 

 

V3 Lite 사용자라면 아래와 같이 ‘평판이 낮은 프로그램’을 검사 대상으로 설정할 수 있다. 앞서 언급한 것처럼 안랩의 PUP 분류 기준에는 사용자 평가도 반영되어 있기 때문에 PUP 확인 및 설치 방지에 도움이 될 수 있다. 

 

► [환경설정(톱니바퀴아이콘)] > [PC 보안] > [PC 검사 설정] > [검사 대상 및 성능 레벨] > [검사 대상 설정] > ‘평판이 낮은 프로그램’ 선택(v)

 

  

[그림 4] V3 Lite의 검사 대상 설정 화면

 

PUP는 그 자체가 악성코드는 아니지만 사용자 입장에서는 악성코드보다 더 불편한 존재일 수 있다. 게다가 최근 PUP를 이용한 악성코드 유포 및 감염 사례가 지속적으로 나타나고 있어 악성코드만큼 위험하다고 할 수 있다. PC에 원치 않는, 혹은 위험할 수 있는 PUP를 잔뜩 설치하고 싶지 않다면 아래와 같은 몇 가지 수칙은 꼭 기억해두자. 

 

[PUP 설치 예방을 위한 보안 수칙]

1. 출처가 확인되지 않은 프로그램은 다운로드 및 설치하지 않는다.

2. 프로그램 설치 시 출력되는 메시지를 꼼꼼히 살핀다. 설치 동의에 기본으로 체크되어 있는 프로그램을 확인하고 체크 해제 후 설치를 진행한다.

3. 주기적으로 [프로그램 추가/제거]에서 사용하지 않는 프로그램을 확인하고 제거한다.

4. V3 제품을 이용해 불필요한 프로그램(PUP) 또는 ‘평판이 낮은 프로그램’을 검사 대상으로 설정(v)하고, 최신 PUP 정보를 적용하기 위해 V3의 엔진을 항상 최신 버전으로 유지한다. 

  • AhnLab 로고
  • 콘텐츠기획팀

이 정보에 대한 저작권은 AhnLab에 있으며 무단 사용 및 도용을 금합니다.

단, 개인이 비상업적인 목적으로 일부 내용을 사용하는 것은 허용하고 있으나, 이 경우 반드시 출처가 AhnLab임을 밝혀야 합니다.
기업이 이 정보를 사용할 때에는 반드시 AhnLab 의 허가를 받아야 하며, 허가 없이 정보를 이용할 경우 저작권 침해로 간주되어 법적인 제재를 받을 수 있습니다. 자세한 내용은 컨텐츠 이용약관을 참고하시기 바랍니다.

정보 이용 문의 : contents@ahnlab.com

+ Recent posts