-
교육기간
1개월
-
수업일
평일반(월~금)
주 5일주말반(토, 일)
주 2일 -
상담문의
02-744-6384
리버스엔지니어링 과정 소개
완성된 제품을 분석하여 제품의 근본적인 설계 개념과 적용 기술을 파악하고 재현하는 것을 의미합니다. 설계 개념>개발 작업>제품화의 통상적인 추진 과정을 거꾸로 수행하게 됩니다. 보통 소프트웨어 제품은 판매 시 소스는 제공하지 않으나 각종 도구를 활용하여 컴파일 된 실행 파일과 동작 상태를 정밀 분석하면 그 프로그램의 내부 동작과 설계 개념을 어느 정도 추적할 수 있습니다. 이러한 정보를 이용하면 크랙, 즉 실행 파일을 수정하거나 프로그램의 동작을 변경할 수 있고, 또 유사한 동작의 복제 프로그램이나 보다 기능이 향상된 프로그램도 개발할 수 있습니다. 소프트웨어에 대한 역공학 자체는 위법 행위가 아니지만, 대부분의 제품이 이의 금지를 명문화하고 있어 이러한 수법으로 개발한 제품은 지적 재산권을 침해할 위험성이 있습니다.리버스엔지니어링 과정 학습목표
-
01
역공학(리버스 엔지니어링)의 개념에 대해 이해할 수 있고 CPU의 구조와 레지스터에 대해 이해할 수 있습니다. -
02
리버스 엔지니어링에 사용되는 다양한 도구들의 사용법을 익힐 수 있고 변수와 제어문, 함수 등
다양한 코드 패턴을 통해 분석 기술을 익힐 수
있습니다. -
03
디버깅을 통해 코드를 다시 구현하는 실습으로 디버깅 능력을 키우게 되며 다양한 문제를
이용해 디버깅 능력을 향상시키게 됩니다.
리버스엔지니어링 과정 커리큘럼
주제 | 소주제 |
---|---|
개요 | 리버싱이란? |
IA-32 Basic | |
- CPU의 구조 | |
- Register | |
실습 환경 구축 | |
프로그램 동작 원리 | |
Compiled Code Pattern(변수) | 변수, 포인터, 배열, 구조체 |
리버싱 Tool 소개 및 사용법 | |
Assembly Language 구조 및 기초 | |
Chapter별 종합복습 문제 | |
Compiled Code Pattern(제어문) | 조건문, 반복문, 동적할당 |
제어문 관련 Assembly Language | |
Ollydbg 활용(Search 방법, 인자 전달, Breakpoint, Log 활용) | |
Compiled Code Pattern(제어문) | Win32 Application, WinMain 함수 패턴 |
Application Binary Interface | |
Chapter별 종합복습 문제 | |
Compiled Code Pattern(함수) | 함수 관련 Assembly Language |
Compiled Code Pattern(함수) | 함수 Prologue, Epilogue |
Stack Frame | |
Compiled Code Pattern(함수) | Frame Pointer Omission |
Callee & Caller Saveed Registers | |
Function Calling Convention | |
Chapter별 종합복습 문제 | |
Crack me, Keyzen | Crack me, Keyzen 문제풀이 |
수강신청 절차 안내
-
STEP1
온·오프라인 1:1 교육컨설팅 -
STEP2
학습계획 수립 -
STEP3
교육비 납부 및 수강신청 -
STEP4
교육 진행
교육후기 더보기
-
김광태 #리버스엔지니어링 #정보보안 산업기사 & 기사 #R 프로그래밍 #IT 통합 기초
인문계열 전공자로서 취직이 어려워서 진로를 고민하다가 IT분야를 선택하게 되었습니다.
혼자 공부해보니 이해가 안되서 막막했는데, 아이티뱅크에서 많을 것을 배울 수 있었고, 진로의 선택 폭이 넓어서 추천하고 싶습니다. 최종 목표는 IT보안업계로의 취업입니다. -
박태훈 #C++ #Python 기초
안녕하세요! IT학과를 졸업 후
전공자로서 개발자의 꿈을 키우고 있는 수강생입니다! -
이재현 #R 프로그래밍
경영학 전공자로, 융/복합형 인재를 원하는 현 취업시장에서 나만의 무기를 갖고자 IT분야의 공부를 시작하게 되었습니다