코드엔진 사이트에 들어가 basic2 문제를 다운로드 받고 압축을 푼다(비밀번호 : codeengn)
xp 환경에서 파일을 실행해 봤더니 아래와 같은 에러가 뜬다.
주소로 보이는 0f505633c9 가 보인다. 일단 따로 적어 놓았다.
프로그램 실행이 안되니 odb를 이용해 정적분석을 해보자.
안된다.
PeID로 뜯어보자.
PE파일이 아니란다.
그리고 패킹이되어있지 않다.
그럼 HxD 로 뜯어보자.
맨 위에 보이는 4D 5A( MZ ) 라는 코드는 PE파일인지 아닌지를 확인 할 때 사용하고, PE파일 처음부터 2바이트까지 (4D 5A) 로 시작하는 부분이 e_magic 이 차지하는 공간이다.
또 이 바이너리를 계속 확인하다보면 .data 섹션이 나오는데, 이 섹션은 그 속성이 읽고 쓸 수 있는 가장 일반적인 데이터 섹션이다.
또한 전역변수 또는 정적변수를 선언하게 되면 모두 .data 섹션에 위치하게 되어 확인 할 수 있다.
.data 섹션을 따라가다보면 아래와 같은 Raw Data를 확인가능하다.
raw data의 아스키 값에서 해당 파일의 패스워드 JK3FJZH 를 확인 할 수 있다.
# 해당 파일을 PE 구조에 맞게 수정해 일반적인 작동이 가능한 프로그램으로 만드는 방법은 나중에 해보고 올리겠슴ㄴ다
'[Riversing] > [코드엔진] BASIC' 카테고리의 다른 글
[코드엔진] basic6 (0) | 2020.03.25 |
---|---|
[코드엔진] basic5 (0) | 2020.03.25 |
[코드엔진] basic4 (0) | 2020.03.24 |
[코드엔진] basic3 (0) | 2020.03.24 |
[코드엔진] Basic1 (0) | 2020.03.13 |