코드엔진 베이직 4번 : 디버거를 탐지하는 함수의 이름은?
정상이라 뜹니다. 그럼 디버거를 사용해 실행시켜봅시다.
디버깅 당함이라 뜨네요!
베이직 문제 3번 풀이에서 썼던 올리디버거의 기능을 씁시다.
[마우스 우클릭]->[search for]->[All intermodular calls]
들어가면 이 프로그램에서 사용한 함수만 나열됩니다.
제일 처음 쓰인 함수부터 보니
IsDebuggerPresent 라는 함수가 있네요. 이름부터 수상하니 더블클릭해서 들어가봅니다.
우선 이 함수의 역할을 알기 위해 bp를 걸고 실행시켜봅시다.
이 함수를 지나기 전 EAX의 값은 0 이지만
지난 후 EAX의 값은 1이 됩니다. 계속 실행시켜보면,
콘솔창에는 디버깅 당함이라 뜨고, EAX의 값은 0으로 초기화되어있고 다시 IsDebuggerPresent 함수로 돌아오는 모습을 볼 수 있습니다.
IsDebuggerPresent 함수의 반환값을 0으로 바꾸고 다시 진행시켜보면,
짠! 정상이라 뜨네요.
이로써 답을 구했으니 확인을 해봐야겠죠?
다음 문제가 나왔네요 XD
모두 화이팅하세요!
'Security > CodeEngn' 카테고리의 다른 글
CodeEngn_Basic_06 (0) | 2018.08.12 |
---|---|
CodeEngn_Basic_05 (0) | 2018.08.09 |
CodeEngn_Basic_03 (0) | 2018.08.04 |
CodeEngn_Basic_02 (0) | 2018.08.03 |
CodeEngn_basic_01 (2) | 2018.08.02 |
코드엔진 베이직 4번 : 디버거를 탐지하는 함수의 이름은?
정상이라 뜹니다. 그럼 디버거를 사용해 실행시켜봅시다.
디버깅 당함이라 뜨네요!
베이직 문제 3번 풀이에서 썼던 올리디버거의 기능을 씁시다.
[마우스 우클릭]->[search for]->[All intermodular calls]
들어가면 이 프로그램에서 사용한 함수만 나열됩니다.
제일 처음 쓰인 함수부터 보니
IsDebuggerPresent 라는 함수가 있네요. 이름부터 수상하니 더블클릭해서 들어가봅니다.
우선 이 함수의 역할을 알기 위해 bp를 걸고 실행시켜봅시다.
이 함수를 지나기 전 EAX의 값은 0 이지만
지난 후 EAX의 값은 1이 됩니다. 계속 실행시켜보면,
콘솔창에는 디버깅 당함이라 뜨고, EAX의 값은 0으로 초기화되어있고 다시 IsDebuggerPresent 함수로 돌아오는 모습을 볼 수 있습니다.
IsDebuggerPresent 함수의 반환값을 0으로 바꾸고 다시 진행시켜보면,
짠! 정상이라 뜨네요.
이로써 답을 구했으니 확인을 해봐야겠죠?
다음 문제가 나왔네요 XD
모두 화이팅하세요!
'Security > CodeEngn' 카테고리의 다른 글
CodeEngn_Basic_06 (0) | 2018.08.12 |
---|---|
CodeEngn_Basic_05 (0) | 2018.08.09 |
CodeEngn_Basic_03 (0) | 2018.08.04 |
CodeEngn_Basic_02 (0) | 2018.08.03 |
CodeEngn_basic_01 (2) | 2018.08.02 |