728x90
728x90
728x90

파일 링크: https://codeengn.com/challenges/

 

CodeEngn.com [코드엔진] - Challenges

코드엔진은 국내 리버스엔지니어링 정보공유를 위해 2007년 부터 리버스엔지니어링 컨퍼런스 및 비공개 워크숍을 현업 실무자들과 함께 운영하고 있습니다. 리버스엔지니어링이라는 하나의 큰 주제로 소프트웨어 보안에 대한 다양한 시각과 연구주제에 대한 정보공유를 추구하고 있으며, 상업적 이익 없이 작은 예산으로 운영하고 있어 큰 예산으로 운영하는 다른 컨퍼런스에 비해 여러 가지로 부족 할 수 있습니다.

codeengn.com

[사진 1]

풀어보자.

 

 

[사진 2]
[사진 3]

Basic RCE L17 문제와 비슷한데 이번엔 Name 값이 두 자리이다. 다음 링크를 참고하면 된다.

참고 링크: https://jade9reen.tistory.com/124

 

CodeEngn Basic RCE L17 Write-Up

파일 링크: https://codeengn.com/challenges/ CodeEngn.com [코드엔진] - Challenges 코드엔진은 국내 리버스엔지니어링 정보공유를 위해 2007년 부터 리버스엔지니어링 컨퍼런스 및 비공개 워크숍을 현업 실무자..

jade9reen.tistory.com

 

 

import hashlib

list1 = [\
'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', \
'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', \
'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', \
'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', \
'0', '1', '2', '3', '4', '5', '6', '7', '8', '9']

list2 = [\
'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', \
'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', \
'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', \
'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', \
'0', '1', '2', '3', '4', '5', '6', '7', '8', '9']

for key1 in list1:
    for key2 in list2:
        key = ""
        key = key1 + key2
        edx = 0
        for i in range(0, 2):
            esi = int(ord(key[i]))
            #edx = 0
            esi += edx
            esi *= 0x772
            edx = esi
            edx *= esi
            esi += edx
            esi *= 0x474
            esi += esi
            edx = esi

        password = hex(edx).upper()[21:][4:-4]
        if password == "5D88":
            print("key => %s / pass => %s" %(key, password))
            print("md5 => %s" %(hashlib.md5(key.encode()).hexdigest().upper()))

Python 코드는 위와 같다. Basic RCE L17 문제와 바뀐 부분은 Name 값이 두 자리기 때문에 리스트를 2개 이용했고, Name의 길이에 의해 Serial이 만들어지므로 range를 이용해 2번 반복했다.

 

 

[사진 4]

실행 결과는 위와 같다.

 

 

[사진 5]

Auth Key 값은 md5 값이다.

728x90
728x90

'Wargame > CodeEngn Advance RCE' 카테고리의 다른 글

CodeEngn Advance RCE L10 Write-Up  (0) 2019.09.09
CodeEngn Advance RCE L09 Write-Up  (0) 2019.09.09
CodeEngn Advance RCE L07 Write-Up  (0) 2019.09.09
CodeEngn Advance RCE L06 Write-Up  (0) 2019.09.06
CodeEngn Advance RCE L05 Write-Up  (0) 2019.09.06

+ Recent posts