전체 글

전체 글

    CodeEngn Advance07 풀이

    시리얼을 찾아내는 문제같네요. 프로그램을 확인해보니 C#프로그램이였습니다. 처음에 ExeInfo로 파일부터 확인하는 습관을 들여야겠네요..처음에 아무생각없이 바로 디버거로 열었다가 뻘짓만했네요..C#프로그램에대해 간단하게 설명하면 CLI 인프라스트럭쳐 안에 CIL 이라는 중간언어를 CLR이라는 가상환경에서 돌리고 CLR이 CIL(공통중간언어)를 실행시킵니다.(바이트형태) 이 특징때문에 dotPeek 같은프로그램을 사용하면 코드가 그대로 드러납니다.(패킹,난독화 안되있을시) dotPeek으로 열어보았습니다.이프문을 통과해야지 밑의 성공메세지를 띄웁니다. 프로그램분석을 힘들게하기위해 변수명같은걸 아무 의미없는 문자로 해놓은거같네요.dotPeek에서 프로젝트를 export한뒤 비쥬얼스튜디오로 열어주고, Bru..

    CodeEngn Advance06 풀이

    띠용... 문제가 남은 군생활 구하는 문제입니다.. 무슨 프로그램인지 궁금하네요 ㅋㅋㅋ실행하면 이런 메세지가뜨고 확인을누르면 숫자가 1씩 계속증가합니다.아마도 어떤특정한 값이되면 프로그램이 종료될거같네요. 메세지박스를 출력하는부분입니다. 프로그램종료를위해 값을비교하는부분이 밑에있겠다라고 예상해볼수있습니다.트레이싱하다보니 메세지박스의 내용안에 값을세팅하는 부분이있었습니다.이값은 eax값을 받아와서 출력을위해 숫자값을 아스키코드값으로 변경 시켜주고 있었는데요. 아마 프로그램종료를 위해 eax값이랑 어떤부분을 비교하겠죠? 그럼 eax값이 어디서 세팅되는지 알아보아야된다는 생각에 치트엔진을 써보았습니다.치트엔진이 생각외로좋더라구요 특정주소에 쓰거나 접근하는 주소를 찾는데는 참 편리합니다. 메세지박스의 내용부분의..

    CodeEngn Advance05 풀이

    시리얼을 구하는 문제입니다.음 혹시나 문자열 비교함수가 있는가해서 가보니 딱하나있네요.. 너무나 쉽게 발견해버림..제가 임의로 입력한값인 123 하고 실제 시리얼값을 비교하고있습니다. 시리얼값은 677345 입니다. 풀이완료!