Trainings

Advanced Windows Malware Analysis

최근 윈도우즈 시스템에서의 말웨어들은 보안 장치들의 탐지를 피하기 위해서 여러가지 복잡한 기법들을 혼용하여 사용하는 추세를 보이고 있습니다. 다른그림이 제공하는 Advanced Windows Malware Analysis 코스에서는 최근의 이러한 변화에 발맞춰 최신 말웨어 분석 기...

Frida Basics

Frida를 이용하여 윈도우즈 리버스 엔지니어링 기본을 설명하는 클래스입니다. 중간 레벨의 난이도를 가지고, 윈도우즈 리버싱을 통해서 얻어진 여러 정보들을 바탕으로 후킹 코드들을 실제로 작성하고 그러한 코드들을 이용하여 프로그램의 행위 정보 수집과 함께 말웨어 분석, 익스플로잇 분...

Hardware Reverse Engineering

최근의 시큐리티 필드에서는 하드웨어 리버스 엔지니어링의 중요성이 점점 커지고 있습니다. 이러한 시점에서 소프트웨어 리버스 엔지니어가 하드웨어 리버스 엔지니어링의 세계에 진입하기 위해서는 가파른 러닝 커브가 존재합니다.

IoT Firmware Exploit Hunting

IoT 펌웨어를 분석하고, 에뮬레이터를 사용하여 취약점을 분석하고 간단한 POC 레벨의 익스플로잇을 작성할 수 있도록 도와 주는 트레이닝 코스입니다. 다년간 IoT 디바이스 해킹에 두각을 보이고 있는 트레이너가 어떠한 툴과 절차를 사용하여 1-day 헌팅과 조금 더 나아가 변종 취...

Malware Detection With Machine Learning

이 코스는 실제로 공개된 툴들을 사용하여 실제로 이벤트 수집과 분석, 머신 러닝 모델 구축이 가능한지에 대한 전반적인 지식을 전달하도록 설계되었습니다. 윈도우즈 머신의 이벤트 헌팅과 행위 정보 수집 등에 대해서도 다룹니다. 예제로 사용하는 Sysmon은 여러가지 제약에도 불구하고,...

윈도우즈 파워쉘 보안과 악성 코드 분석

파워쉘 보안에 대한 기본 개념에 대한 소개와 함께 실재 파워쉘 악성 코드들에 대한 분석 전략에 대해서 학습니다. 이를 통하여 실제 현장에서 파워쉘 악성 코드들에 대한 이해도를 높이고, 실제적으로 엔터프라이즈 환경에서 파워쉘에 대한 통제와 가시성을 어떻게 확보할 수 있을지에 대해서 ...

PyKD Basics

PyKD는 윈도우즈의 기본 디버거이면서 가장 파워풀한 디버거중의 하나인 WinDbg의 API들을 Python을 통하여 접근할 수 있게 해주는 툴입니다. PyKD를 사용하여 윈도우즈 리버스 엔지니어링의 기본을 설명하는 클래스입니다. 레벨 3의 난이도를 가지고 있는 리버스 엔지니어링 ...

Reverse Engineering++ For Exploit Analysis

리버스 엔지니어링은 엔지니어링 과정을 거꾸로 되짚어 어떠한 메커니즘이 작동하는 원리를 연구하는 엔지니어링의 한 분야라고 볼 수 있습니다. 언제 리버스 엔지니어링이 필요할까요? 리버스 엔지니어링은 주로 설계도가 없는 상태에서 하드웨어 메커니즘을 연구하여 비슷한 물건을 만들어 내기위해...

Time Travel Debugging Basics

TTD (Time Travel Debugging)를 이용하여 윈도우즈 리버스 엔지니어링에 대한 설명과 함께 프로그램의 RCA (Root Cause Analysis)를 수행하는 작업을 수행하는 코스입니다. 간단한 예제부터 시작해서, 여러 타겟에 대해 TTD를 적용하고, RCA와 프로...

WinAFL Basics

WinAFL은 AFL에 기반한 윈도우즈용 퍼징 프레임워크로서 Code-Coverage Guided 퍼징을 위한 표준 툴로 자리 잡았습니다. AFL은 LLVM 등을 사용하여 소스 코드를 확보한 경우에 소스 코드 인스트루멘테이션을 통하여 코드 커버리지 확보를 위한 코드를 삽입합니다. ...

Using Intel PT For Root Cause Analysis

Intel PT는 프로세서 레벨에서 로우레벨 인스트럭션들의 실행을 모니터링할 수 있는 방법을 제공합니다. 기존의 브랜치 레코딩 방식이 인터럽트를 사용하여 퍼포먼스 상의 많은 단점이 있었던 데에 비해서 최소한의 퍼포먼스 저하만으로도 빠른 속도로 프로그램이나 커널 코드들의 실행을 추적...

WinAFL Basics

WinAFL은 AFL에 기반한 윈도우즈용 퍼징 프레임워크로서 Code-Coverage Guided 퍼징을 위한 표준 툴로 자리 잡았습니다. AFL은 LLVM 등을 사용하여 소스 코드를 확보한 경우에 소스 코드 인스트루멘테이션을 통하여 코드 커버리지 확보를 위한 코드를 삽입합니다. ...

WinDbg Basics

WinDbg는 CLI와 GUI에 기반한 윈도우즈의 기본 디버거입니다. 마이크로소프트사에서 개발되어 내부의 여러 개발 작업과 디버깅 작업, 그리고 크래쉬 분석 등을 이용해서 사용됩니다. 다만, 고급 기능들은 어려운 명령어를 사용하여야 하는 경우가 많아서 초보자의 경우 많은 혼란을 겪...

Windows Kernel Debugging Basics

윈도우즈 커널 익스플로잇 분석을 위한 윈도우즈 커널 디버깅 기법에 대한 트레이닝입니다. LiveKD 등을 사용한 커널 이미지 확보, VMWare, VirtualBox, Hyper-V 등의 가상 머신을 통한 커널 디버깅 셋업 과정, 보안의 관점에서 커널 디버깅에 접근하는 방법론을 학...

Windows Kernel Exploit Experiments

최근 몇년간의 윈도우즈 커널 익스플로잇들을 분석하고 공격 기법과 방어 기법에 대해서 학습니다. 여러 새롭게 도입된 mitigation 등에 의해서 방어가 가능한 기법들부터, 근본적으로 해결이 불가능한 여러가지 공격 기법들의 자세한 내용을 윈도우즈 커널 디버깅과 함께, 익스플로잇 작...

Windows Mitigations

최근 Windows Mitigation 테크놀로지 자체가 너무 방대해 지고 있습니다. 이해를 높이기 위해서 종류를 나누자면, 먼저 많은 리서쳐들이 그 동안 공부해 왔고 관심이 많았던, exploit-focused mitigation들이 있습니다. 메모리 커럽션등에 대항해서 만들어진...