시큐리티361 2018 Korea 사이버 공격과 방어 데모...
Transcript of 시큐리티361 2018 Korea 사이버 공격과 방어 데모...
[사이버�공격과�방어�데모�시연]�
아파치�취약점�익스플로잇�공격,�가상화폐�크립토�재킹�공격과��
보안�방어책�시연
포티넷�코리아�/�배준호�이사�
!1
!2
Disclaimer�주의�부탁�드립니다.사이버�공격�라이브�데모
�
이�데모에서�제공되는�모든�정보는�교육�목적으로만�제공�됩니다.�
다음의�시연은�데이터�네트워크�보안�및�기타�관련�주제에�대한�정보를�제공하는�것을�전제로하고�있으며�"크래킹"또는�"해킹”�(비윤리적인)을�권장하지�않습니다.�
귀하가�소유하지�않은�컴퓨터�또는�네트워크에서�해킹�시도(허가�없이)는�불법이며�법으로�처벌�될�수�있습니다.
�3
I. 2018:�사이버�공격�데모�개요�
II. 데모�시연�
III.대응�방안�제안�
Contents
I.�2018�사이버�공격�데모�개요�
�5
2012:�DoS�&�Website�defacement�attacks�
2013:�MITM,�SSL�Strip-�steal�facebook�user/password�even�with�HTTPs�
2014:�HeartBleed,�CVE�2014-0160-�one�of�the�biggest�internet�vulnerability�
2015:�Spear-phishing�and�Remote�Access�Trojan�(RAT)�
2016:�랜섬웨어�그리고�무선�와이파이�twin�AP�해킹�시연��
2017:�IoT�사물인터넷�기기�해킹,�워너크라이�랜섬웨어�감염�시연�
2018:�Apache�Struts�취약점�공격�그리고�크립토�재킹�공격�시연�
Security�361,�사이버�공격�데모�시리즈�
�6
인터넷라우터
스위치
스위치
내부망�분리�방화벽
방화벽
ADC
DMZ�서버�팜DNS�서비스�
http://erp.fortinet.com�서비스�IP�100.100.100.100
고객�PC�스마트기기�직원�PC�스마트기기
IPS
WAF
IPS
스위치
내부�서버�팜�1
내부�서버�팜�2
내부�DB
ADCWAF
데이터센터�DC
웹�서비스�인프라�http://erp.fortinet.com
�7
인터넷라우터
스위치
스위치
내부망�분리�방화벽
방화벽
ADC
DMZ�서버�팜DNS�서비스�
http://erp.fortinet.com�서비스�IP�100.100.100.100
IPS
WAF
IPS
스위치
내부�서버�팜�1
내부�서버�팜�2
내부�DB
ADCWAF
데이터센터�DC
웹�서비스�인프라�http://erp.fortinet.com
웹�브라우저로�웹�서비스�접속
DNS�쿼리 HTTP�요청�패킷
방화벽�정책�검사
IPS�시그니처�검사
WAF�정책�검사
•서비스�IP�100.100.100.100�•서버�로드�밸런싱
HTTP�응답�패킷
�8
DMZ�서버�팜
내부�서버�팜�1
내부�서버�팜�2
내부�DB
인터넷라우터
스위치
스위치
내부망�분리�방화벽
방화벽
ADC
DNS�서비스�http://erp.fortinet.com�서비스�IP�100.100.100.100
IPS
WAF
IPS
스위치
ADCWAF
데이터센터�DC
웹�서비스�인프라�http://erp.fortinet.com
웹�브라우저로�웹�서비스�접속
Apache Struts2는 JAVA 엔터프라이즈 웹 애플리케이션을 개발하기 위한 MVC 모델 기반 오픈 소스 프레임워크.
개발자가 웹 개발을 쉽게 할 수 있도록 여러가지 플러그인을 제공 (REST, AJAX, JSON)
CVE-2017-5638 취약점: HTTP Request 헤더의 Content-Type 헤더 필드에 OGNL 표현식을 삽입할 경우, Struts2 Jakarta 플러그인 오류 처리로 인해서 RCE(Remote Code Execution, 원격 코드 실행) 가능.
취약한 버전: Apache Struts2, 2.3.5 ~ 2.3.31 Apache Struts2, 2.5 ~ 2.5.10
취약점�Vulnerability
�9
DMZ�서버�팜
내부�서버�팜�1
내부�서버�팜�2
내부�DB
인터넷라우터
스위치
스위치
내부망�분리�방화벽
방화벽
ADC
DNS�서비스�http://erp.fortinet.com�서비스�IP�100.100.100.100
IPS
WAF
IPS
스위치
ADCWAF
데이터센터�DC
웹�서비스�인프라�http://erp.fortinet.com
웹�브라우저로�웹�서비스�접속
Apache Struts2는 JAVA 엔터프라이즈 웹 애플리케이션을 개발하기 위한 MVC 모델 기반 오픈 소스 프레임워크.
개발자가 웹 개발을 쉽게 할 수 있도록 여러가지 플러그인을 제공 (REST, AJAX, JSON)
CVE-2017-5638 취약점: HTTP Request 헤더의 Content-Type 헤더 필드에 OGNL 표현식을 삽입할 경우, Struts2 Jakarta 플러그인 오류 처리로 인해서 RCE(Remote Code Execution, 원격 코드 실행) 가능.
취약한 버전: Apache Struts2, 2.3.5 ~ 2.3.31 Apache Struts2, 2.5 ~ 2.5.10
Apache�Struts�관련�취약점�CVE-ID
취약점�Vulnerability
�10
Mar 6, 2017: Apache release CVE-2017-5638
Mar 7, 2017: Exploit code available
Mid-May to July 2017: Attack and infiltration of Equifax servers
Sept 7, 2017: Equifax announce data breach occurred
해킹�사고�타임라인�그리고�언론의�스포트라이트�
Cryptojacking�크립토재킹�피해�증가�추세
데이터센터�서버�CPU�부하�증가로�서비스�장애�발생�
커피숍�매장�Wi-Fi에�접속한�노트북�대상�피해�발생
• 코인하이브�(Coinhive)라는�업체가�웹에서도�간편하게�가상화폐�모
네로를�채굴하기�위하여�개발하여�웹사이트�운영자들이�광고료�대신�
비트코인으로�수익을�얻을�수�있게끔�개발하여�공개한�자바스크립트.�
• 가상통화�가치가�상승하면서,�동시에�부정한�방법으로�가상통화를�얻
으려는�시도가�증가함.�
• 최근�다른�사람의�컴퓨터와�스마트폰�CPU�리소스를�동의�없이�사용
하여�가상통화를�채굴하는�크립토재킹이�이슈로�떠오름.
• 크립토재킹은�주로�이메일의�링크나�웹사이트�컨텐츠를�변경
하여,�채굴�코드를�삽입하는�등으로,�사용자의�컴퓨터나�스마
트폰에서�채굴�코드를�실행시켜,�다른�사람이�가상통화를�받
을�수�있도록�하는�수법.�
• 특히,�특정�악의적인�웹사이트를�접속하기만�해도�암호화폐�
채굴�코드가�작동하는�‘드라이브�바이�크립토재킹’�방식도�급
속도로�증가하는�추세.
II.�데모�시연�
•Apache�Struts�취약점을�이용한�RCE�공격�
•크립토�재킹에�악용되는�피해�형태�
�14
인터넷라우터
스위치
스위치
내부망�분리�방화벽
방화벽
ADC
DMZ�서버�팜
고객�PC�스마트기기�직원�PC�스마트기기
IPS
WAF
IPS
스위치
내부�서버�팜�1
내부�서버�팜�2
내부�DB
ADCWAF
데이터센터�DC
APT�공격�조직�(해커)
웹�서비스�인프라�http://erp.fortinet.com
�15
사이버�킬�체인을�이용한�공격�시도�식별하기데모�시연�순서
인터넷
유분투�리눅스�웹�서버�(Apache�Struts)�http://erp.fortinet.com�서비스�
192.168.253.220/24
직원�PC�(고객�PC)�Windows�7�Home�64�Bits�192.168.253.189/24
Hacker�Kali�Linux�
192.168.253.228/24
1 2
3
4
5
0
6
4
10
•웹�서버�접속.�•취약점�스캔�툴�구동.
정찰
공격�코드�실행
악성�코드�설치
해킹�목표�달성
공격�코드�제작
취약점�공격
명령�및��원격�제어
웹서버�index.jsp�파일�다운로드�후,�크립토재킹�자바스크립트로�위장.�변조된�index.jsp�파일을�유분투�서버에�업로드.
3
2
2
해커는�CVE-2017-5638��익스플로잇�실행하여,�서버�제어�성공�(Full�control).
2
5
64직원�PC가�웹�서버에�접속할�때,��크립토재킹�JS�실행�(CPU�100%).�
웹�서버는�해커�원격�제어로�크립토�마이닝�코드�실행�(CPU�100%).
해커�원격�제어로�웹�서버가�Coinhive� 마이닝�실행.
목표:�사이버�공격을�통해서�가상화폐�채굴�성공.
III.�대응�방안�제안
�17
인터넷
라우터
스위치방화벽 ADC서버�팜
고객�PC�스마트기기�직원�PC�스마트기기
IPS WAF
데이터센터�DC
APT�공격�조직
샌드박스 SIEM
DATA
DATA
DATA
DATA
DATA
DATA
DATA
Application�Layer
Presentation�Layer
Session�Layer
Transport�Layer
Network�Layer
Datalink�Layer
Physical�Layer
DATA
DATA
DATA
DATA
DATA
DATA
DATA
Application�Layer
Presentation�Layer
Session�Layer
Transport�Layer
Network�Layer
Datalink�Layer
Physical�Layer
OSI-7�Layer OSI-7�Layer
OSI�1-2��물리적�계층
OSI�3-4��커넥션�계층
OSI�5-7��컨텐츠�및��애플리케이션�계층
방화벽 (Legacy)
IPS (패킷 기반)
VPN
(IP
Sec,
SSL
)
WAF
SSL inspec
tion
AV DLP 샌드박스
웹 필터링
NG-IPS (세션 기반)
APP
Con
trol
이메일
보안
(안티스팸
)
�18
인터넷
라우터
스위치방화벽 ADC서버�팜
고객�PC�스마트기기�직원�PC�스마트기기
IPS WAF
데이터센터�DC
APT�공격�조직
샌드박스 SIEM
DATA
DATA
DATA
DATA
DATA
DATA
DATA
Application�Layer
Presentation�Layer
Session�Layer
Transport�Layer
Network�Layer
Datalink�Layer
Physical�Layer
DATA
DATA
DATA
DATA
DATA
DATA
DATA
Application�Layer
Presentation�Layer
Session�Layer
Transport�Layer
Network�Layer
Datalink�Layer
Physical�Layer
OSI-7�Layer OSI-7�Layer
OSI�1-2��물리적�계층
OSI�3-4��커넥션�계층
OSI�5-7��컨텐츠�및��애플리케이션�계층
방화벽 (Legacy)
IPS (패킷 기반)
VPN
(IP
Sec,
SSL
)
WAF
SSL inspec
tion
AV DLP 샌드박스
웹 필터링
NG-IPS (세션 기반)
APP
Con
trol
이메일
보안
(안티스팸
)
�19
Legacy�방화벽�탐지�불가능�vs.�IPS�탐지�기술�비교�(시연)
�20
포티넷�솔루션을�이용하는�방법
IPS • Apache.Struts.
2.Jakarta.Multipart.Parser.Code.Execution
AV • JS/Coinhive.HK!tr • W32/Filecoder_WannaCryptor.B!tr • JS/Coinhive.SX!tr • W32/WannaCryptor.B!tr • and others variants being discovered every hour
Web Filtering, Botnet & IOC • Against dynamic malicious websites • Detect/Block, Report and Protect
�21
시큐리티�베스트�프랙티스�권고�사항
1. Use�multi-layer�defense�in�depth��
2. Keep�software�up-to-date�and�Always�Patch�Today�
(A.P.T)��
3. Use�application�whitelisting�
4. Harden�Endpoint�Protection�
5. Segment�your�network�into�security�zones�
6. User�Education�
7. Install�an�ad-blocking�or�anti-crypto-mining�extension�
on�web�browsers
�22
▪Use�and�maintain�antivirus�software.��▪ Keep�software�and�operating�systems�up-to-date.�▪Use�strong�passwords.�▪Change�default�usernames�and�passwords�▪Check�system�privilege�policies.��▪Apply�application�whitelisting.�▪ Be�wary�of�downloading�files�from�websites.��▪ Recognize�normal�CPU�activity�and�monitor�for�abnormal�activity.�▪Disable�unnecessary�services.��▪Uninstall�unused�software.��▪Validate�input.�▪ Install�a�firewall.��▪Create�and�monitor�blacklists.�
크립토�재킹�대비�방안�권고
Source: https://www.us-cert.gov/ncas/tips/ST18-002
THANK YOU
감사합니다.