abex crackme#2 : 프로그램을 분석해서 사용자가 입력한 이름과 관련있는 일련번호를 찾아내기
이름과 시리얼 번호가 너무 짧아도 안됨
이름과 시리얼 번호가 매치가 안될 때 생기는 화면
프로그램 실행
프로그램 실행 시 사용자 입력을 기다리는 창 확인 가능
F9 입력 시
우측 하단에 Debuggee Status가 Running으로 바뀐 것 확인 가능
현재 상태가 running이기 때문에 꺼지지 않음
문자열 검색
[All referenced strings] 메뉴 클릭 시 프로그램에서 사용하는 전체 문자열을 확인 가능
찾고 싶은 문자열 더블클릭하면 해당 문자열로 바로 이동 가능
위 내용을 보고 0040237C를 스택에 복사하려는 것을 확인 가능
즉 Please enter at~~~ 이 내용은 0040237C에 저장되는 것을 확인 가능
[Follow in Disassembler] : 코드 화면으로 바로 이동
[Search for text] : 문자열 검색 기능
코드 분석
[Analyse code] 어셈블리어 코드 분석하는 기능, 자동으로 적용되며 사용자가 이해하기 쉽게 코드 변환해줌, 틀자마자 보이는 디폴트 화면
[Remove analysis from module] 모듈에서 코드를 분석한 내용 모두 제거
[Remove analysis from selection] 선택된 영역에서만 코드를 분석한 내용을 제거
스택분석
변수를 스택에 저장해서 함수로 전달할 수 있고 서브루틴에서 사용되는 변수를 저장하는 공간으로 활용
서브 루틴을 수행하기 전에 메인 루틴의 레지스터를 스택에 저장할 수 있음
주소 0040237C에는 "Please enter at least 4 chars as name!"이 저장되어 있고
주소 004023D0에는 "Error!"가 저장되어 있음
00403054 에 브레이크 포인트(F2) 잡고 실행(F9)
실행하면 창이뜨고 창에 짧은 이름과 시리얼 넘버 입력한 후 확인
해당 코드를 00403070까지 실행 되는 것 확인 가능
'정보보안 > 리버싱' 카테고리의 다른 글
리버싱) abexcm3.exe - abex crackme (0) | 2021.05.31 |
---|---|
리버싱) abexcm1.exe#2 - abex crackme 두번째 (0) | 2021.05.30 |
리버싱) abexcm1.exe#1 - abex crackme (0) | 2021.05.01 |
리버싱) 올리디버거 사용법 (abex crackme #1) - 단축키, 올리디버거 필수 사전 지식 (0) | 2021.04.25 |
리버싱) 기초 정적 분석과 기초 동적 분석 (0) | 2021.04.12 |
댓글