ASEC REPORT VOL.90 2018 년 1 분기 ASEC(AhnLab Security Emergency response Center, 안랩시큐리티대응센터 ) 은악성코드및보안위협으로부터고객을안전하게지키기위하여보안전문가로구성된글로벌보안조직입니다. 이리포트는주식회사안랩의 ASEC에서작성하며, 주요보안위협과이슈에대응하는최신보안기술에대한요약정보를담고있습니다. 더많은정보는안랩닷컴 (www. ahnlab.com) 에서확인하실수있습니다. 2018 년 1 분기보안동향 Table of Contents 보안이슈 SECURITY ISSUE 주요랜섬웨어의변화, 특정국가사용자만노린다? 04 악성코드상세분석 ANALYSIS-IN-DEPTH 국내고객타깃, 플래시플레이어취약점이용한 공격분석 13 ASEC REPORT Vol.90 Security Trend 2
보안이슈 SECURITY ISSUE 주요랜섬웨어의변화, 특정국가사용자만노린다?
보안이슈 주요랜섬웨어의변화, 특정 Security Issue 국가사용자만노린다? 보안전문가가아니더라도전세계적으로누구나알고있을만큼가장이슈가되고있는악성코드는여전히랜섬웨어이다. 사용자들이중요한정보를디지털문서형태로저장하고, 비트코인에대한관심이커짐에따라랜섬웨어는수그러들기미를보이지않고있다. 뿐만아니라랜섬웨어는다양한종류와새로운기법으로더욱기승을부리고있다. 안랩시큐리티대응센터 (AhnLab Security Emergency-response Center, 이하 ASEC) 에서는이러 한다양한랜섬웨어중특정랜섬웨어가국내사용자를대상으로공격을진행하고있는정황을포착 했으며, 그내용에대해자세히소개한다. 헤르메스랜섬웨어최근발견된헤르메스 (Hermes) 랜섬웨어는이전과다른특징을보였다. 시스템의특정폴더와파일을암호화에서제외하는데이제외폴더목록에 AhnLab 을포함한것. 이는안랩제품설치시프로그램파일 (Program Files) 경로에 AhnLab 이라는폴더가생성되는데이내부파일이암호화될경우안랩제품의자체보호기능에의해사용자가인지하는부분을우회하기위한것으로추정된다. 이는헤르메스랜섬웨어가최초발견되었던 2017년초의버전에서는없었던예외조건으로최근헤르메스랜섬웨어에추가된것이다. 2017년초버전과현재버전의차이는아래의 [ 그림 1-1] 과같다. ASEC REPORT Vol.90 Security Trend 4
그림 1-1 헤르메스 (Hermes) 초기버전과최근버전의공통점및차이점 헤르메스는해당시스템의레지스트리를참조하여특정국가를제외하며, 확인된국가는아래 [ 표 1-1] 과같다. 레지스트리확인값해당국가 0419 러시아 HKLM\SYSTEM\ControlSet001\Control\Nls\Language\InstallLanguage 0422 우크라이나 0423 벨라루스 표 1-1 헤르메스 (Hermes) 감염제외국가 헤르메스는드라이브를검색하여 [ 그림 1-1] 의감염대상파일및폴더조건을바탕으로정상파일을암호화한다. 또해당동작이완료되면 [ 표 1-2] 와같이볼륨쉐도우카피삭제명령을수행하는배치파일 (*.BAT) 을생성및실행한다. 2018 년에확인된최신버전의경우, 고정된특정 5개의확장자를제외한모든파일을암호화한다. 특히다른랜섬웨어와는달리암호화된파일의확장자를변경하지않기때문에사용자가인지하기가어려워더욱주의가요망된다. BAT 파일생성경로 C:\users\Public BAT 파일이름 window.bat 표 1-2 생성한 BAT 파일의경로및이름 ASEC REPORT Vol.90 Security Trend 5
생성된배치파일 ( window.bat ) 은볼륨쉐도우카피저장공간을작게조정하여간접적으로내부파 일을삭제한후, 모든볼륨쉐도우카피삭제를수행한다. 또한아래 [ 그림 1-2] 와같이특정확장자의 백업파일까지삭제해복구를더욱힘들게한다. 그림 1-2 BAT 파일의내용 또한정상파일암호화시, 각폴더마다랜섬노트 ( 파일명 : DECRYPT_INFORMATION.html) 를생성하 며복구를원할시비트코인을요구한다. 헤르메스랜섬웨어는웹을통해유포되는것으로알려져있기때문에, 확인되지않은웹페이지방문 시사용자의각별한주의가필요하며, 플래시보안업데이트도최신으로유지해야한다. 매그니베르랜섬웨어매그니튜드익스플로잇킷 (Magnitude Exploit Kit) 을이용하여유포되는매그니베르 (Magniber) 랜섬웨어는윈도우운영체제의한국어사용자만을감염대상으로한다. [ 그림 1-3] 은해당랜섬웨어에감염후사용자에게보여지 그림 1-3 매그니베르랜섬노트화면 는랜섬노트다. ASEC REPORT Vol.90 Security Trend 6
매그니베르는파일암호화과정을수행하기전에 GetSystemDefaultUILanguage() API 를이용하여 윈도우운영체제의사용자의언어를확인한다. 그림 1-4 사용자언어확인 [ 그림 1-4] 의빨간박스에서볼수있듯이확인한리턴값을 0x412(=Korean) 와비교한뒤 0x412 가맞을경우에는계속진행되며, 맞지않을경우에는파일자가삭제 (CALL 00401550) 코드를진행한다. [ 그림 1-4] 의 16 진수 0x412 는 10 진수로 1042 값이며한국어를의미한다 ([ 그림 1-5] 참고 ). 그림 1-5 국가별언어코드 매그니베르는앞서소개한헤르메스랜섬웨어와는달리특정언어를암호화하지않는것이아니라한국어일경우에만암호화를진행하는것이특징이다. 사용자언어가한국어가아닐 그림 1-6 종료후자가삭제명령어 경우에는종료후자기자신을삭제한다. ASEC REPORT Vol.90 Security Trend 7
매그니베르랜섬웨어는주로매그니튜드익스플로잇킷을이용해멀버타이징 (Malvertising) 방식으로유포되고있다. 멀버타이징 (Malver-tising) 은광고서비스의정상적인네트워크를이용하여악성코드를유포및감염시키는방법이다. 매그니튜드익스플로잇킷을통해최종적으로사용자시스템에랜섬웨어파일이생성되고실행된다. 그런데최근매그니베르랜섬웨어가생성되고실행되는방식에서변화가나타나고있다. 2월 7일확인된매그니베르의유포스크립트에서사용자시스템의 ADS(Alternate Data Stream) 영역에랜섬웨어파일을생성하는파일은폐기법이발견되었다. [ 그림 1-7] 과 [ 그림 1-8] 은각각난독화된유포스크립트와복호화된유포스크립트를나타낸다. 그림 1-7 난독화상태의유포스크립트 (2018 년 2 월 7 일자 ) 그림 1-8 복호화후유포스크립트 (2018 년 2 월 7 일자 ) [ 그림 1-8] 의복호화된매그니베르의유포스크립트를보면, %temp% 경로에생성하는파일명이 wa0fll0y: wa0fll0y 임을확인할수있다. 해당기법을통해로컬에저장된파일은디렉터리에 서확인하면 [ 그림 1-9] 와같이파일의크기가 0byte 로보여진다. ASEC REPORT Vol.90 Security Trend 8
그림 1-9 temp 폴더에생성된랜섬웨어 하지만 [ 그림 1-10] 과같이커맨드명령 (dir /r) 을통해확인해보면 wa0fll0y: wa0fll0y 라는 이름으로 ADS(Alternate Data Stream) 영역에실제랜섬웨어파일이생성된것을알수있다. 그림 1-10 커맨드명령을통해확인한랜섬웨어 ADS(Alternate Data Stream) 영역에쓰인실제랜섬웨어파일은 [ 그림 1-9] 의복호화된유포스크립트의마지막줄의실행문에의해실행되며, [ 표 1-3] 의 WMIC 쿼리를통해실행한다. 보안상의이유로윈도우 XP 이후, ADS에생성된파일은 start [ 파일명 ] 과같은커맨드명령으로는실행되지않는다. 그러나 [ 표 1-3] 과같은 WMIC 쿼리를통하면윈도우 7, 윈도우 10 환경에서도 ADS에생성된파일이실행된다. WMIC process call create "%temp%\\wa0f1loy:wa0f1loy 표 1-3 WMIC 쿼리 2 월 20 일자로수집된매그니베르랜섬웨어유포스크립트에서는또다른새로운변화가발견되었 다. ADS 영역에생성한파일을 forfiles.exe 를통해실행하는방식이새롭게추가된것. ASEC REPORT Vol.90 Security Trend 9
그림 1-11 복호화된유포스크립트 (2 월 20 일자 ) [ 그림 1-11] 은 2월 20일자복호화된매그니베르랜섬웨어유포스크립트이다. [ 그림 1-11] 의두번째빨간색박스를보면기존의 WMIC 쿼리실행문위에 forfiles로시작되는실행문이새롭게추가되었다. 해당실행문은사용자시스템의 ADS 영역에생성된랜섬웨어파일을 forfiles.exe를통해실행하는기능이다. forfiles.exe는윈도우운영체제에서제공되는정상프로그램으로, 선택적인파일을대상으로커맨드명령을수행할수있는기능을갖고있다. 확인결과 forfiles.exe를이용하면 ADS에저장된파일을윈도우 7, 윈도우 10에서도실행가능했다. 이는 WMIC 쿼리가비활성화된시스템을감염시키기위한것으로해석할수있다. forfiles /p c:\\windows\\system32 /m notepad.exe /c \""+ FilePath + "\"" 표 1-4 forfiles.exe 사용방식 [ 표 1-4] 의커맨드내용을보면, forfiles.exe의명령반복횟수를한번으로제한하기위해앞단의명령인자 ("/p c:\\windows\\system32 /m notepad.exe) 가사용되었다. 따라서이어지는명령인자 (/c \"" + FilePath + "\"") 가한번실행되며, 공격자는해당명령으로 forfiles.exe를통해단일파일을실행하기위해위와같이사용하였다. ASEC REPORT Vol.90 Security Trend 10
V3 제품군에서는앞서소개한악성파일을다음과같은진단명으로탐지하고있다. Trojan/Win32.Magniber ( 엔진반영버전 : 2018.02.20.03) Malware/MDP.Ransome.M1171 ( 엔진반영버전 : 2016.12.03.01) Trojan/Win32.Hermesran ( 엔진반영버전 : 2018.01.24.03) Malware/MDP.CoinMiner.M1845 ( 엔진반영버전 : 2016.12.03.01) 매그니베르랜섬웨어는주로멀버타이징기법을통해유포및감염된다. 멀버타이징기법은오래된운영체제및소프트웨어버전을사용하거나최신보안패치를적용하지않는시스템에치명적이며, 광고차단 ( 애드블록 ) 기능을이용하지않는사용자들이피해를입는경우가많다. 따라서매그니베르랜섬웨어등멀버타이징기법을통해유포되는랜섬웨어의피해를예방하기위해서는최신보안패치적용이무엇보다중요하다. ASEC REPORT Vol.90 Security Trend 11
악성코드 상세분석 ANALYSIS-IN-DEPTH 국내고객타깃, 플래시플레이어 취약점이용한공격분석
국내고객타깃, 악성코드상세분석 Analysis-In-Depth 플래시플레이어취약점 이용한공격분석 최근국내에서사회공학적공격에이용된것으로보이는문서파일하나가발견되었다. 해당파일은공격대상이국내사용자로판단되는점과파일내부에알려지지않은최신플래시플레이어제로데이취약점이이용된점때문에크게주목을받았다. 이번글에서는주로공격에이용된취약점과쉘코드행위를중심으로설명하고자한다. 이공격에이용된최신제로데이취약점정보는다음과같다. CVE 번호 : CVE-2018-4878 영향받는버전 : Adobe Flash Player 28.0.0.137 및이전버전 (Windows) Adobe 패치번호 : APSB18-03 ( 버전 28.0.0.161) 이공격은유포된엑셀문서파일의내용으로보아국내사용자를공격대상으로삼았다는것을알수있다. [ 그림 2-1] 과같이사용자가인지하기어렵도록액티브엑스 (ActiveX) 컨트롤개체 삽입기능을통해악의적인요소를숨겨놓았다. 그림 2-1 유포된엑셀문서파일내용과액티브엑스컨트롤개체 삽입된액티브엑스컨트롤개체내부에는 [ 그림 2-2] 와같이악의적인플래시파일이포함되어있다. ASEC REPORT Vol.90 Security Trend 13
그림 2-2 ActiveX 컨트롤개체내부플래시파일 악성플래시파일은전체적으로 [ 그림 2-3] 과같은동작흐름을보이며, 구성요소는아래와같이구분하여설명하고자한다. 1차플래시파일 : 문서파일내직접포함된파일 (Active X 컨트롤개체로삽입 ) 2차플래시파일 : 1차플래시파일실행시복호화를통해메모리상에서로딩되는파일 ( 실제취약점파일 ) 그림 2-3 플래시파일의전체흐름도 1 차플래시파일은 [ 그림 2-4] 와같이내부에명시된 C&C 서버주소에접속하여복호화키 (Key) 를 받아온다. 그림 2-4 암호화된 2 차플래시파일과 C&C 주소 ASEC REPORT Vol.90 Security Trend 14
[ 그림 2-5] 와같은내부의복호화루틴 ( 내부함수명 : Decript) 과서버로부터받은복호화키 (Key) 를이용하여메모리상에서로딩할 2차플래시파일을복호화한다. 이때, C&C 서버에전달되는 URL 은파일이실 행된시스템환경정보와파일내부에존재하는 ID 값을조합하여구성되며, 관련코드는 [ 그림 그림 2-5 2 차플래시파일복호화에사용되는 Decript 함수 2-6] 과같다. 그림 2-6 C&C 접속 URL 구성을위한내부코드 태그 의미 id fp_vs os_vs 파일오프셋 10 부터 100 바이트바이너리값 플래시플레이어버전 운영체제버전 표 2-1 전달정보 hxxp://www.1588-2040.co.kr/conf/conf.php?id=fd43d13b2e6d5bc36697a5c5f954498adc5976906432dadd5033c5930ab08bc 52A712A893C602C4EC385CF707E34640AE985F50C07052A8D5FAB6D62440E4DEF5AD4203D566EED4D050389AC90A9FF48FEDB 3582FA28CD84D7284AD5D1B4742A9656FD80&fp_vs=WIN%2028.0,0,137&os_vs=Windows%207 표 2-2 C&C 서버접속 URL 예시 ASEC REPORT Vol.90 Security Trend 15
이후 C&C 서버접속성공시서버로부터키값을전달받으며, 해당키값에의해복호화된 2 차플 래시파일이실제 CVE-2018-4878 제로데이취약점을악용하는파일이다. CVE-2018-4878 취약점은어도비프라임타임 (Adobe Primetime) 동영상플레이어 SDK 상에서 리스너 (Listener) 클래스를처리하는과정에서발생하는 UAF(User After Free, 메모리할당후재 사용시발생 ) 취약점이다. 실제공격에이용된취약점파일의내부는 [ 그림 2-7] 과같다. 그림 2-7 취약점관련코드 취약점파일내부에는 [ 그림 2-8] 과같이동일한기능을가진 2 개의쉘코드가존재한다. 그림 2-8 취약점파일내부쉘코드바이너리 ASEC REPORT Vol.90 Security Trend 16
취약점발생과함께내부의쉘코드는전체적으로 [ 그림 2-9] 와같은동작흐름을보이며, 공격자가 원하는최종악성코드를다운로드후실행하는것이주요기능이다. 그림 2-9 쉘코드동작흐름도 쉘코드는우선적으로실행중인안티바이러스 (Antivirus) 제품종류를파악하고, 그결과에따라 3 가지의구별된기능을수행한다. 이는안티바이러스제품에탑재된각각의기능들을보다지능적으로우회하고자하는시도로예상된다. Case 1: cmd.exe 프로세스실행후코드인젝션 Case 2: 추가악성코드다운로드및실행 Case 3: 프로세스종료 코드내부에명시된아래 [ 표 2-3] 프로세스목록과현재실행중인프로세스명을비교하여안티바이러스제품의실행여부를확인하고, 그결과에따라 [ 표 2-4] 와같이기능이분류된다. 단, 알약제품과관련된프로세스의존재여부 관련제품 V3 ViRobot 360Safe Alyac 프로세스 asdsvc.exe, v3ui.exe, v3svc.exe vraptshieldlaunchersvc.exe, hagenttray.exe, hvrtray.exe zhudongfangyu.exe, 360tray.exe, qhsafemain.exe ayagent.aye 는행위에실질적인영향을주지않는다. 표 2-3 안티바이러스제품별비교프로세스목록 ASEC REPORT Vol.90 Security Trend 17
구분 제품 V3 ViRobot 360Safe 기능 O O ( 무관 ) Case 3 O X X Case 1 존재여부 O X O Case 2 X O ( 무관 ) Case 2 표 2-4 실행중인제품별쉘코드기능 X X X Case 1 X X O Case 2 추가적으로분류된각각의행위에대해서좀더살펴보자. Case 1 의경우윈도우운영체제의명령프롬프트 (cmd.exe) 프로그램을우선실행시킨후, 해당 프로세스에다운로드를위한코드를인젝션한다. 그림 2-10 cmd.exe 코드인젝션 인젝션된코드는내부에명시된또다른 C&C 서버로부터추가쉘코드를다운로드받아실행한다. 그림 2-11 추가쉘코드를받기위한 URL 접속 ASEC REPORT Vol.90 Security Trend 18
추가쉘코드내부에는암호화된악성코드가존재하며복호화후실행한다. 해당방식의경우, 악성코드가메모리상에만존재하기때문에메모리탐지기능이제공되지않는 안티바이러스제품을쉽게우회할수있다. 그림 2-12 쉘코드내부악성코드 Case 2 는새로운스레드를생성하여코드내부에명시된또다른 C&C 서버로부터악성코드를다 운로드받는다. 다운로드받은파일은윈도우임시폴더 (%temp%) 경로에 fontdrvhost.exe 파일명으로생성하 여실행한다. 그림 2-13 악성파일다운로드및실행 마지막으로, Case3 의경우는 V3, ViRobot 관련프로세스가확인되는경우 360Safe 관련프로 세스의존재여부와상관없이어떠한기능도수행하지않고종료한다. ASEC REPORT Vol.90 Security Trend 19
제로데이공격은특성상보안패치가되지않은취약점을이용하는것이므로패치가이루어지기 전까지는완벽한예방이어렵다. 더욱이해당취약점을통해실행되는악성 PE 파일을통해실질적인악성행위가이루어지므로다 양한기능의공격이가능하다. 따라서피해를최소화하기위해윈도우보안패치및안티바이러스 프로그램을항상최신업데이트상태로유지하는것이중요하다. V3 제품군에서는해당제로데이플래시취약점파일을다음과같은진단명으로진단하고있다. SWF/Cve-2018-4878.Exp (2018.02.10.00) 최근악성코드를유포하는스팸메일의경우해당메일의내용이실제사용자와전혀무관하지않 은경우가많기때문에메일내의첨부파일실행시사용자의각별한주의가필요하다. ASEC REPORT Vol.90 Security Trend 20