728x90
문제 : https://dreamhack.io/wargame/challenges/559
SingleByteXor
어느날, 살인사건이 일어났다. 살인 사건의 유일한 증거물은 쓰여있는 쪽지에는, 다음과 같이 적혀있었다. 54586b6458754f7b215c7c75424f21634f744275517d6d 크립이에게 주어진 단서는, 쪽지의 내용과 이것이
dreamhack.io
문제 설명
어느날, 살인사건이 일어났다.
살인 사건의 유일한 증거물은 쓰여있는 쪽지에는, 다음과 같이 적혀있었다.
54586b6458754f7b215c7c75424f21634f744275517d6d
크립이에게 주어진 단서는, 쪽지의 내용과 이것이 어떤 단일바이트와 XOR해서 만들어진 암호라는 단서 뿐.
과연 크립이는 범인을 찾을 수 있을 것인가…!
- flag 타입은 DH{message}입니다
문제 해결
풀이 1) 복호화 사이트 사용
링크 : https://www.dcode.fr/chiffre-xor
Chiffre XOR - OU Exclusif - Déchiffrer, Décoder, Encoder en Ligne
Outil pour décoder/encoder avec OU exclusif (XOR), une méthode de cryptographie moderne qui consiste à chiffrer un message en binaire avec une clé répétée par une multiplication par OU Exclusif.
www.dcode.fr
풀이 2) 파이썬 코드 사용
hex_str = "54586b6458754f7b215c7c75424f21634f744275517d6d"
# 16진수 형식의 문자열을 hex_str 변수에 할당
hex_bytes = bytes.fromhex(hex_str)
# hex_str을 16진수 문자열에서 바이트 객체로 변환
for i in range(1, 255):
# 1부터 254까지의 범위에서 반복문을 실행 (가능한 XOR 키 값의 범위)
decrypted_text = ''.join([chr(byte ^ i) for byte in hex_bytes])
print(i," :", decrypted_text)
728x90
'CTF' 카테고리의 다른 글
[H4CKING GAME] Easy (0) | 2024.01.16 |
---|---|
[H4CKING GAME] Paint (0) | 2024.01.16 |
[써니나타스_암호학] Basic_Crypto1 (0) | 2024.01.16 |
[써니나타스_포렌식] 21번 문제 풀이 (0) | 2024.01.12 |
[써니나타스_포렌식] 26번 문제 풀이 (0) | 2024.01.12 |