일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- wargame
- CTF
- Database
- 수학
- SuNiNaTas
- Web
- Network
- Text
- xcz.kr
- 사칙연산
- HackCTF
- C
- N0Named
- 그리디 알고리즘
- Incognito
- 백준
- Digital Forensics
- 인코그니토
- misc
- 문자열
- writeup
- MySQL
- Python
- 정렬
- 써니나타스
- Web Hacking
- php
- cryptography
- Forensics
- 구현
- Today
- Total
목록HackCTF (25)
보안을 그리다, 훈이
HackCTF Cryptography 분야 Classic Cipher -1(100p) 문제 풀이입니다. 'Classic_Cipher-1.zip' 파일을 압축 해제하면, 'Cipher.txt' 파일이 추출됩니다. 물음표가 맨 앞에 있는 것을 보니 문자열이 거꾸로 뒤집혀 있는 것을 유추할 수 있으며, 문제 힌트인 [::-1]에서 가리키는 바이기도 합니다. 가장 간단한 암호화 방식이라 생각되는 Caesar Cipher 방식으로 복호화해봅시다. Shift 값 7에 따라 알파벳을 변환해주면 바로 Flag를 뽑을 수 있습니다. Solve!
HackCTF Cryptography 분야 Smooth CipherText(100p) 문제 풀이입니다. 암호문의 마지막 줄에 중괄호가 존재하므로 플래그 폼이 치환 암호로 암호화되어 있다고 생각했습니다. 먼저, Caesar Cipher(시저 암호)로 복호화하고자 시도해 보았지만 모든 문자가 일정한 Shift 값을 가지고 있지 않아 정상적인 복호화가 불가능했습니다. 해당 암호문을 Cipher Identifier Online으로 분석해보니 Vigenere Cipher(비즈네르 암호)라고 나와 전용 Decoder로 복호화를 진행했습니다. Vigenere Cipher에 대한 개념은 아래 게시글을 참고하시면 됩니다😊 [관련 게시글] [Cryptography] Vigenere Cipher (비즈네르 암호) [Cryp..
HackCTF Cryptography 분야 Great Binary(50p) 문제 풀이입니다. 'hoooo.zip' 파일 압축을 풀어보면 'hoooo.txt'이 나옵니다. 문제 이름에서 알 수 있듯이, 파일을 열어보자마자 Binary 값인 것을 알 수 있습니다. Binary -> Decimal -> ASCII 순서로 변환해주는 코드를 Python으로 구현하였습니다. b = input().split() for i in b: print(chr(int(i, 2)), end='') Binary 값을 넣고 돌려보면 바로 Flag가 출력됩니다. Solve!
HackCTF Web 분야 Login(100p) 문제 풀이입니다. 문제에 링크가 주어져 있네요. 들어가봅시다. http://ctf.j0n9hyun.xyz:2024/ 로그인 폼이 있는 것을 보아 어떠한 문제일지 예상이 됩니다. 먼저, 페이지 소스코드를 봅시다.
HackCTF Forensics 분야 Terrorist(200p) 문제 풀이입니다. 'Artifact.7z' 파일을 다운로드하고 압축을 풀어주니 'mission.jpg' 파일이 추출되네요. 그러나 파일을 열 수 없습니다. 'mission.jpg' 파일의 hex 값을 보도록 합시다. 빨간색으로 표시된 부분인 '00 00 00 18 66 74 79 70 4D 34 41'은 오디오 파일 확장자인 m4a(MPEG-4 Audio)의 시그니처입니다. 따라서, 해당 파일의 확장자를 jpg에서 m4a로 변경하였습니다. 해당 오디오 파일을 들어보니 거꾸로 재생되는 것처럼 들려 audio reverser online을 사용하여 복구하였습니다. Solve!
HackCTF Forensics 분야 나는 해귀다(150p) 문제 풀이입니다. 'waytogo.zip' 파일을 다운로드하고 압축을 풀어봅시다. 민망한 사진이 하나 나오는군요,,,, 뭐 일단.. hex 값을 뒤집어 놓으셨답니다... 'waytogo.png' 파일의 hex 값을 확인해봅시다. png 확장자의 푸터 시그니처인 '49 45 4E 44 AE 42 60 82'를 찾아봅니다. 찾아보니, 시그니처 뒤에 딱 봐도 수상한 값들이 있네요. '.'B.DNEI' 부분이 뭔가 낯이 익습니다. 'waytogo.png' 이미지에 적혀있던 'hex 값을 뒤집어 놓았다'는 글과 같이 png 파일의 hex 값이 완전히 뒤집혀 있네요. 뒤집힌 부분의 hex 값을 'rev_hex.txt'에 따로 저장합니다. 그리고 Pytho..
HackCTF Forensics 분야 세상에서 잊혀진 날 찾아줘!(150p) 문제 풀이입니다. 'pdf.pdf' 파일을 다운로드 받고 열어봅시다. 매우 평범한(?) pdf 파일입니다. 'Exploit' 이라는 글자가 박힌 사진이 포함되어 있네요. 일단 binwalk로 안에 뭐가 들어있는지 봅시다. 아까 봤던 이미지 파일이 jpeg 확장자겠군요. 'pdf.pdf' 파일 내에 존재하는 이미지를 제거해봅시다. Hex editor로 jpeg 확장자의 헤더/푸터 시그니처를 찾고 해당하는 값들을 지워주고 저장해줍니다. 이미지 파일이 삭제된 'pdf_exclude_jpeg.pdf' 파일을 열어 보겠습니다. Solve!
HackCTF Forensics 분야 Secret Document(150p) 문제 풀이입니다. 'Flag.zip' 파일을 다운로드하고 압축을 해제해봅시다. 'flag.txt', 'hint1.txt', 'hint2.txt' 총 3개의 텍스트 파일이 추출되는군요. 'flag.txt'를 보니 플래그처럼 생긴 문자열이 있네요. 바로 제출해보니 풀렸습니다??? Solve! (풀긴 풀었으니,,ㅎ) 무슨 상황인가 했는데 'hint1.txt'에서 Brute-Force 즉, 무차별 대입 공격을 하지말라는 문구가 있는 것을 보니 원래 flag.txt 파일에 잠금이 걸려 있는 것 같네요. 그러나 'hint2.txt'에서 '암호가 존재한다고 생각하냐'는 문구를 보면 잠금처리는 되어 있지만 암호는 걸려있지 않아 보입니다. 이게..
HackCTF Forensics 분야 So easy?(100p) 문제 풀이입니다. 'qwer.zip' 파일을 다운로드하고 압축을 풀어줍니다. 나무로 만든 러시아 인형 마트료시카 jpg 이미지가 나오네요. 설마하는 마음에 플래그 포맷인 'HackCTF'를 'qwer.jpg' hex 값에서 찾아봤습니다. 제출해보니 페이크 플래그네요^^ 이전 문제와 똑같은 방식으로 풀릴리가 없져,, 풀렸다면 실망할 뻔 했습니다 ㅎㅎ Hex 값 하단부를 보면 압축파일과 hidden.txt 파일이 숨어있는 것을 눈치챌 수 있습니다. binwalk를 사용하여 꺼내봅시다! > binwalk -D 'zip archive:zip:unzip %e' qwer.jpg 추출한 'hidden.txt'에 플래그가 있네요! Solve!
HackCTF Forensics 분야 Question?(100p) 문제 풀이입니다. 'Do_you_know_HxD.zip' 압축파일을 다운로드하고 압축을 해제합시다. 위와 같이 'Do_you_know_HxD.jpg' 파일에 이상한 글이 박혀있는데 괜히 머리 아프게 읽을 필요 없습니다. 파일명을 'HxD를 아십니까?'로 해놓은 것을 보니 파일의 hex 값을 까보면 플래그가 박혀 있을거라 추측이 가능합니다. HxD는 Windows용 Hex Editor이라 필자의 Mac에서는 지원되지 않기에 다른 툴을 사용하여 플래그 포맷인 'HackCTF'를 검색했습니다. Solve!