일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- 리버싱
- Couldn't in
- Couldn't invoke the file
- 8번문제
- 시스템
- WTF_CODE
- Basic RCE
- BasicRCE
- 포렌식
- 치트엔진 튜토리얼
- 써니나타스
- CodeEngn
- 6번문제
- 3번문제
- WarGame
- xcz.kr
- 치트엔진 튜토리얼 게임
- 1번문제
- wargame.kr
- xcz.kr prob
- 치트엔진
- 워게임
- cheatengine
- Web
- 워게임풀이
- xcz.kr 문제풀이
- CheatEngine Tutorial
- reversing
- suninatas
- 오토잇디컴파일
- Today
- Total
목록W4RG4M3/R3V3RS1NG (44)
HackChang

치트엔진 튜토리얼 7 이번 문제 같은 경우는 스캔을 통해 찾은 값을 코드 인젝션을 통해 1씩 감소하는 Health를 2씩 증가하도록 만드는 문제이다. 우선 전에 풀었던 문제들과 동일하게 스캔을 진행해보도록 하겠다. 스캔 과정은 생략하도록 하겠다. 값이 한개 나왔고, 해당값이 메모리에서 어떻게 쓰이는지 보기위해 F6을 눌러 opcode write를 보도록 하겠다. Hit me를 눌러 메모리에서 위와같이 쓰이고 있음을 알 수 있게 되었다. 메모리뷰에서 해당 값으로 이동해보도록 하겠다. 값을 클릭 후 Show disassembler를 누르면 해당 주소로 이동된 메모리뷰를 볼 수 있다. 우리의 목표는 1씩 감소되는 것을 2씩 증가하도록 코드인젝션을 하는 것이기 때문에 opcode부분을 더블클릭하여 어셈블리어를 ..

치트엔진 튜토리얼 6 이제부터 문제 난이도가 조금 있는 편이다. 우선 이번 문제는 포인터관련 문제인데 튜토리얼을 진행하면서 프로그램을 껏다키고 다시 진행한 경우가 있을 것이라고 생각된다. 그럴 때마다 값을 미리 구해서 주소목록에 두었더라도 벨류값을 똑같이 수정해도 바뀌지 않는 것을 본 적이 있을 것이다. 포인터는 이러한 문제를 해결하고, 다시 문제를 풀게될 경우도 벨류를 수정하면 계속 적용할 수 있다. 자세히 공부하지 못하고, 글을 적는 것이기 때문에 설명이 부족할 수 있다.. 우선 진행해보도록 하겠다. 튜토리얼 프로그램의 벨류를 검색했다. 전에 풀던 문제들과 동일하게 스캔하여 값을 줄이도록 하겠다. 값을 주소목록으로 내려 문제에서 요구하는대로 5000으로 바꾸도록 하겠다. 벨류를 5000으로 변경했지만..

치트엔진 튜토리얼 5 해당문제는 스캔을 통해 나온 결과값이 메모리에서 어떤식으로 변경되는지 보고, 해당 메모리를 반응하지 않도록 바꾸면 클리어 되는 문제이다. 우선 스캔을 통해 값을 찾아보도록 하겠다. 한 두번의 스캔으로 간단하게 값을 찾을 수 있었고, 해당 값을 아래 주소목록으로 더블클릭해서 내렸다. 주소목록에 옮겨진 값을 오른쪽 마우스 눌러 Find out what writes to this address를 눌러보도록 하자. Yes를 눌러 진행한다. 이런 창이 나온 것을 볼 수 있고, 튜토리얼에서 Change Value를 눌러보도록 하겠다. 이렇게 값이 나온 것을 볼 수 있고, 값을 클릭 후 오른쪽의 Replace를 눌러 아래와 같이 수정한다. 위와 같이 수정 후 OK를 누른 후 튜토리얼 프로그램에서..

치트엔진 튜토리얼 4 이번 문제는 1번과 상당히 비슷한데 단지 벨류타입이 정수형이 아닌 float double이므로 스캔을 float, double로 진행 후 벨류는 5000이상으로 바꾸면된다. 간단하게 사진으로 설명하도록 하겠다. float으로 지정 후 100을 스캔하겠다. 검색결과가 나왔지만 무엇이 Health를 가르키는지 알 수 없어 Hit me를 누르고 다시보도록 하겠다. 바뀐 벨류는 빨간색으로 표시되는 것을 볼 수 있고, 해당 값을 주소목록으로 내리고 아머 부분을 찾도록 하겠다. 검색 결과가 2개지만 무엇이 아머인지 알 수 없으므로 똑같이 Fire를 누르고 보도록하겠다. 아래의 값이 아머이고, 이 값 또한 더블클릭하여 주소목록으로 내려 벨류를 둘 다 5000이상으로 바꾸도록 하겠다. 간단하게 클..

