Lena's Reversing for Newbie 09 Write-Up
파일 링크: https://tuts4you.com/e107_plugins/download/download.php?list.17
Downloads / Lenas Reversing for Newbies - Tuts 4 You
tuts4you.com
Tutorials Index: 09. Explaining the Visual Basic concept, introduction to SmartCheck and configuration
사용도구: 올리디버거 2.01, Detect It Easy 2.04
Lena's Reversing for Newbie 09(이하 원본파일) 분석해보자.
원본파일을 실행하면 설치를 진행한다.
설치는 어렵지 않다. 설치를 하면 위와 같은 파일, 폴더들이 생성된다.
프로그램을 실행하면 위와 같이 key를 입력하라고 나온다.
등록을 실패하면 "Error Registration Key" 문자열을 출력한다. 여기서 별도로 이름 등과 같은 값을 추가로 입력하지 않고 있다. 즉, key 값은 특정한 값으로 하드코딩되어 있을 수 있다.
Detect It Easy 도구로 프로그램을 살펴보면 Visual Basic 언어로 만들어진 것을 확인할 수 있다.
위와 같이 Visual Basic 언어로 컴파일된 것을 확인할 수 있다.
code 섹션에서 우클릭 - Search for - Name 기능을 클릭하면 실행 파일에서 사용하는 모든 모듈을 확인할 수 있다. Visual Basic에서 문자열 비교 함수는 다음과 같다.
1. vbaBarTstEq
2. vbaVarTstNe
3. vbaVarCmpEq
4. vbaStrCmp
5. vbAstrComp
6. vbaStrCompVar
위 함수들이 쓰이는 곳을 모두 확인해야 한다.
첫 번째로 vbaVarTstEq 함수가 사용되는 곳부터 디버깅해보자.
디버깅을 하다보면 위와 같이 "oeiu-564-oqei-97" 문자열을 확인할 수 있다. 시리얼 같이 생겨서 입력을 해봤다.
성공했다. key 값은 하드코딩되어 있었다.
'Wargame > Lena’s Reversing for Newbies' 카테고리의 다른 글
Lena's Reversing for Newbie 11 Write-Up (0) | 2019.08.06 |
---|---|
Lena's Reversing for Newbie 10 Write-Up (0) | 2019.08.06 |
Lena's Reversing for Newbie 08 Write-Up (0) | 2019.08.05 |
Lena's Reversing for Newbie 07 Write-Up (0) | 2019.08.05 |
Lena's Reversing for Newbie 06 Write-Up (0) | 2019.08.05 |