# Related site issues/CODEENGN

Codeengn Advance 6 풀이. 남은..군생활(?).. MD5 변환하라는 문제.MD5 변환은 이전 문제에서 풀어봤다.일단 파일을 다운로드 받아서 실행해본다. 위와 같은 화면이 등장하는데 확인을 누르면 1인 숫자가 올라간다. 이렇게 숫자가 계속 올라간다는 것을 알 수 있다.일단 ExeinfoPE를 실행해본다. Autoit으로 작성되었다고 나온다.그렇다면 Exe2Aut Decompiler를 사용한다. for문으로 1 to 790까지라고 했다. 즉 790일이라는 것이고 md5 변환한다.나는 전에도 말했듯이 http://www.md5.cz/. 사이트를 이용. 사이트를 이용해서 md5 변환을 해봤고,일단 인증(=Auth)해본다.
Codeengn Advance 5 풀이. 간단하게 serial를 구하라는 문제.일단 파일을 다운로드 받아서 실행해본다.임의로 12345로 입력. Mal Cracker!!!라는 문구가 뜨면서 By jhonjhon_123라는 메시지도 뜬다.ExeinfoPE를 실행해본다. 패킹은 따로 되어 있지는 않고, Visual Basic로 제작되었다.핵심은 문제 자체가 Serial를 구하는 것이기에 사용자 입력 값과 Serial를 비교하는 함수가 쓰였을 것이다.Advance 3번 문제에서도 비슷한 함수인 Istrcmp가 나왔듯이, Visual Basic에서 그 역할을 하는 vbaStrCmp를 유심히 본다.일단 Ollydbg를 실행. 슥 내리다보면 드디어 vbaStrCmp를 찾을 수 있다. 이 부분에 브레이크 포인트를 걸..
Codeengn Advance 3 풀이. Link => https://codeengn.com/challenges/advance/03 시리얼을 구해야 되는 문제.일단 파일을 다운로드해서 실행해본다. 임의로 ID와 PW를 입력하고, Check를 눌렀더니 위와 같은 화면이 등장.맞지 않는 문자열이다라는 문구가 등장.Exeinfo PE를 한 번 실행해본다. 딱히 특별하게 봐야 될 부분은 없고, Not Packed라는 것이 중요.Ollydbg로 실행.실행해보면 많은 코드가 있기에 단서가 될 만한 게 있을까 한 번 살펴본다. 보다보면 Istrcmp 함수를 볼 수 O. F2를 눌러 브레이크를 걸고 실행해본다. 이름은 CodeEngn, 시리얼 문자열이 123, 3265754874라는 것이 나온다.입력해본다. 시리얼을 ..
Codeengn Advance 2 풀이. Link ==> https://codeengn.com/challenges/advance/02 정답은 무엇인가.... 뭔가 심오하다.일단 파일을 다운로드 받아본다. PW를 입력하라는 창이 뜨고, 임의로 입력하고 엔터를 누르니까 프로그램이 꺼진다.일단 Exeinfo PE로 분석해본다. 일단 특별한 패킹은 안 되어 있는 상태이고 C++로 만들어졌다고 나온다.뭘 써도 상관없는데 OllyDbg라고 써 있으니 OllyDbg로 파일을 열어서 아까 창에서 봤던문구열을 찾아본다.OllyDbg 실행. 오른쪽 마우스 => Search for - All referenced text strings. 클릭. 잘 보이게 빨간색으로 표시한 부분을 보면 우리가 02.exe를 실행했을 때 등장했..
Codeengn Advance 1 풀이. Link ==> https://codeengn.com/challenges/advance/01 밀리세컨드..............MD5에 관한 언급이 되어 있다.파일을 다운로드 받아본다. 이강석이라는 사람이 CodeEngn.com을 만들었다...이 문구가 상당히 익숙했다... basic 19번 문제랑 비슷한 느낌이 난다.아마 문제 풀이나 값이 약간 다르고 비슷한 패턴일 거 같다는 추측이 든다.이번에는 PEID 말고 Exeinfo라는 Tool로 확인 해보겠다. 보면 Upx 되어 있고, Autoit으로 만들어져 있다.Exe2aut 디컴파일러로 열어본다. 13.179이라는 숫자가 나왔다.문제에 밀리세컨트라고 나왔으니 단위를 맞춘다. 간단히 구글에서 단위를 검색해봤다.13..
Codeengn Challenges = Basic 20 풀이. 20번이다. Key파일에 들어갈 Key값을 구하는 문제다.일단 Crackme3.key라는 파일이 필요하다.다운로드 후 .exe파일을 실행해본다. 지금 다음의 crackme를 시도해보라는 말이 등장한다.일단 올리디버거를 실행해본다. KEY파일이 18(12)만큼의 바이트가 있는지 확인해본다.12는 HEX. 10진수로는 18. 저 회색 부분을 보면 알고리즘이 나왔는데, 인터넷을 검색해보니 이 알고리즘은 한자리씩 A ~ O까지 XOR 연산을 하는 알고리즘.C로 해석해봤다. Key는 10진수로 18자리니까 123456789123456789로 맞춘다.이 알고리즘은 XOR 연산을 한 뒤에, 연산값을 누적시키는 것이 특징이다.이 값하고 나머지 4자리 값하고..
Codeengn Challenges = Basic 19 풀이. 19번이다.음.............. 몇 밀리세컨트 후에 종료되는지 묻고 있다.일단 밀리세컨트란 millisecond를 말하며 시간의 단위다.ms라고 쓰고, 1ms는 1000분의 1초다.즉 10ms = 100분의 1초. 100ms =10분의 1초. 1000ms = 1초.다운로드를 해서 .exe 파일을 실행해본다. ??????????????????????? 이강석이란 사람이 CodeEngn.com을 만들었다는 메시지가 뜨고,시간 지나니까 자동으로 닫힌다.즉 창이 뜨고 닫히기까지의 시간을 ms 단위로 구해야 한다.올리디버거를 실행한다. 첫 줄에 PUSHAD라는 명령어가 있는 것을 보아 UPX로 패킹되어 있을 확률이 높다.PEID를 실행해본다. ..
Codeengn Challenges = Basic 18 풀이. 18번이다. 이번 문제도 시리얼을 구하는 문제이다.일단 다운로드받아서 .exe 파일을 열어본다. 홈 이름과 시리얼을 적는 부분이 나온다.일단 올리디버거로 열어본다. 성공과 실패 문자열이 보인다. JE를 이용해 성공 문자열 쪽으로 점프하는 것이다.JE는 비교함수에서 쓰이는 두 변수의 값이 같을 때 점프한다. 그런데 CMP가 없다. 위쪽에 박스친 곳을 보면 Istrcmpi라고 이상한 것이 있다.문자열을 비교해주는 함수이다. 즉 이 두 값이 같아야 JE에서 인식을 하여 성공 문자열로 점프한다.일단 한 번 확인해본다. 위의 화면처럼 Serial를 입력한 후 Check를 누른다. 아직 반응은 아까와 동일하다. 위 화면을 보면 두 변수에 값이 나와 있는..
Allblackk
'# Related site issues/CODEENGN' 카테고리의 글 목록