안녕하세요. 오늘은 basic rce level 14 문제를 풀어보겠습니다.

홈페이지로 들어가 basic rce level 14를 눌러주세요.

name이 CodeEngn일때 serial를 구하라는군요. bruteforce가 필요하답니다.

bruteforce는 무차별 대입이란 뜻을 가지고 있습니다. 이는 암호를 알아내기 위해 암호가 될만한 것들을 전부 대입해본다는 뜻이지요. 만약 암호가 4자리라면 0000 0001 0002 부터 시작해서 9999까지 전부 대입해서 암호를 알아냅니다. 이것을 무차별 대입이라고 합니다.

자 그럼 일단 프로그램을 실행시켜 봅시다.

음 창이 하나 뜨는군요. CHECK를 눌러봅시다.

1글자 이상을 채우라고 하네요. 그럼 채워 봅시다.

시리얼이 틀렸다면서 다시 시도하라고 나오네요. 올리디버그로 열어봅시다.

재생버튼을 눌러봅시다.

PUSHAD명령어가 있군요. 앞의 문제에서 설명했다시피 패킹된 파일인 것 같습니다.

확인을 위해 PEiD를 열어서 봅시다.

UPX로 패킹이 된 것을 알 수 있습니다.

UPX로 패킹된 파일은 맨 마지막 줄에 OEP로 갈 수 있도록 표시를 해놓습니다. 어디 한번 찾아봅시다.

마지막 줄을 보시면 특정주소로 점프시키는 명령어가 있습니다. 한번 가봅시다.

눌러주시면

알 수 없는 글자가 뭐라고 뜹니다. 재생버튼을 한번 눌러줍시다.

네 문자열이 보이는 걸로 보아 언패킹 된 부분이 나온것 같습니다.

쭉 내려봅시다.

내리시면 아래와 같은 부분이 나옵니다.


두개의 메세지 박스가 나오는데 하나는 good job이라 뜨고 하나는 아까 보신 실패한 문구가 적혀있습니다. 우리는 시리얼을 찾아야 하므로 성공부분을 자세히 봅시다.








'codeengn' 카테고리의 다른 글

codeengn - basic rce level 17  (0) 2015.09.25
codeengn - basic rce level 15  (0) 2015.08.18
codeengn - basic rce level 13  (0) 2015.08.12
codeengn - basic rce level 12  (0) 2015.08.12
codeengn - basic rce level 11  (0) 2015.08.12
Posted by englishmath
,