정답은 무엇인가
본격적인 분석에 앞서 프로그램을 실행시켜보겠습니다.
보통의 키젠 문제처럼 보입니다.
이제 OllyDBG로 열어보겠습니다. 라고 말하는 순간 OllyDBG가 에러를 뱉어냅니다.
흠... 일단 PEiD로 열어보겠습니다.
C#으로 짜여진 프로그램이라는 것을 확인할 수 있습니다.
OllyDBG는 C#으로 만들어진 프로그램을 디버깅할 수 없다는 약점이 있습니다.
그래서 저는 C# 디컴파일러 도구인 dotPeek을 이용해보겠습니다.
프로그램의 디컴파일된 C#코드를 확인할 수 있습니다.
이 코드들을 Visual Studio에서 열어보겠습니다.
이 기능을 이용해서 코드를 파일로 출력할 수 있습니다.
Visual Studio에서 잘 열리는 것을 확인할 수 있습니다.
C#코드를 분석해보면 입력한 값이 str과 같지 않으면 실패 메시지를 출력하고 성공할 때 까지 반복하는 것을 알 수 있습니다.
이제 코드를 간단하게 수정해서 str의 값을 알아내보겠습니다.
코드 한 줄을 추가해서 str의 값을 출력하게 해 보았습니다.
이제 프로그램을 실행시켜서 결과를 확인해보겠습니다.
Please enter the password: 아래에 어떤 문자열이 출력된 것을 확인했습니다.
저 문자열을 입력해보겠습니다.
성공메시지가 출력됩니다.
Flag: Leteminman
'CodeEngn Write Up > Basic' 카테고리의 다른 글
CodeEngn Basic RCE L15 Write Up (3) | 2022.03.11 |
---|---|
CodeEngn Basic RCE L14 Write Up (0) | 2022.03.11 |
CodeEngn Basic RCE L12 Write Up (1) | 2022.02.21 |
CodeEngn Basic RCE L11 Write Up (0) | 2022.02.17 |
CodeEngn Basic RCE L10 Write Up (1) | 2022.02.10 |