
소모임에서 정기 스터디를 진행한다. 2~3가지 주제를 주면 그 주제 중에서 하나를 골라 학습하고 기술블로그를 적는 것이다. 나는 학습 주제로 MITRE ATT&CK을 선정하였다. 3시간 안에 블로그까지 다 쓰려다 보니 많은 내용을 적지는 못했으나 잘 알지는 못하고 들어만 봤던 MITRE ATT&CK에 대해 알 수 있는 좋은 기회였다.

MITRE ATT&CK는 악의적 전술(Adversarial Tactics), 기법 및 일반 지식(Techniques & Common Knowledge)의 약자로 실제 사이버 공격 사례를 분석하여 공격자의 행동 방식을 단계별로 체계화한 세계적인 knowledge base이자 프레임워크이다. 미국 MITRE사에서 개발했으며, 보안팀이 위협을 탐지, 분석, 대응하고 보안 체계를 강화하는 표준 도구로 활용된다.

공격 기술인 Tactic, Technique 개념과 관계를 시각화한 것이다.
MITRE ATT&CK Matrix는 Enterprise(기업), Mobile(모바일), ICS(산업제어시스템) 버전으로 제공한다.
Tactics 는 공격자의 공격 목표에 따른 행동을 나타낸다.
여러 상황에 따른 각각의 Techniques를 Tactics에 따라 분류한다.
공격자가 목표에 대한 Tactic 을 달성하기 위한 방법을 나타낸다.
공격자의 공격(Technique)을 통해 발생하는 결과를 명시한다.
방어자(관리자)가 공격을 예방하고 탐지하기 위해 취할 수 있는 행동(Techniques)을 의미한다.
공개적으로 명칭이 부여된 해킹단체에 대한 정보와 해당 단체의 공격 기법(Techniques)을 분석하여 정리한다. 주로 사용된 공격 방법과 활동 분석, 공식 문서 등을 바탕으로 해킹조직 정보를 정의한다.
공격자가 목표 대상을 공격할 때 사용된 공격코드 또는 운영체제(OS)에 포함된 기본 도구나 공개적으로 사용 가능한 도구 등을 목록화한다.
Enterprise에는 15개의 tactics가 존재한다.
1. Reconnaissance(정찰)
Reconnaissance는 공격자가 목표를 더 잘 이해하고 효과적으로 공격하기 위해 사전에 조직, 시스템, 직원 등에 대한 정보를 수집하는 단계이다.
techniques로는 active scanning, phishing for information 등을 포함해 총 12가지가 존재한다.
2. Resource Development(자원 개발)
Resouurce Development는 공격자가 목표물에 실제 공격을 수행하기 전에 필요한 자원을 만들거나, 구매하거나, 훔쳐서 준비하는 단계이다.
techniques로는 acquire access, acquire infrastructure 등을 포함해 총 9가지가 존재한다.
3. Initial Access(초기 접근)
Initial Access는 공격자가 대상 네트워크 진입하기 위해 다양한 진입 경로를 시도하는 단계이다.
techniques로는 content injection, drive-by compromise 등을 포함해 총 11가지가 존재한다.
4. Execution(실행)
Execution은 공격자가 로컬 시스템이나 원격 시스템에서 자신이 제어하는 코드, 스크립트, 명령어를 실행하는 단계이다.
techniques로는 BITS jobs, cloud administration command 등을 포함해 총 20가지가 존재한다.
5. Persistence(지속)
Persistence는 공격자가 시스템에 한 번 침투한 뒤, 재부팅이나 비밀번호 변경 같은 상황으로 접근이 끊기지 않도록 계속 접속할 수 있는 방법을 만들어 두는 단계이다.
techniques로는 account manipulation, BITS jobs 등을 포함해 총 22가지가 존재한다.
6. Privilege Escalation(권한 상승)
Privilege Escalation은 공격자가 처음 얻은 제한된 권한만으로는 원하는 공격을 수행하기 어렵기 때문에, 시스템 취약점이나 잘못된 설정 등을 이용해 관리자 권한이나 SYSTEM/root 권한처럼 더 높은 권한을 얻으려는 단계이다. 이
techniques로는 abuse elevation control mechanism, access token manipulation 등을 포함해 총 13가지가 존재한다.
7. Stealth(은닉)
Stealth는 공격자가 자신의 행동을 정상적인 사용자나 시스템 활동처럼 보이게 만들어 탐지 가능성을 낮추는 단계이다.
techniques로는 access token manipulation, BITS jobs 등을 포함해 총 30가지가 존재한다.
8. Defense Impairment(방어 회피)
Defense Impairment는 공격자가 보안 도구, 로그 수집 체계, 모니터링 시스템, 대응 기능 등을 직접 방해하거나 약화시켜 방어자가 공격 상황을 제대로 탐지하고 이해하고 대응하지 못하게 만드는 단계이다.
techniques로는 disable or modify system firewall, disable or modify tools 등을 포함해 총 18가지가 존재한다.
9. Credential Access(접속 자격 증명)
Credential Access는 공격자가 사용자 이름, 비밀번호, 토큰, 키 같은 로그인 정보를 훔치는 단계이다.
techniques로는 adversary-in-the-middle, brute force 등을 포함해 총 17가지가 존재한다.
10. Discovery(탐색)
Discovery는 공격자가 침투한 후 내부 시스템과 네트워크 환경을 파악하는 단계이다.
techniques로는 account discovery, application window discovery 등을 포함해 총 34가지가 존재한다.
11. Lateral Movement(내부 확산)
Lateral Movement는 공격자가 처음 침투한 시스템에 머무르지 않고, 내부 네트워크의 다른 시스템과 계정으로 이동하며 최종 목표에 접근하려는 단계이다.
techniques로는 exploitation of remote services, internal spearphishing 등을 포함해 총 9가지가 존재한다.
12. Collection(수집)
Collection은 공격자가 자신의 목적을 달성하기 위해 필요한 데이터를 실제로 모으는 단계이다.
techniques로는 adversary-in-the-middle, archive collected data 등을 포함해 총 17가지가 존재한다.
13. Command and Control(명령 및 제어)
Command and Control은 공격자가 침해한 시스템과 통신하면서 원격으로 명령을 내리고 제어하는 단계이다
techniques로는 application layer protocol, communication through removable media 등을 포함해 총 18가지가 존재한다.
14. Exfiltration(유출)
Exfiltration은 공격자가 피해 조직 내부에서 수집한 데이터를 외부로 몰래 빼내는 단계이다.
techniques로는 automated exfiltration, data transfer size limites 등을 포함해 총 9가지가 존재한다.
15. Impact(임팩트)
Impact는 공격자가 피해 조직의 시스템, 데이터, 업무 프로세스를 조작하거나 중단시키거나 파괴해서 실제 피해를 발생시키는 단계이다.
techniques로는 account access removal, data destruction 등을 포함해 총 15가지가 존재한다.
다음과 같은 상황에서 MITRE ATT&CK 프레임워크를 사용할 수 있다.
- 위협이 어떻게 행동하는지에 대한 조직 간 정보 공유
- 위협 행위자가 시간 경과에 따라 사용하는 기법, 전술 및 절차(TTP) 추적
- 내부 교육 목적으로 다양한 유형의 해커의 행동과 전술을 모방
- 악의적인 공격자가 사용하는 전술과 그 이후 데이터 유형 간의 연결 매핑
- 사이버 방어팀이 경계할 수 있도록 가장 자주 사용하는 전술 파악