Reversing Engineering

PE Viewer로 PE 구조 분석하기: PE-bear 활용법 정리

PE Viewer는 .exe, .dll 등 PE(Portable Executable) 형식의 파일 구조를 시각적으로 확인할 수 있는 도구입니다. 이 글에서는 대표적인 PE Viewer 도구들과, 그 중 PE-bear를 활용한 구조 분석 예시를 간단히 정리합니다.

Ghidra 입문자를 위한 리버싱 가이드

Ghidra는 NSA에서 만든 무료 리버스 엔지니어링 도구로, 실행 파일을 디컴파일하고 분석할 수 있는 강력한 기능을 제공합니다. 이 글은 설치부터 실습까지 Ghidra 입문자가 따라 하기 쉽게 정리된 단계별 사용 가이드입니다.

리버싱 엔지니어링 기초 정리

리버싱(Reverse Engineering)은 소스코드 없이 프로그램을 분석해 동작 원리를 파악하는 기술입니다. 이 글에서는 정적/동적 분석 방식의 차이와 리버싱 목적, 필요한 배경지식까지 처음 배우는 사람도 이해할 수 있게 정리합니다.

PE 구조 분석 완전 정복

Windows 실행파일이 어떻게 구성되어 있고, 어떤 순서로 메모리에 로딩되는지 궁금하셨나요? 이 글에서는 PE 구조의 전반적인 구성과 주요 필드들의 역할, RVA 변환 방식까지 하나씩 정리해봅니다.

Disassembly 함수 호출 및 재귀 분석: C++ → 어셈블리 흐름 정복

C++에서 함수 호출과 재귀 함수는 어셈블리에서 어떻게 나타날까요? 이 포스트에서는 call, ret, ecx, eax, rsp를 통해 함수 호출과 재귀 구조가 어떻게 구현되는지를 디스어셈블리로 명확히 분석합니다. 스택 프레임의 변화를 이해하면 리버싱 실력이 한층 더 올라갑니다.

Disassembly 실전 분석편: if문과 for문 C++ → Assembly 흐름 이해

C++의 조건문과 반복문이 디스어셈블리에서 어떻게 구현되는지 궁금하신가요? 이 포스트에서는 Visual Studio 디버거를 활용해 if문, for문을 실제 실행파일 수준에서 분석하고, cmp, jmp, jge, add 등의 핵심 명령어 패턴을 정확히 짚어드립니다.

Disassembly란? 실행파일을 Assembly로 분석하는 방법

실행파일을 어셈블리 코드로 분석하고 싶다면 이 포스트를 참고하세요. Disassembly 기본 개념, C++ → Assembly 흐름, Visual Studio로 디스어셈블리 실습, 스택/레지스터 동작 구조까지 예제를 통해 쉽게 정리합니다.