[vikeCTF Write-up]Floating Viking Head

2023. 4. 10. 02:30·해킹/CTF Write-Ups

❓ 문제


Greetings, mere mortal! Are you ready to embark on a journey to unveil the flag and gain the wisdom of the floating Viking head? Harness the power of the oracle's gaze and use his words to guide you towards victory.

올바른 값을 입력하면 그 값이 플래그인 것 같다

 

💡 풀이


먼저 ida에 바이너리를 올려 내용을 파악한다.

입력값을 받고 encrypt 함수로 암호화한 후 ciphertext와 암호화된 입력값과 0x1B 길이만큼 비교를 하게 된다.

 

 

encrpyt함수를 확인해보면

인자로 받은 문자열을 0x5D와 XOR연산을 하는 것을 확인 할 수 있었다.

 

 

ciphertext를 알아내서 0x5D와 XOR 연산을 하면 flag값이 나온다는 것을 알 수 있다.

ciphertext를 알아내기 위해 gdb로 확인을 해보았다.

 

 

먼저 memcmp에 브레이크포인트를 걸어 인자로 들어가는 값을 확인한다.

RSI값은 암호화된 입력값이고, RDI에는 암호화된 ciphertext 주소가 들어가 있어 ciphertext의 값을 확인한다.

6008 주소부터 0x1Bbyte값을 모두 빅엔디안 값으로 바꾸어서 0x5D와 XOR하고 문자로 변환하여 출력하는 코드를 짜면 다음과 같다

def encrypt(s):
    for i in range(len(s)):
        s[i] ^= 0x5D

cipher_str = "2B3436381E091B26336D02686A0F6C336468021B6D2F02046D28200000000000"
#연산을 위해 16진수로 두글자씩 분리
cipher = [ int(cipher_str[i:i+2],16) for i in range(0,len(cipher_str),2)]
#역연산
encrypt(cipher)
#역연산한 값을 문자로 변환
cipher = [ chr(x) for x in cipher ]
#문자 리스트를 문자열로 변환
print(''.join(cipher))

=================================================================================
#결과
vikeCTF{n0_57R1n95_F0r_Y0u}]]]]]

'해킹 > CTF Write-Ups' 카테고리의 다른 글

HACKTHEON SEJONG 2025 Preliminaries Write-up  (0) 2025.04.27
DEF CON CTF Qualifier 2025 Write-Up  (0) 2025.04.14
R3CTF/YUANHENGCTF 2024 Write-Up  (1) 2024.06.11
N0PSctf 2024 Write-Up  (0) 2024.06.03
[WolvCTF Write-up] child-re  (0) 2023.04.10
'해킹/CTF Write-Ups' 카테고리의 다른 글
  • DEF CON CTF Qualifier 2025 Write-Up
  • R3CTF/YUANHENGCTF 2024 Write-Up
  • N0PSctf 2024 Write-Up
  • [WolvCTF Write-up] child-re
Saen0zu
Saen0zu
  • Saen0zu
    LAZY SAENOZU
    Saen0zu
  • 전체
    오늘
    어제
    • 분류 전체보기 (19)
      • 일상 (0)
      • 언어 (4)
        • C, C++ (1)
        • Python (3)
      • 해킹 (14)
        • CTF Write-Ups (7)
        • Mobile (1)
        • Pwnable (1)
        • Malware (1)
        • Wargame (4)
      • Toy (0)
  • 블로그 메뉴

    • 홈
    • INTRO
    • 태그
  • 링크

    • 네이버 블로그
  • 공지사항

  • 인기 글

  • 태그

    Windows
    wolvctf
    studio
    frida-server
    rokrat
    ctf
    브루트포스
    python3
    UAC
    Frida
    boj
    칠하기
    apt37
    백준
    체스판
    hex2int
    vikeCTF
    write-up
    rootavd
    int_to_bytes
    사용자계정컨트롤
    Android
    n0psctf
    Misc
    reversing
    malware
    2024
    1018
    다시
    UserAccountControl
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
Saen0zu
[vikeCTF Write-up]Floating Viking Head
상단으로

티스토리툴바