반응형

워게임/CTFlearn 103

[CTFlearn] Image Magic - 프로그래밍 / 포렌식 / PIL

CTFlearn의 쉰세번째 문제 이번엔 처음으로 나온 프로그래밍 카테고리의 문제이다. 사실 여기서 분류는 프로그래밍으로 했지만 거의 포렌식 문제라고 생각한다. 간만에 CTFlearn에서 생각해볼 만한 문제가 나와서 재미있었다. 문제 설명을 읽어보면 누군가가 사진의 픽셀을 가져와 재구성했다고 이걸 PIL 모듈을 이용해 복원할 수 있냐고 물어본다. 이미지가 변경되기 전 Width는 304라는 힌트도 주어진다. 이것이 문제에서 주어지는 out copy.jpg 파일이다. 아무것도 없는것 처럼 보이는데 사실은 그게 아니다. 이미지를 우클릭해 속성을 보면 너비가 27968, 높이가 1인 것을 볼 수 있다. 아까 문제 설명에서 본대로 누군가가 이미지의 픽셀을 일렬로 쭉 늘어놓은 것이다. 일단 원래의 높이를 구해준다...

워게임/CTFlearn 2023.01.06

[CTFlearn] Encryption Master - 암호학 / Base64

CTFlearn의 쉰두번째 문제 Hard 난이도의 암호학 카테고리 문제인데 배점이 90점이나 된다. 그런데 실제로 풀어보면.. 어이없을 정도로 쉽다. 난이도는 누가 정하는건지.. 문제에서 주어지는 것은 Here ya go!.txt 파일이다. 메모장으로 열어보면 위와 같은 내용이 써있다. This is NOT going to be fun. 이라는 말과 함께 알수없는 글자들이 써있는데 데이터의 맨 끝을 보면 == 로 끝나는 것을 볼 수 있다. = 은 Base64에서 사용하는 패딩으로 저렇게 알수없는 알파벳+숫자들이 있는 데이터의 맨 끝이 = 또는 == 이라면 Base64 로 인코딩 되었다고 생각하면 거의 맞다. CyberChef(https://gchq.github.io/CyberChef) 에서 Base64 ..

워게임/CTFlearn 2023.01.02

[CTFlearn] Minions - 포렌식 / HxD / Binwalk / Base64

CTFlearn의 쉰 한번째 문제 이번엔 Easy 난이도의 포렌식 문제이다. 그래도 Easy 치고는 문제푸는데 조금 많은 작업이 필요하다. 문제에서 제공되는것은 Hey_You.png 파일이다. 귀여운 미니언 사진이다. 뭔가 특이한 점이 있나 살펴보기 위해 HxD로 해당 파일을 열어보았다. 맨 앞부분이 89 50 4E 47 0D 0A 1A 0A 로 시작하는것을 볼 수 있는데 모든 PNG 파일은 89 50 4E 47 0D 0A 1A 0A 로 시작한다. 이런걸 파일 시그니처 라고 한다. 아래쪽으로 쭉 내려보니 이상한 부분이 보였다. PNG 파일은 IEND®B`‚ 라는 문자열이 보이면 끝나야 한다. 저 뒤에 더이상 데이터가 있으면 안된다. 그런데 이상하게 Rar! 로 시작하는 데이터가 더 있는것을 볼 수 있었다..

워게임/CTFlearn 2023.01.01

[CTFlearn] Corrupted File - 포렌식 / HxD / Base64

CTFlearn의 쉰번째 문제 이번엔 Hard 난이도의 포렌식 문제이다. 하지만 역시나 그렇게 어렵진 않다. 문제 설명에서 힌트를 주고 있다. 파일 헤더에 문제가 있어 파일을 열지 못하는것 같다고 한다. 문제에서 주어지는 파일은 unopenable.gif 파일이다. 확장자가 .gif 인걸 보니 원래는 GIF 파일이었나 보다. 파일을 열어보면 문제에서 언급한것 처럼 파일이 깨진듯 이 파일 형식은 지원되지 않는 것 같습니다. 라고 나온다. 주어진 unopenable.gif 파일을 HxD 라는 도구를 실행시켜, 드래그 앤 드랍한다. (HxD 다운링크 : https://mh-nexus.de/en/downloads.php?product=HxD20) 그러면 위처럼 16진수로 되어있는 값들이 보인다. 이 16진수 값..

워게임/CTFlearn 2022.12.30

[CTFlearn] GandalfTheWise - 포렌식 / HxD / Base64 / XOR

CTFlearn 의 마흔아홉번째 문제 이번에도 익순한 포렌식 카테고리의 jpg 파일 문제이다. 그래도 이번 문제는 조금 생각이 필요하다. https://hackingstudypad.tistory.com/266 https://hackingstudypad.tistory.com/288 https://hackingstudypad.tistory.com/305 https://hackingstudypad.tistory.com/311 https://hackingstudypad.tistory.com/338 조금씩 다르긴 하지만 이전에 비슷한 문제를 많이 풀이했었다. 이번 문제에서 주어지는 Gandalf.jpg 파일이다. 간달프 할아버지와 함께 멋진 문구가 적혀있다. 주어진 Gandalf.jpg 파일을 HxD 라는 도구를..

워게임/CTFlearn 2022.12.26

[CTFlearn] What could this be? - MISC / 자바스크립트

CTFlearn의 마흔여덟번째 문제 이번 문제는 MISC 카테고리의 문제이다. MISC는 miscellaneous의 약자로 여러가지 잡다한 이라는 의미를 가지고 있다. 뭔가 MISC 치고는 점수가 높은데다 Medium 난이도의 문제라 살짝 쫄았다. 문제에서 제공되는 주소로 접속하면 what_can_this_be.txt 파일을 다운로드 받을 수 있다. 해당 파일을 열어보면 이런 내용이 들어있다.. 괄호와 대괄호, 더하기와 느낌표로 이루어진 엄청나게 긴 내용이다. 사람이 인지할 수 있는 알파벳이나 숫자는 전혀 없이 이렇게만 나와있다. 이걸 어떻게 풀어야 하나 고민하다가 예전에 어떤 CTF에서 Javascript 를 이런식으로 난독화 하는걸 본 적이 있는것 같아 일단 시도해보기로 했다. 크롬에서 새 탭을 연 ..

워게임/CTFlearn 2022.12.24

[CTFlearn] RSA Beginner - 암호학 / Python

CTFlearn의 마흔 일곱번째 문제 이번엔 RSA 알고리즘과 관련된 암호학 문제이다. Beginner 라 그런지 이전에 포스팅 했던 문제들이랑 비슷하게 쉽게 풀 수 있다. (https://hackingstudypad.tistory.com/337) RSA는 지금까지도 아주 많이 사용하는 공개키 알고리즘의 이름이다. 개발자인 Rivest, Shamir, Adleman 세명의 이름 앞글자를 따서 RSA 라고 이름을 붙혔다. 엄청나게 큰 숫자일수록 소인수분해가 어렵다는것에 착안해서 설계되었다. RSA의 원리는 아래와 같다. 1. 두 소수 p, q를 준비한다. 2. p-1, q-1과 각각 서로소(1외에는 공약수가 없는 수)인 정수 e를 준비한다. 3. ed를 (p-1)(q-1)으로 나눈 나머지가 1의 되도록 하..

워게임/CTFlearn 2022.12.22

[CTFlearn] PDF by fdpumyp - 포렌식 / HxD / Base64

CTFlearn의 마흔여섯번째 문제 이번엔 PDF 파일을 이용한 간단한 포렌식 문제이다. 문제 설명을 읽어보면 external drive 의 password 를 찾는게 목적인듯 하다. 문제 푸는데 크게 중요한건 아니지만 제목에 있는 fdpumyp 가 뭔지 알아봤더니 PyMuPDF 를 거꾸로 쓴 것이었다. PyMuPDF 는 PDF 페이지의 일부를 선택해서 이미지 하 할 수 있는 파이썬 라이브러리라고 한다. 아마 제작자가 문제 만드는데 이용한듯 하다. 문제에서 주어지는 dontopen.pdf 파일을 열어보면 이런 내용이다. 한장 짜리 pdf 파일에 CAN'T TOUCH THIS 라고 적혀있다. 눈에 보이는 특이한점은 없으니 HxD를 이용해 파일을 열어본다. 위쪽에는 특이한 점이 없고, 맨 아래쪽으로 내려봤더..

워게임/CTFlearn 2022.12.18

[CTFlearn] Suspecious message - 암호학 / Playfair Cipher

CTFlearn의 마흔 다섯번째 문제 이번엔 암호학 문제이다. 문제에서 주어지는것은 암호문과 photo.png 라는 사진 파일이다. MQDzqdor{Ix4Oa41W_1F_B00h_m1YlqPpPP} 위와 같은 암호문이 주어지는데 처음에 Base 종류의 인코딩이나 rot 를 이용해 풀어보려 했는데 풀리지 않았다. 함께 주어지는 사진은 위와 같다. 키보드 배열에 있는 영문자들이 왼쪽 상단부터 J를 제외하고 순서대로 적혀있다. 사진을 딱 보자마자 이전에 풀었던 5x5 crypto 가 생각났지만 (https://hackingstudypad.tistory.com/326) 이번 문제는 좌표같은게 주어지지 않아서 아니라고 판단했다. 이럴때 사용할 수 있는 도구로 Boxentriq(https://www.boxentri..

워게임/CTFlearn 2022.12.14

[CTFlearn] Simple Steganography - 포렌식 / HxD / Steghide

CTFlearn의 마흔 네번째 문제 이번 문제는 문제 제목처럼 말그대로 간단한 스테가노그래피 문제이다. 문제 설명에 친절하게 Steghide 라는 도구를 사용하라고 힌트까지 줬다. 우선 문제에서 주어진 Minions1.jpeg 파일은 위와 같다. 귀여운 미니언 사진이다. 문제 힌트대로 Steghide 라는 도구를 사용해볼 텐데, 그 전에 우선 알아야 할 것이 있다. steghide 도구에서 --extract -sf 이라고 옵션을 주게되면 파일 안에 숨어있는 데이터를 추출할 수 있다. 추출하기전 보이는것과 같이 passphrase 를 물어보는데 올바른 passphrase 를 입력하지 못하면 위처럼 extract 를 하지 못한다. 어딘가에 숨어있을 passphrase 를 먼저 찾아야 한다. simple st..

워게임/CTFlearn 2022.12.13
반응형