레벨2 처음봤을 때 레벨1과 비슷한 느낌이다. 하지만 첫 Health를 알 수 없는 문제이고, 아래 내려보면 Health가 0~500사이의 값이며, 5000으로 수정하면 클리어할 수 있다고 나온다. 이번 문제는 스캔타입을 바꾸면 쉽게 클리어할 수 있는 문제다. 우리가 여기서 사용할 수 있는 스캔타입은 2가지이다. 우선 0~500사이의 값이라고 나왔기 때문에 Value between과 값을 모르기 때문에 Unknown initial value로 스캔을 할 수 있다. Unknown initial value타입으로 문제를 해결해보도록 하겠다. 기회가 된다면 Value between으로도 문제를 해결해보도록 하자. 716,800개의 스캔결과가 나왔지만 너무 많은 결과로 아래 목록이 나오지 않는 것이다. 다음으로..

* 치트엔진 다운로드는 아래 URL에서 할 수 있다. https://cheatengine.org/ Cheat Engine Cheat Engine Download Cheat Engine 7.1 for Mac Read before download: Cheat engine is for private and educational purposes only. Before you attach Cheat Engine to a process, please make sure that you are not violating the EULA/TOS of the specific game/appli cheatengine.org 위의 URL에 들어가 다운로드를 하면 된다. 설치과정은 생략하고 바로 진행하도록 하겠다. 치트엔진 튜토..

Advance RCE L09 Password는 무엇인가 Password를 찾는 문제이다. PEID부터 올려보도록 하겠다. 아직 잘 모르겠어서 올리디버거에 올려봤다. F8을 눌러 한줄씩 실행하면서 찾아보도록 하겠다. 프로그램에 name과 password는 1234도 통일하고 진행했다. CALL되는 부분을 F7로 들어가서 확인 결과 Username이 DonaldDuck이라는 것을 알게되었다. 다시 name을 DonaldDuck으로 바꾸고 Password에 1234를 넣고 진행해봤다. 해당 CALL문에서 걸리기때문에 F7로 들어가보도록 하겠다. 뭔가 입력값을 비교하는 부분이라고 생각되어 한줄씩 진행해봤다. EAX에 값을 넣는것을 볼 수 있었고, 아래 EAX와 ECX를 비교하는 것을 볼 수 있었다. 4D2는 1..

Advance RCE L08 Key 값이 5D88-53B4-52A87D27-1D0D-5B09 일때 Name은 무엇인가 힌트 : Name은 두자리인데.. 알파벳일수도 있고 숫자일수도 있고.. 정답인증은 Name의 MD5 해쉬값(대문자) PEID로 먼저 열어보기로 했다. 델파이로 만들어진 프로그램인 것을 볼 수 있었고, 올리디버거로 열어봤다. 스트링검색부터 해보도록 하겠다. 저번 7번 문제가 상당히 골치아파서 역시 Advance 문제인가 했지만 성공메세지가 너무 쉽게 노출되는 것을 보고, 아직 쉬운 레벨인 것을 느꼈다.. 성공메세지와 실패메세지 위의 PUSH EBP에 BP를 걸고 실행했다. 폼에 키를 적고, 네임은 12으로 하여 체크를 했다. 위의 BP부분에서 걸렸고, 3글자 이상으로 입력하도록 된 것을 볼..

Advance RCE L06 남은 군생활은 몇일 인가 정답인증은 MD5 해쉬값(대문자) 변환 후 인증하시오 정말 문제부터 별로였다.. PEID에 올려보기 부터 시작하겠다. UPX로 패킹이 되어있는 것을 볼 수 있다. 툴을 이용하여 간단하게 언패킹을 진행했다. 언패킹 후, 올리디버거로 열어봤다. 안티디버깅이 적용된 것을 확인할 수 있었고, 간단하게 우회했다. 우회방법은 이전 글에서 소개되어있으니 참고하면 될 것 같다. 실행했을 때 메세지박스가 나오기 때문에, 올리디버거에서 messagebox와 관련된 함수를 검색해봤다. 역시나 존재하는 것을 알 수 있었고, 해당 함수에 BP를 걸고 실행해봤다. 아래의 스택에 보면 프로그램 실행시 나오는 메세지박스와 동일하다는 것을 알 수 있었고, 노가다를 통해 비교하는 부..

Advance RCE L05 Serial 을 구하시오 항상 해왔던 것처럼 PEID에 올려봤다. 비주얼 베이직으로 만든 프로그램인 것을 볼 수 있었고, 실행을 시켜봤다. 실행시키면 위와 같은 프로그램이 나오게 된다. 자세히 보기위해 올리디버거로 열어보도록 하겠다. 우선 함수부터 찾아보기로 했다. 많은 함수들을 찾았지만, 여기서 익숙한 함수를 보게되었다. 비주얼 베이직 프로그램의 문자열 비교 함수인 __vbaStrCmp를 찾았고, 해당 부분에 BP를 걸고 실행시켜봤다. 프로그램에 12345를 입력하고 ok를 눌렀다. BP를 걸어둔 부분에서 걸리는 것을 볼 수 있고, 12345는 입력값이고, ECX의 값이 시리얼값이라고 추측된다. 이렇게 프로그램을 재실행 후 시리얼값으로 추측되는 값을 넣으면 해당 메세지박스가..