3. Reversing & Cryptography

1. 브레이크포인트(BreakPoint) 브레이크포인트는 소프트웨어 개발 과정에서 프로그램의 실행을 일시적으로 중단시킬 수 있는 지점을 의미하며 중단점이라고 불린다. 디버깅 도중 특정 코드 줄이나 조건에서 실행을 멈추고 해당 시점에서의 변수 값, 메모리 상태, 레지스터 값 등을 분석할 수 있게 한다. 브레이크포인트는 구현 방법과 사용 목적에 따라 소프트웨어 브레이크포인트(Software BreakPoint), 하드웨어브레이크포인트(Hardware BreakPoint), 메모리 브레이크포인트(Memory BreakPoint)로 구분된다. 2. 소프트웨어 브레이크포인트(Software BreakPoint) 소프트웨어 브레이크포인트(Software BreakPoint)는 소프트웨어 개발 및 디버깅 과정에서 프..
1. Tutorial Games Level #2 1.1 게임 설명 Tutorial Games Level #2은 플레이어가 자신의 비행기(빨간색)로부터 총알을 발사하여 두 대의 적 비행기(초록색)를 파괴하는 것이 목표이다. 그림 1에서 볼 수 있듯이, 플레이어 비행기가 총알을 발사할 때 적 비행기도 동시에 총알을 발사한다. 적 비행기가 발사한 두 발의 총알이 플레이어 비행기를 맞출 경우, 플레이어 비행기의 체력이 4씩 감소한다. 총알 발사 : Space Bar Player 비행기 이동 : 키보드 방향 2.2 풀이 과정 플레이어 비행기의 체력을 높여, 적 비행기가 공격해도 파괴되지 않도록 한다. 처음 게임 실행 시 플레이어 비행기의 체력은 100이므로, Cheat Engine 프로그램에서 100을 입력 후 ..
1. Tutorial Games Level #1 1.1 게임 설명 Tutorial Games Level #1은 주어진 총알 5발을 가지고, 과녁을 파괴해야 하는 게임이다. 그림 1의 4번 항목과 같이 마지막 총알 (5 번째 총알)을 과녁에 적중시키려 할 때, 총알이 RELOADING 되면서 과녁의 체력이 다시 채워진다. 총알 발사: Space Bar 1.2 풀이 과정 과녁의 체력이 얼마나 선언되어 있는지, 또 그 체력이 어떤 데이터 타입으로 선언되어 있는지 모르기 때문에 Cheat Engine 프로그램에서 Scan Type을 "Unknown inital value", Value Type을 "All"로 설정하여 First Scan을 수행한다. 과녁의 체력을 찾기 위해서, Scan Type을 "Decreas..
문제 제작은 해당 사이트를 참고하였다. https://itleader.tistory.com/179 Ⅰ. 문제 소개 C# 언어 기반 유니티 엔진을 이용해 마우스 클릭 게임 제작하였다. 문제를 직접 제작했지만, 풀이자의 관점에서 글을 작성하였다. 실행 파일은 Mouse Click.exe이며, 문제 설명은 Readme.txt 파일을 열어 확인한다. 1.1 게임 실행 시 UI 화면 실행 파일인 Mouse Click.exe 파일 실행하면, 1번 그림과 같이 제한시간 20초가 흘러가고, 포켓몬 볼을 클릭 시 숫자 5000이 1씩 감소하는 모습을 볼 수 있다. 제한 시간이 종료되면, 2번 그림과 같이 다시 시작 버튼이 활성화된다. 다시 시작 버튼을 클릭하면, 3번 그림과 같이 게임이 재시작된다. Ⅱ. 문제 풀이 2...
1. Tutorial Games Level #3 1) 게임 설명 해당 게임은 오른쪽 문을 열기 위해 위에 있는 모든 발판을 초록색으로 만들어야 한다. 캐릭터가 적들에게 부딪히면, 게임이 종료된다. 2) 풀이 과정 밟아야 할 블록의 개수는 12개이다. 블록의 개수가 11개가 아닌 12개인 이유는, 캐릭터가 처음 게임 시작 시 해당 발판도 밟기 때문이다. 게임 발판을 하나씩 밟으면서 스캔을 시작한다. (3개의 발판 활성화) CheatEngine에서 Value 값으로 스캔한다. 결과 값이 한 개 나왔으며, 해당 Value를 12로 수정한다. 다음 그림을 살펴보면, Value 값 수정 시 모든 적들이 문 앞을 가로막게 된다. 문 앞에서 Value의 값을 수정한다면, 문제를 해결할 수 있을 것이라 판단하였다. 게..
dhkstn
'3. Reversing & Cryptography' 카테고리의 글 목록