문제가 아무것도 없습니다…..simple 그 자체입니다…
다운받아서 실행시키면 아래와 같이 콘솔창에서 실행됩니다.
이번에도 key를 찾는 것이라 생각됩니다. 여느 때와 같이 올리디비거에서 실행해보겠습니다.
실행시키면 아래와 같은 에러 메시지를 띄웁니다.
무슨 파일이길래 이러는 지 확인하기 위해 PEiD를 이용하겠습니다.
.NET 을 이용하는 C# 프로그램이었습니다. 지금까지 풀어온 문제 파일들과 뭐가 다른가 하면
지금까지의 프로그램은 전부 Window에서만 실행이 가능한 PE 파일들이었습니다. 이런 프로그램들은 리눅스에서 실행이 불가능합니다. 하지만, JAVA나 C# 같은 언어는 운영체제(OS: Window, Linux 등)에서 바로 실행되는 것이 아니라 각각 JVM, CLR 등을 통해 실행되기 때문에 올리디버거같은 툴로는 리버싱을 할 수 없고 별도의 툴을 이용하여 해결해야 합니다. 여기서는 .NET Reflector 를 이용하겠습니다. 사용법은 간단합니다.
우선 파일을 열면 왼쪽에 ConsoleApplication3 가 새로 생성됩니다. 여기서 main 부분을 찾으시면 됩니다.
찾으시면 오른쪽에 위와 같이 디컴파일된 소스가 보이게 됩니다. 그 후 소스를 분석하셔서 찾으셔도 되지만 좀더 쉬운 방법으로 찾겠습니다.
우선 왼쪽의 ConsoleApplication3 (1.0.0.0) -> 마우스 우클릭 -> Export Source Code 를 클릭합니다.
소스코드를 저장할 폴더를 지정하신 후 start를 누르면 소스파일들이 저장됩니다.
빼낸 소스파일들을 비주얼 스튜디오와 같은 컴파일러를 통해 키를 출력하도록 수정하신후 재컴파일을 하시면 문제는 간단히 해결됩니다.
소스파일이 생성될 때 csproj 파일도 같이 생성되므로 비주얼 스튜디오에서 프로젝트 열기로 바로 불러올 수 있습니다.