워게임/Wargame.kr

Wargame - pyc decompile

작성자 - 알 수 없는 사용자

문제

 

- 디컴파일 문제


- Start

Start

 

- 파이썬~, python~, 현재 시각, bughela.pyc 파일

- 외 특이사항은 보이지 않음


- bughela.pyc 파일

 

- .pyc파일에 대해 알아본 결과 간단히 파이썬 임시파일이라고 보면 될 것 같다.

- 파이썬 언어로 작성된 코드를 컴파일하게 되면 실행파일이 생성되고 프로그램이 실행되는데, 이러한 컴파일 과정을 효율적으로 하기위해 임시파일을 생성하여 반복적인 작업을 줄인다고 한다.

 

- 따라서 .pyc파일을 디컴파일 하면 파이썬 코드를 확인할 수 있다.


- bughela.pyc (디컴파일)

디컴파일 된 bughela.pyc 파일

- 온라인 디컴파일러를 사용한 결과 위와 같은 코드 확인.

 

- flag 는 http://wargame.kr:8080/pyc_decompile/?flag=FLAG  

- 여기서 변수 flag의 값인 FLAG를 확인 한다.

 

- 빨간 네모를 보면 현재 날짜를 출력하여 오늘 기준으로 '07/05/HJEJSH' 문자열을 sha512 해쉬한다.

 

- 1. 현재 시간을 이용는데, 현재 시를 3으로 나머지 연산하고 더하기 1한 값을 위의 해시 값 인덱스 번호로 활용

- 2. 현재 분을 30으로 나머지 연산 후 더하기 10 을 한 값을 1번 값과 곱한 값을 인덱스 번호로 활용

 

- 결과적으로 해시 값 문자열에서 1번 인덱스의 문자부터 2번 인덱스 문자까지가 플래그가 된다.


- 처음 Start페이지에 있는 시간을 기준으로 14:40분이라면 

 

- 1. 14 % 3 + 1 = 3

- 2. (40 % 30 +10) * 3 = 60

 

따라서 '07/05/HJEJSH' 의 해시값의 3번째 인덱스부터 60번째 인덱스까지가 플래그이다. 

플래그

 

- 1f ~ 359  까지가 플래그

문제 해결

 

'워게임 > Wargame.kr' 카테고리의 다른 글

Wargame - type confusion  (0) 2021.09.19
Wargame - tmitter  (0) 2021.09.19
Wargame - fly me to the moon  (0) 2021.07.05
Wargame - login filtering  (0) 2021.06.28
Wargame - QR CODE PUZZLE  (0) 2021.06.25
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.