Post on 16-Oct-2021
APT (Advanced Persistent Threat)
AhnLab A-FIRST
오정훈 연구원
Contents
01
02
03
04
Introduction
APT Attack
APT Countermeasure
Conclusion
Introduction
Copyright (C) AhnLab, Inc. All rights reserved. 4
Introduction
공통점?
Copyright (C) AhnLab, Inc. All rights reserved. 5
Introduction
APT(Advanced Persistent Threat)
• 지능형지속위협공격
특정 기업이나 조직을 노린 표적 공격의 대표적 유형
특징
지능적(Advanced) : 제로데이 취약점, 사회공학 …
지속적(Persistent) : 장기간의 시간 투자
확실한 공격 목표(Targeted) : 첩보활동, 기간시설파괴, 금전적인 목적
Copyright (C) AhnLab, Inc. All rights reserved. 6
Introduction
APT 공격 목표
• 정부 내 기밀 문서 탈취
• 군사 기밀 문서 탈취 정부 기관
• 사이버 테러리즘 활동
• 사회 기간 산업 시스템의 동작 불능 사회 기간 산업 시설
• 기업 지적 자산 탈취
• 기업 영업 비밀 탈취 정보 통신 기업
• 기업 지적 자산 탈취
• 기업 영업 비밀 탈취 제조 업종 기업
• 사회 금융 시스템의 동작 불능
• 기업 금융 자산 정보 탈취 금융 업종 기업
Copyright (C) AhnLab, Inc. All rights reserved. 7
Introduction
APT in South Korea
Copyright (C) AhnLab, Inc. All rights reserved. 8
Introduction
Traditional Threat vs APT
Traditional Threat APT
• 감기
• 증상이 바로 나타남
탐지가 쉬움
• 불특정 다수를 대상
공격 실패 시, 다른 목표로 이동
• 암
• 증상이 나타나지 않음
탐지가 어려움
• 특정 조직을 목표
공격을 절대 포기하지 않음
Copyright (C) AhnLab, Inc. All rights reserved. 9
Introduction
Traditional Threat 대응
시그니처 대응(=감기약)
AV, IDP,
IPS …
악성코드 제거로 대응 가능
Copyright (C) AhnLab, Inc. All rights reserved. 10
Introduction
APT 대응
Unknown 악성코드
탐지(=정밀 검진)
정확한 공격 원인 파악
및 제거 필요(=수술)
AV, IDP,
IPS …
APT Attack
Copyright (C) AhnLab, Inc. All rights reserved. 12
APT Attack
APT Life Cycle
1. Initial Reconnaissance(초기 정찰)
2. Initial compromise(최초 침입)
3. Establish Foothold(교두보 확보)
4. Escalate Privileges(권한 상승)
5. Internal Reconnaissance(내부 네트워크 정찰)
6. Move Laterally(내부 네트워크 이동)
7. Maintain Presence(연결 유지)
8. Complete Mission(목표 달성)
Copyright (C) AhnLab, Inc. All rights reserved. 13
APT Attack
STEP 1 : Initial Reconnaissance(초기 정찰)
• 공격 목표에 대한 정보 수집 단계
• 주로 공개된 정보를 알아내는 작업(SNS, 블로그, 회사 홈페이지…)
• 조직의 운영방식, 사람이나 잠재적인 공격 포인트 확인
Copyright (C) AhnLab, Inc. All rights reserved. 14
APT Attack
STEP 1 : Initial Reconnaissance(초기 정찰)
• 초기 정찰의 활용 예
A Company Homepage
X 프로젝트 진행중
Senior Engineer
학회 발표 예정 발표자료 다운로드
프로젝트2단계 진행
회계연도
CIO 이름, 이메일
From. CIO
프로젝트 2단계
수정 사항 확인
Open or not ?
Copyright (C) AhnLab, Inc. All rights reserved. 15
APT Attack
STEP 2 : Initial compromise(최초 침입)
• 공격 대상 조직의 내부 네트워크로의 침입이 최초로 시도하는 단계
• “Initial Reconnaissance” 단계에서 획득한 정보를 바탕으로 공격 수행
• 주로 보안이 소홀한 일반 사원 PC를 노림
• 주요 공격 방식 1
Watering Hole
Server Hosting Zero-day Exploit
Hacked Web Server
공격 대상이 업무상 방문해야 하는 사이트
Copyright (C) AhnLab, Inc. All rights reserved. 16
APT Attack
STEP 2 : Initial compromise(최초 침입)
• 주요 공격 방식 2
E-Mail Attachment or Link
File Attachment
Targeted Email
Web Link Infected Web Site Using Zero-day Exploit
Malformed Document Using Zero-day Exploit
Copyright (C) AhnLab, Inc. All rights reserved. 17
APT Attack
STEP 3 : Establish Foothold(교두보 확보)
• 백도어가 설치되어 외부 C&C 서버와의 연결이 생성되는 단계
• 대부분의 방화벽 설정이 아웃바운드 트랙픽을 필터링을 하지 않는 것을 이용
• C&C 연결 은닉
정상 프로토콜 사용( ex : HTTP, HTTPS …)
패킷 암호화
Copyright (C) AhnLab, Inc. All rights reserved. 18
APT Attack
STEP 3 : Establish Foothold(교두보 확보)
• 주요 백도어 기능
시스템 정보 수집 기능
파일 시스템 제어
C&C 서버와의 파일 전송
프로세스, 모듈 제어
서비스 제어
레지스트리 제어
실시간 화면 캡쳐
원격 제어
Command Shell
키보드, 마우스 모니터링 기능
Sleep 기능
Proxy 기능
Password, Hash 획득
내부 네트워크 내 시스템 스캐닝
Copyright (C) AhnLab, Inc. All rights reserved. 19
APT Attack
STEP 4 : Privilege Escalation(권한 상승)
• 네트워크 내 다른 시스템을 접근하기 위한 아이템(Password, Hash)를 얻는 단계
• Pass the Hash, Pass the Pass 공격 방법 사용
• Windows Active Directory 환경에서 특히 취약함
Copyright (C) AhnLab, Inc. All rights reserved. 20
APT Attack
STEP 4 : Privilege Escalation(권한 상승)
• Pass the Hash Attack
Windows NTLM 인증 요소
Logon Processes(WINLOGON.EXE)
기본 Logon Process
로그인 시도 I/O를 감지함
LSA(Local Security Authority, LSASS.EXE)
유저모드 프로세스, 로컬 시스템 보안 정책과 사용자 인증을 관리함
로그인 세션 유지
Authentication Packages(MSV1_0.DLL)
NTLM Authentication Packages
실제 사용자 인증을 수행하는 DLL, 로그인 세션 생성을 수행, LSA가 시작 시, 로딩됨
Copyright (C) AhnLab, Inc. All rights reserved. 21
APT Attack
STEP 4 : Privilege Escalation(권한 상승)
• Pass the Hash Attack(계속)
NTLM 인증 과정
1. 사용자 로그인 시도를 WINLOGON.EXE가 감지하여 LSASS.EXE가 로드한 DLL인 MSV1_O.DLL의 LsaLogonUser() 함수를 호출
2. LsaLogonUser()는 사용자 인증을 수행, 로그인 세션을 생성하고 해당 세션에 Credentials를 추가
*Credentials : UserName, Domain, LM Hash, NT Hash로 구성된 값
Copyright (C) AhnLab, Inc. All rights reserved. 22
APT Attack
STEP 4 : Privilege Escalation(권한 상승)
• Pass the Hash Attack(계속)
로그인 세션 내의 Credentials
각 세션이 가지고 있는 Credentials 값은 해당 세션이 인증이 필요한 작업(ex : 리소스 접근)을 수행할 시 사용됨
따라서 매번 사용자가 패스워드를 입력할 필요 없음 : SSO(Single Sign-On)
Copyright (C) AhnLab, Inc. All rights reserved. 23
APT Attack
STEP 4 : Privilege Escalation(권한 상승)
• Pass the Hash Attack(계속)
RDP 접속을 통해 메모리에 남는 NTLM Credential
Copyright (C) AhnLab, Inc. All rights reserved. 24
APT Attack
STEP 4 : Privilege Escalation(권한 상승)
• Pass the Hash Attack(계속)
Active Directory 환경에서의 Pass the Hash Attack
1. 도메인 관리자가 Domain User Workstation 으로 RDP 연결
2. 공격자는 미리 장악한 Domain User Workstation 시스템으로 부터 도메인 관리자의 NTLM Credential 획득
3. 획득한 NTLM Credential 을 현재 공격자의 세션에 덮어씀
4. 공격자는 해당 도메인 내 모든 리스소에 접근 가능~!!
Copyright (C) AhnLab, Inc. All rights reserved. 25
APT Attack
STEP 4 : Privilege Escalation(권한 상승)
• Pass the Hash Attack(계속)
WCE(Windows Credential Editor)
메모리에 남아있는 NTLM Credentials 확인 : -l 옵션 (관리자 권한 필요)
공격자 세션의 NTLM credentials 를 도메인 관리자의 NTLM credentials 로 교체(-s 옵션)
Copyright (C) AhnLab, Inc. All rights reserved. 26
APT Attack
STEP 4 : Privilege Escalation(권한 상승)
• Pass the Pass Attack
메모리 내 암호화된 패스워드를 복호화 하여 획득하는 기법
Pass the Hash 의 경우와 마찬가지로 RDP 연결을 통해 해당 시스템 메모리에 남아있는 데이터를 이용
tspkg, wdigest, Kerberos 메모리 영역에 저장됨
SSO
Tspkg Encrypted
Password
Wdigest Encrypted
Password
Kerberos Encrypted
Password
Copyright (C) AhnLab, Inc. All rights reserved. 27
APT Attack
STEP 4 : Privilege Escalation(권한 상승)
• Pass the Pass Attack
Mimikatz
kerberos
wdigest
tspkg
Copyright (C) AhnLab, Inc. All rights reserved. 28
APT Attack
STEP 5 : Internal Reconnaissance(내부 네트워크 정찰)
• 내부 네트워크 내 시스템의 정보를 수집하는 단계
• 획득한 Password, Hash를 통해 접근할 수 있는 시스템 탐색
• 주로 기본 시스템 명령어를 사용하는 배치 파일 실행
Copyright (C) AhnLab, Inc. All rights reserved. 29
APT Attack
STEP 5 : Internal Reconnaissance(내부 네트워크 정찰)
• 수집 대상 정보
네트워크 구성도
도메인 구성도
로컬 계정 정보
도메인 계정/그룹 정보
현재 연결된 시스템 정보
현재 네트워크 공유 정보
현재 동작 중인 프로세스/서비스 정보
Copyright (C) AhnLab, Inc. All rights reserved. 30
APT Attack
STEP 6 : Move Laterally(내부 네트워크 이동)
• 내부 네트워크 내 타 시스템으로 이동하는 단계
Copy Backdoor
Run Backdoor
Dominated System Normal System
I have ID/PW or
Credentials of
Domain
Administrator NetworkShare Point
sc, at, wmic, reg,
psexec, winrs
Dominated System
Copyright (C) AhnLab, Inc. All rights reserved. 31
APT Attack
STEP 6 : Move Laterally(내부 네트워크 이동)
• 1단계 : 네트워크 공유 후, 백도어 복사
획득한 ID/PW 사용
네트워크 드라이브 연결 후, 복사
IPC$ 공유 후, 복사
Copyright (C) AhnLab, Inc. All rights reserved. 32
APT Attack
STEP 6 : Move Laterally(내부 네트워크 이동)
• 1단계 : 네트워크 공유 후, 백도어 복사
획득한 NTLM Credentials 사용
-s 옵션 : 현재 세션의 NTLM Credentials 값을 인자로 들어온 NTLM Credentials 값으로 바꿈
Copyright (C) AhnLab, Inc. All rights reserved. 33
APT Attack
STEP 6 : Move Laterally(내부 네트워크 이동)
• 2단계 : 백도어 실행(설치)
Service Control Manger(SCM)
복사한 백도어를 서비스로 등록하여 실행함
등록된 서비스( in 192.168.70.101)
작업 스케쥴러
작업 스케쥴로 등록하여 실행함
등록된 작업 스케쥴러( in 192.168.70.101)
Copyright (C) AhnLab, Inc. All rights reserved. 34
APT Attack
STEP 6 : Move Laterally(내부 네트워크 이동)
• 2단계 : 백도어 실행(설치)
WMI(Windows Management Instrumentation)
wmic 를 통해 원격 실행
Remote Registry
레지스트리 Run 키에 등록하여 시스템 재시작 시, 실행하게 함
등록된 Value( in 192.168.70.101)
Copyright (C) AhnLab, Inc. All rights reserved. 35
APT Attack
STEP 6 : Move Laterally(내부 네트워크 이동)
• 2단계 : 백도어 실행(설치)
Remote File Access
시작 프로그램 폴더에 복사하여 시스템 재시작 시, 실행되게 함
Psexec
$ADMIN 을 통해 System32 에 복사 후, 실행
System32 폴더 아래 복사된 backdoor
Copyright (C) AhnLab, Inc. All rights reserved. 36
APT Attack
STEP 6 : Move Laterally(내부 네트워크 이동)
• 2단계 : 백도어 실행(설치)
Windows Remote Management
Win7 이후 기본적으로 설치되어 있음(활성화되어 있지 않음)
활성화 : winrm qc
Winrs 명령을 통해 원격 실행
실행된 백도어(( in 192.168.70.101)
Copyright (C) AhnLab, Inc. All rights reserved. 37
APT Attack
STEP 6 : Move Laterally(내부 네트워크 이동)
• AD 환경에서의 Lateral Movement
A Domain B Domain
DC DC
Trust Relationship
DC DC
Copyright (C) AhnLab, Inc. All rights reserved. 38
APT Attack
STEP 7 : Maintain Presence(연결 유지)
• 백도어 설치 후, 지속적인 연결을 유지하려는 작업을 하는 단계
• 다양한 Reloading Point 이용
서비스 등록
레지스트리 등록
부팅시 자동 로딩되는 시스템 DLL 교체
MBR 변조(Bootkit)
• Anti Forensic 기법을 통한 분석 방해
이벤트 로그 삭제
JOB 파일 삭제
최초 설치 파일 삭제
관련 레지스트리키 삭제
획득한 인증서 재사용
메모리 내에만 상주하는 악성코드
Copyright (C) AhnLab, Inc. All rights reserved. 39
APT Attack
STEP 7 : Maintain Presence(연결 유지)
• 지속적으로 새로운 백도어 설치
탐지되어 삭제되어도 지속적인 연결을 유지
탐지 및 대응 후, 설치되는 악성코드의 양 증가
• VPN Credentials 사용
외부 네트워크에서 내부로 바로 접근할 수 있는 통로 확보
• Web Portal 접근
외부로부터의 연결 유지를 위해 Web Shell 설치
Copyright (C) AhnLab, Inc. All rights reserved. 40
APT Attack
STEP 8 : Complete Mission(목표 달성)
• 공격 목적을 달성하는 단계
• 정보 유출
WinRAR, 7zip, Winzip, BZIP 을 통한 데이터 압축
FTP or Backdoor에서 제공하는 전송 기능 사용
대용량 전송 시, 파일 분할
• 게임 머니 업데이트
직접 쿼리
Stored Procedure 업데이트
SQL Server 의 DLL 변조
APT Countermeasure
Copyright (C) AhnLab, Inc. All rights reserved. 42
APT Countermeasure
APT 를 대하는 우리의 마음가짐~!!
• 100% 방어는 없다.
조직은 언젠가는 침해 당할 것임
• 방지는 이상적이지만 탐지는 필수다.
조기 탐지 및 피해 최소화
• 전통적인 방지책이 소용 없는 것이 아님.
Firewall, IDS, IPS, AV …
VS
Copyright (C) AhnLab, Inc. All rights reserved. 43
APT Countermeasure
사전 준비
• 시스템 이해하기
정확한 자산 파악
네트워크 구성도와 가시화 맵 작성
• 데이터 중심의 보안
데이터 발견
데이터 분류
데이터 고립/분할/보호
• 설정 제어
견고한 설정 관리 시스템
모든 시스템에 대한 동일한 환경 설정
불필요한 서비스, 어플리케이션, 설정 제거
Copyright (C) AhnLab, Inc. All rights reserved. 44
APT Countermeasure
사전 준비
• 인식 제고
일반 직원
임원진
보안 관리자
• 리스크 기반 관리
리스크는 무엇인가?
그것이 가장 우선순위가 높은 리스크인가?
이것이 리스크를 줄이기 위해 가장 효율적인 방법인가?
!
Copyright (C) AhnLab, Inc. All rights reserved. 45
APT Countermeasure
APT 탐지
• 행위 기반의 이상 행위 탐지
정상 행위에 대한 프로파일
베이스라인을 통한 평판 진단
네트워크 + 엔드포인트
• 지속적인 모니터링
주기적인 모니터링 및 감사
이전 결과와의 편차 비교
• 아웃바운드 트래픽 탐지
클리핑 레벨을 통한 탐지 범위 축소
목적지 IP/도메인, 커넥션 길이, 데이터 양, 패킷수
Outbound
Copyright (C) AhnLab, Inc. All rights reserved. 46
APT Countermeasure
APT 대응
• APT 대응 6단계 프로세스
1. 준비
침해 사고 발생 전 단계
임원진의 동의
사법당국, 자문기관 혹은 다른 부서와의 관계 유지
대응팀 구성 및 훈련
2. 확인
침해사고 인지 단계
침해사고 여부와 대상 범위 파악
확인 단계에서의 시스템 변경 주의
3. 억제
상황을 안정화 시키고 억제하는 단계
가상화 기반 억제 방안 필요 : 커넥션 차단, VLAN 격리
Copyright (C) AhnLab, Inc. All rights reserved. 47
APT Countermeasure
APT 대응
• APT 대응 6단계 프로세스(계속)
4. 분석 및 제거
분석을 진행 원인을 파악하고 조치를 취하는 단계
디지털 포렌식 기술을 통한 유입경로, 전파 방법, 피해 범위 파악
근본적인 원인 제거
5. 복구
시스템 정상화 및 데이터 복구를 진행하는 단계
데이터 복구시, 재감염 여부 주의
정상화 후, 지속적인 모니터링
6. 보고서 작성
대응 보고서를 작성하는 단계
대응 프로세스 리뷰를 통한 부족한 점 보완
임원진용 요약 보고서는 항상 간결하고 정확하게 작성
Copyright (C) AhnLab, Inc. All rights reserved. 48
APT Countermeasure
SANS Critical Controls 20 : http://www.sans.org/critical-security-controls
1. 인가/비인가 장치 목록 관리
2. 인가/비인가 소프트웨어 목록 관리
3. 시스템의 하드웨어/소프트웨어 환경 설정 강화
4. 지속적인 취약점 평가 및 수정
5. 악성코드 방어
6. 애플리케이션 보안
7. 무선 장비 제어
8. 데이터 복구 능력
9. 보안 기술 평가 수행
10. 네트워크 장비 설정 강화
11. 네트워크 포트, 프로토콜, 서비스 사용에 대한 제어
12. 관리자 권한 사용 제어
13. 경계 보안
14. 보안 감사 로그에 대한 유지보수, 모니터링, 분석
15. 정보에 대한 접근 제어
16. 계정 모니터링 제어
17. 데이터 유출 방지
18. 침해사고 대응 능력
19. 네트워크 보안 기술
20. 침투테스트와 레드팀 훈련
Copyright (C) AhnLab, Inc. All rights reserved. 49
APT Countermeasure
APT 대응 관련 기술
• Thin Clients
부팅시, 서버로부터 OS 다운로드 및 설치
환경 설정의 중앙 관리
침해 시간 제한
• 가상화 기반 고립 기술
웹 서핑, 이메일 열람을 가상화된 샌드박스에서 수행
화이트 리스트에 포함되지 않은 애플리케이션도 포함
• 동적 접근 제어
악성 의심 행위를 보이는 시스템에 대한 권한 제한
각 시스템에 대한 권한 수정을 자동 수행
• SIEM(Security Information and Event Management)
실시간 로그&이벤트 수집, 상관분석, 경고
공격 지표 탐지
Conclusion
Copyright (C) AhnLab, Inc. All rights reserved. 51
Conclusion
• 끊임 없이 발생하는 APT….
지능적
지속적
확실한 공격 목표
• APT 공격 방식에 대한 이해
Initial Reconnaissance(초기 정찰)
Initial compromise(최초 침입)
Establish Foothold(교두보 확보)
Escalate Privileges(권한 상승)
Internal Reconnaissance(내부 네트워크 정찰)
Move Laterally(내부 네트워크 이동)
Maintain Presence(연결 유지)
Complete Mission(목표 달성)
• APT 대응
100% 방어는 없다.
방지는 이상적이지만 탐지가 필수다.
전통적인 방지책이 소용 없는 것이 아님.
• 결국 보안은 사람이 하는 것~!!
Thank you.