시스템 보안 - 트로이 목마, 매크로 바이러스, 웜, 악성 스크립트
본문 바로가기

시스템 보안 - 트로이 목마, 매크로 바이러스, 웜, 악성 스크립트

액트 2019. 8. 27.

시스템 보안 - 트로이 목마, 매크로 바이러스, 웜, 악성 스크립트


다음 지문은 무엇을 설명한 것인가? 
[보기] 
일반 프로그램에 악의적인 루틴을 추가하여 그 프로그램을 사용할 때 본래의 기능 이외에 악의적인 기능까지 은밀히 수 행하도록 하는 공격을 말한다. 예를 들어 사용자 암호를 도출 하기 위해서 합법적인 로그인(login) 프로그램으로 가장하고 정상적인 로그인 순서와 대화를 모방하여 작성될 수 있다.
① 트로이목마(Netbus)
② 매크로 바이러스(Macro virus) 
③ 웜(I-Worm/Hybris)
④ 악성 스크립트(mIRC)


트로이목마, Trojan Horse

정보의 탈취와 정보의 삭제 등 사이버공격을 목적으로 컴퓨터 사용자의 중요정보를 빼가는 악성 프로그램이다. 

해킹 기능을 가지고 있어 인터넷을 통해 감염된 컴퓨터의 정보를 외부로 유출하는 것이 특징이다. 그러나 바이러스처럼 다른 파일을 전염시키지 않으므로 해당 파일만 삭제하면 치료가 가능하다. 트로이 목마는 인터넷에서 다운로드 파일을 통해 전파되는데, 사용자가 입력한 자판 정보를 외부에 알려주기 때문에 신용카드번호나 비밀번호 등이 유출될 수 있다.

 

 

 

매크로 바이러스, Macro Virus, MV

표 계산 소프트웨어인 엑셀(Excel)이나 문서 처리 소프트웨어인 워드(word) 등의 매크로 기능을 악용한 바이러스. 

감염력의 강도도 큰 위협이지만 배경에는 더욱더 근본적이고 중대한 문제가 있다. 지금까지의 바이러스는 기계어 수준의 지식을 요구하기 때문에 일반 이용자가 작성하기 어렵지만, 매크로 바이러스는 누구라도 관심만 가지면 만들 수 있다. 비주얼 베이식등의 프로그래밍 언어를 이용하여 비교적 간단히 개조나 변조할 수 있다. 인터넷의 이면(裏面) 사회에서는 ‘매크로 바이러스 개발 툴’까지 나돌게 되어 이것을 사용하면 그래픽 사용자 인터페이스(GUI)상에서 대화식의 바이러스가 만들어진다. 실제로 새로운 매크로 바이러스가 발견되는 경로는 빨라지고 있으므로 특별한 대책을 강구해야 한다. 매크로 바이러스의 한 종류로 강력한 파괴 능력을 가진 ‘wazz’는 주로 문서 처리 소프트웨어인 word의 문서 파일에 감염되어 신규로 작성되는 모든 문서 파일에 감염을 반복한다. 문서 내의 단어가 서로 엇갈린다든지 ‘wazzu’라는 단어가 제멋대로 삽입되는 등의 피해를 주게 된다. 지금까지의 매크로 바이러스에 비해 감염력이 강해서 수작업으로는 구제하기 어렵다. 더구나 감염되어도 증상이 전혀 나타나지 않는 경우도 있으나 국산 백신 프로그램인 V3로 치료할 수 있다.

 

 

 

웜, Worm

다른 파일에 기생하지 않고 독립적으로 자신을 복제하여 확산함으로써 전파 속도가 매우 빠른 특징을 가지는 악성코드 유형. 주로 메일이나 네트워크 공유폴더 등을 통해 전파되어 시스템과 네트워크에 부하를 높이는 증상을 보임.

 

 

 

악성 스크립트(mIRC)

악성코드(Malware) 개발자가 자신들의 최종적인 악성코드인 Payload를 희생자 디바이스에 설치하기 위하여 사용하고 있는 Script 로는 JavaScript, VBScript, PHP, PowerShell 이 있습니다. Payload를 다운로드 받고 실행시키도록 작성된 Script 악성 스크립트라고 부릅니다.

 

※ Payload: 유저 정보를 나타내는 데이터 스트림의 부분
 
맥아피 랩에서 발견하여 정리한, 악성코드명 과 사용된 Script는 아래와 같습니다.
Locky : JavaScript
Nemucod : PHP and JavaScript
Bartailex : VBScript
Dridex : PowerShell
 
 
공격자가 Script를 사용하는 이유
Scripting Language를 사용하면, 파일 기반 악성코드로 할 수 있는 기능을, 동일하게 구현할 수 있으며,  안티바이러스 SW에 의한 탐지 기능을 피해 나갈 수 있습니다. 탐지 기능을 피하기 위한 방법으로 obfuscation method라 불리는 기법을 사용합니다. obfuscation method란 간단히 설명하면, 파악하기 어렵게 중간 중간에 Garbage Code을 삽입해 넣는 것입니다. JavaScript인 경우는 Obfuscating 해 주는 free SW도 인터넷에 공개되어 있습니다. 
 
대표적인 2가지 Script JavaScript  PowerShell 에 대하여, 좀 더 자세히 설명하고자 합니다.
 
JavaScript
Downloader 기능을 하는 악성 JavaScript” 가 실행되어지는 일반적인 프로세스는, 스팸 이메일에 첨부된 압축파일(zip 또는 rar)을 열어, “JavaScript 파일을 더블 클릭하면, Windows Scripting 엔진인 JScript 에 의해 실행되어 집니다. 
 
일반적으로, 해커의 원격 호스트에 접속하여, 추가적인 악성코드(실행 파일)를 다운받아 %TEMP% folder 에 저장합니다. 이때, 파일을 다운로드 받기 위하여, HTTP GET request를 만들어야 하는 데, 이를 위해 wscript.shell, msxml2.xmlhttp, adodb.stream 와 같은 ActiveX controls 을 사용합니다
 
사용자는 이러한 기능이 백그라운드에서 수행되는 것을 인지하지 못합니다. 
 
 
PowerShell
PowerShell, 실행 파일을 다운로드 받은 후, 저장장치에 Save시키는 과정을 하지 않고, 바로 Memory load시켜 실행시킬 수 있는 기능을 제공합니다. 따라서 기존 방식으로는 탐지하기가 어렵다고 합니다.
 
일반적으로 PowerShell 악성코드는 스팸 이메일 통해 사용자 디바이스에 도착하며, 다른 payload를 다운로드 받는 명령어를 가지고 있습니다.
 
악성 JavaScript” fileless하게 실행시키는 방법으로 PowerShell을 사용하기도 합니다.
 

 

 

 

댓글