[Incident Response] T1173 Dynamic Data Exchange
(1) Execution이란?
-
공격자는 내부 네트워크에서 악의적인 코드를 실행하고자 노력
-
로컬이나 원격 시스템에서 악의적인 코드를 실행하는 기술로 구성
-
절차(Procedure)를 진행하기 위해 다른 모든 전술(Tactis)의 기술(Techniques)과 짝을 이루어 활용
-
예시
-
LNK 파일 내에 포함된 Powershell 명령행 실행
-
스피어피싱(Spearphishing) 메일 내에 .hta 확장자인 파일을 포함하여 실행하도록 유도
(2) Dynamic Data Exchange란?
-
Windows DDE(Dynamic Data Exchange)는 응용 프로그램 간의 일회성 또는 연속 프로세스 간 통신(IPC)을 위한 클라이언트-서버 프로토콜
-
연결이 설정되면 응용 프로그램은 문자열, 웜 데이터 링크(데이터 항목이 변경될 때 알림), 핫 데이터 링크(데이터 항목에 대한 변경 중복) 및 명령 실행 요청으로 구성된 트랜잭션을 자동으로 교환 가능
-
OLE(Object Linking and Embedding) 또는 문서 간에 데이터를 연결하는 기능은 원래 DDE를 통해 구현
-
COM으로 대체되었지만 DDE는 Windows 10 및 대부분의 Microsoft Office 2016에서 레지스트리 키를 통해 활성화될 수 있음
-
공격자는 DDE를 사용하여 임의 명령 실행 가능
-
Microsoft Office 문서는 DDE 명령으로 중독될 수 있으며, 직접 또는 포함된 파일을 통해 응용 프로그램(VBA) 매크로에 대한 Visual Basic에서의 사용을 피하고, 피싱 캠페인 또는 호스트 된 웹 컨텐츠를 통해 실행을 전달하는 데 사용
-
DDE는 명령 줄 실행에 직접 액세스 할 수 없는 손상된 시스템에서 작동하는 공격자도 활용 가능
-
완화 방법으로는 응용 프로그램 격리 및 샌드박싱, 엔드 포인트의 동작 방지, 비활성화(기능 제거), 소프트웨어 구성 이렇게 4가지가 특징
-
샌드박싱은 제한된 보기가 활성화되어 있는지 확인하며, 동작 방지는 Windows 10에서 ASR(Attack Surface Reduction) 규칙을 사용하면 Office 프로그램에서 DDE 공격 및 자식 프로세스가 생성되는 것을 방지 가능
-
비활성화는 Microsoft Office 기능 제어 보안과 관련된 레지스트리 키는 자동 DDE / OLE 실행을 비활성화하도록 설정할 수 있으며, 또한 Microsoft는 Word 및 Excel에서 DDE 실행을 완전히 비활성화하기 위해 기본적으로 레지스트리 키를 만들고 활성화함
-
마지막으로 소프트웨어 구성은 제한된 보기에서 작동하지 않는 Office 프로그램에서 포함된 파일을 사용하지 않도록 설정
(3) Dynamic Data Exchange 내용 정리
3-1. 정상 용도
-
Dynamic Data Exchange(DDE)는 응용 프로그램 간의 데이터 공유를 위한 방법
-
예로, MS Word 문서와 Excel 문서 간의 데이터 공유
3-2. 악의적 사용
-
공격자는 DDE를 악용하여 임의의 명령 수행 가능
-
MS Office 문서에 악성 DDE 명령을 삽입하여 사용자에게 Spearphishing 가능
-
Visual Basic for App(VBA) 매크로를 사용하지 않고도 명령행 실행 가능
(4) 기법 실습
4-1. Word 프로그램 실행 > 빠른 문서 요소 > 필드 > Formula
-
Microsoft Word 프로그램 실행
-
빠른 문서 요소
-
필드
-
Formula를 선택하고, [확인]을 눌러 실습 진행
4-2. 필드 코드 토클 > 숨겨진 단어 확인
-
수식의 끝이 잘못되었습니다 > 드래그 (마우스 우클릭)
-
필드 코드 토글
-
숨길 단어 입력
-
숨겨진 단어 확인
4-3. 실행
-
파일 저장 > Word 파일 다시 열고, 확인
-
다른 파일을 참조하는 링크 확인 > 예(Y)
-
응용 프로그램 실행 > 예(Y)
-
공격자가 의도한 악성코드가 실행되는 방식
(5) Dynamic Data Exchange 추가 내용
-
ID : T1173
-
전술 : Execution
-
플랫폼 : Windows
-
필요 권한 : User
-
데이터 소스
-
API 모니터링
-
DLL 모니터링
-
프로세스 모니터링
-
윈도우 레지스트리
-
윈도우 이벤트 로그
-
# Reference
'Incident Response > Execution' 카테고리의 다른 글
[Incident Response] T1061 Graphical User Interface (0) | 2020.05.27 |
---|---|
[Incident Response] T1203 Exploitation for Client Execution (0) | 2020.05.27 |
[Incident Response] T1196 Control Panel Items (0) | 2020.05.27 |
[Incident Response] T1223 Compiled HTML File (0) | 2020.05.27 |
[Incident Response] T1059 Command-Line Interface (0) | 2020.05.26 |