본문 바로가기

【 리버싱 】

(11)
[ CodeEngn ] Basic RCE 11 문제 풀이 URL : https://ch.codeengn.com/ CodeEngn.com [코드엔진] 코드엔진은 국내 리버스엔지니어링 정보공유를 위해 2007년 부터 리버스엔지니어링 컨퍼런스 및 세미나, 워크숍을 현업 실무자들과 함께 운영하고 있는 비영리 커뮤니티입니다. ch.codeengn.com 압축을 풀어보니 실행파일 하나가 보인다. 더블 클릭하여 실행해 보자 아마 파일을 인식하게 만드는 것 같다. 하지만 CodeEngn 문제에서는 OEP와 Stolenbyte만 구하면 된다. 우선 PEiD로 패킹 여부를 확인하자 UPX로 패킹되어 있다는 것을 확인할 수 있었다. UPX로 언 패킹을 해주었고 file size가 늘어난 것을 확인할 수 있다. 'Ollydbg'도구로 열어보자 실행을 해보니 글씨가 깨져서 나오는 걸..
[ CodeEngn ] Basic RCE 10 문제 풀이 URL : https://ch.codeengn.com/ CodeEngn.com [코드엔진] 코드엔진은 국내 리버스엔지니어링 정보공유를 위해 2007년 부터 리버스엔지니어링 컨퍼런스 및 세미나, 워크숍을 현업 실무자들과 함께 운영하고 있는 비영리 커뮤니티입니다. ch.codeengn.com 대회 준비하느라 업로드를 못하였습니다. 저는 웹, 네트워크를 담당하였기 때문에 리버싱은 하지 않았습니다. 압축을 풀어보니 실행파일 하나가 보인다. 더블 클릭하여 실행해 보자 음.. 이름, 시리얼을 입력하는 창이 보인다. 문제에서 OEP와 OPCODE만 구하면 된다. 따라서 이름과 시리얼 키는 구하지 않도록 하겠다. 우선 PEiD로 패킹 여부를 확인 하자 ASPack으로 되어 있는 것을 확인할 수 있었다. ASPack은 ..
[ CodeEngn ] Basic RCE 9 문제 풀이 URL : https://ch.codeengn.com/ CodeEngn.com [코드엔진] 코드엔진은 국내 리버스엔지니어링 정보공유를 위해 2007년 부터 리버스엔지니어링 컨퍼런스 및 세미나, 워크숍을 현업 실무자들과 함께 운영하고 있는 비영리 커뮤니티입니다. ch.codeengn.com 압축을 풀어보니 실행파일 하나가 보인다. 더블 클릭하여 실행해 보자 "확인을 클릭하여 키 파일을 확인하십시오"라는 메시지 창이 보인다. 그러면 keyfile을 찾아야 하지만 CodeEngn 문제는 StolenByte를 구하는 것이기 때문에 keyfile은 찾지 않는다. 이제 'OllyDbg' 도구를 이용해 09.exe 파일을 뜯어보자 UPX 방식으로 패킹이 되었다는 것을 의심할 수 있었다. PEiD로 확인 결과 UPX ..
[ CodeEngn ] Basic RCE 8 문제 풀이 URL : https://ch.codeengn.com/ CodeEngn.com [코드엔진] 코드엔진은 국내 리버스엔지니어링 정보공유를 위해 2007년 부터 리버스엔지니어링 컨퍼런스 및 세미나, 워크숍을 현업 실무자들과 함께 운영하고 있는 비영리 커뮤니티입니다. ch.codeengn.com 압축을 풀어보니 실행파일 하나가 보인다. 더블 클릭하여 실행해 보자 계산기 기능을 하는 UI를 확인할 수 있었다. 문제를 다시 확인 해보면 'OEP(Original Entry Point)' 즉, 프로그램의 실제 시작 주소를 찾는 것이다. 이제 'OllyDbg' 도구를 이용해 08.exe 파일을 뜯어보자 확인 했더니 'PUSHAD' 로 나온걸 알 수 있었고 'PUSHAD'는 UPX 방식으로 패킹이 되었다는 것을 의심할 수..
[ CodeEngn ] Basic RCE 7 문제 풀이 URL : https://ch.codeengn.com/ CodeEngn.com [코드엔진] 코드엔진은 국내 리버스엔지니어링 정보공유를 위해 2007년 부터 리버스엔지니어링 컨퍼런스 및 세미나, 워크숍을 현업 실무자들과 함께 운영하고 있는 비영리 커뮤니티입니다. ch.codeengn.com 실행파일 하나가 보인다. 더블 클릭해서 실행 하자 아마 시리얼 키를 입력해서 푸는 문제인 것 같다. 틀리면 나오는 문구이다. 확인을 클릭하면 프로그램이 종료된다. 문제에서 컴퓨터 C 드라이브의 이름이 CodeEngn 일 경우라고 했으니 드라이브 이름을 'CodeEngn'으로 바꿔보자 이제 'OllyDbg' 도구를 이용해 07.exe 파일을 뜯어보자 main을 찾는 방법이 2가지 있다. 첫번째 방법은 함수를 찾는 방법이다..
[ CodeEngn ] Basic RCE 6 문제 풀이 URL : https://ch.codeengn.com/ CodeEngn.com [코드엔진] 코드엔진은 국내 리버스엔지니어링 정보공유를 위해 2007년 부터 리버스엔지니어링 컨퍼런스 및 세미나, 워크숍을 현업 실무자들과 함께 운영하고 있는 비영리 커뮤니티입니다. ch.codeengn.com 실행 파일 하나가 보인다. 일단 더블 클릭해서 실행해 보자 그러면 'Serial'를 입력하는 창이 뜬다. 아무거나 입력해 보자 음.. 그러면 확실히 'Serial'값을 알아내야 하는 거 같다. 그리고 문제에서 OEP + Serial 이니 OEP 주소도 찾아내야 한다. 이제 'OllyDbg' 도구를 이용해 06.exe 파일을 뜯어보자 뜯어 보니 'PUSH' 가 아닌 'PUSHAD'가 있는걸 확인 할 수 있다. 즉 UPX ..
[ CodeEngn ] Basic RCE 5 문제 풀이 URL : https://ch.codeengn.com/ CodeEngn.com [코드엔진] 코드엔진은 국내 리버스엔지니어링 정보공유를 위해 2007년 부터 리버스엔지니어링 컨퍼런스 및 세미나, 워크숍을 현업 실무자들과 함께 운영하고 있는 비영리 커뮤니티입니다. ch.codeengn.com 실행 파일 하나 보인다. 일단 더블 클릭해서 실행해 보자 보면 이름/시리얼 키를 입력하는게 보인다. 'Register now !'를 누르게 되면 "잘못된 시리얼, 다시 시도하십시오!" 라고 뜬다. 이제 'OllyDbg' 도구를 이용해 05.exe 파일을 뜯어보자 그러면 저번 문제와는 다르게 'PUSHAD' 를 볼 수 있다. 즉 UPX 패킹이 되어 있을 확률이 높다는 뜻이다. PEiD 도구를 이용해 확인해 보자 UPX로 ..
[ CodeEngn ] Basic RCE 4 문제 풀이 URL : https://ch.codeengn.com/ CodeEngn.com [코드엔진] 코드엔진은 국내 리버스엔지니어링 정보공유를 위해 2007년 부터 리버스엔지니어링 컨퍼런스 및 세미나, 워크숍을 현업 실무자들과 함께 운영하고 있는 비영리 커뮤니티입니다. ch.codeengn.com 이 문제는 디비거를 탐지하는 함수 이름을 찾는 것이다. 일단 04.exe 파일 실행시켜 보자 그러면 '정상' 이라는 문자가 출력이 된다. 'OllyDbg' 도구를 이용해 04.exe 파일을 뜯어보자 자 그러면 바로 문제를 풀어보자 03 문제에서 함수를 찾는 거였다. 그럼 똑같이 함수를 찾아보자 03 문제 포스팅에서 함수를 쉽게 찾는 방법이 있었다. 어셈블리코드 창에다가 우클릭 -> Search for -> All int..
[ CodeEngn ] Basic RCE 3 문제 풀이 URL : https://ch.codeengn.com/ CodeEngn.com [코드엔진] 코드엔진은 국내 리버스엔지니어링 정보공유를 위해 2007년 부터 리버스엔지니어링 컨퍼런스 및 세미나, 워크숍을 현업 실무자들과 함께 운영하고 있는 비영리 커뮤니티입니다. ch.codeengn.com 실행시켜보면 그러면 'MSVBVM50.DLL'를 다운로드해줄 필요가 있다. Download : https://ko.dll-files.com/msvbvm50.dll.html 다운로드 버튼을 누르고 압축 해제하자. 그러면 3개의 파일이 보이는데 .DLL 파일 빼고 다른 건 현재 문제 푸는 데에는 필요가 없다. .DLL 파일을 드래그 앤 드롭으로 03.exe가 있는 데에 넣어주자. 그러면 03.exe 파일을 실행시켜주자 그러..
[ CodeEngn ] Basic RCE 2 문제 풀이 URL : https://ch.codeengn.com/ CodeEngn.com [코드엔진] 코드엔진은 국내 리버스엔지니어링 정보공유를 위해 2007년 부터 리버스엔지니어링 컨퍼런스 및 세미나, 워크숍을 현업 실무자들과 함께 운영하고 있는 비영리 커뮤니티입니다. ch.codeengn.com OllyDbg로 열어보면 "Unable to open or read file"라는 메시지와 밑에 경로가 나타나는 창을 볼 수 있다. 즉, 파일을 열거나 읽을 수 없다는 뜻이다. 그러면 OllyDbg 툴을 사용을 하지 못한다. 어떻게 해야 할까? 당연히 다른 툴을 사용하면 된다. 이 툴의 이름은 'PEView' 이다. PEView 란? : 윈도우 용 실행 파일인 PE(Portable Executable)의 구조를 분석할 ..