반응형

CTF 604

[Space Heroes CTF] Felicette - 포렌식 / Wireshark / Tshark

네트워크 패킷 분석과 관련된 포렌식 문제이다. 이전에도 블로그에서 비슷한 유형의 문제들을 다룬적이 있었다. 찾아보니 작년 Space Heroes CTF 에서도 비슷한 문제가 나왔었다. (https://hackingstudypad.tistory.com/88) 문제에서 주어지는 것은 chall.jpg.pacp 파일이다. Wireshark로 pcap 파일을 열어볼 수 있다. Wireshark 로 해당 파일을 열어보면 이렇게 수많은 ICMP Echo request 패킷이 보인다. 갯수를 새어보니 239,351개였다. 첫 4 패킷의 데이터만 보고 어떻게 풀어야 하는지 알 수 있었다. 첫번재 패킷의 경우 패킷의 맨 끝 data.data 부분이 ff 인것을 볼 수 있다. 두번째 패킷은 d8 이고, 세번째 패킷은 ff..

CTF/포렌식 2023.05.04

[Space Heroes CTF] Bynary Encoding - 암호학 / Binary / HxD

CTF 많이 풀어본 사람들은 낚였을만한 begineer-friendly 난이도의 암호학 문제였다. 제목의 bynary 가 힌트였다. 문제에서 주어지는 것은 transmission.txt 파일이다. 메모장으로 열어보면 이렇게 아무 내용도 들어있지 않다. 그런데 드래그를 해보면 뭔가 내용이 채워져 있다는 것을 알 수 있다. 여기까지 해보고 CTF 를 좀 해본 사람이라면 WhiteSpace 를 떠올릴 것이다. WhiteSpace 는 이름 그대로 공백을 이용해서 만든 프로그래밍 언어이다. 구글에 검색해보면 온라인 컴파일러를 쉽게 찾을 수 있는데 (https://ideone.com/f64CNl) 문제에서 제공된 코드를 넣고 돌려보면 에러가 난다. WhiteSpace 인척 하는 다른 것이라는 뜻이다. HxD 로 열..

CTF/웹해킹 2023.05.03

[Space Heroes CTF] Bank-of-Knowhere - 웹해킹 / Burp Suite

재밌는 웹 해킹 문제 그루트가 inner circle 에 들어가려고 하는데 2,000A 라는 돈이 은행 계좌에 필요하다고 한다. 문제페이지에 들어가면 이런 화면이 나온다. 인터넷 뱅킹처럼 생겼다. 그루트의 잔액은 850인데 다른 사람들의 계좌에서 돈을 빼와서 2,000 으로 만들어야 한다. 한번 돈을 보내봤다. Rocket 에게 1만큼 보냈더니 그루트의 계좌에서 1이 줄어들고 Rocket 의 계좌에서 1이 늘어났다. Burp Suite 를 이용해 돈을 보낼때 패킷을 확인해봤다. sender 에 Groot, receiver 에 Rocket, amount 에 보내는 금액이 들어가서 요청 패킷이 전달된다. sender 와 receiver 를 바꿔서 패킷을 보내봤더니 자기 자신에게 송금할 수 없다는 에러메시지가..

CTF/웹해킹 2023.05.02

[Space Heroes CTF] attack-strategies - 웹해킹 / Burp Suite

재미있었던 웹해킹 문제이다. 난이도는 그렇게 어렵진 않은데 푸는데 시간이 좀 걸렸다. 문제페이지에 접속하면 이런 화면이 나온다. 우선적으로 폴더를 선택할 수 있게끔 하고있다. 폴더는 Terrans, Protoss, Zerg 세가지가 있다. strategies 는 스타크래프트 전략을 의미하는듯 하다. 세 종족 중 하나를 선택하면 Select a file 부분이 활성화 된다. 테란을 선택하면 이렇게 Double Proxy Rax 라는 파일이 있는걸 알 수 있는데 파일을 선택하면 이렇게 웹 페이지에 해당 파일의 내용이 출력되는 방식이다. 길어서 안읽어봤지만 내용은 테란 전략일 것이다. Burp Suite 를 사용해서 파일을 선택했을 때 패킷을 캡쳐했다. POST 패킷으로 folder_select, file_s..

CTF/웹해킹 2023.05.01

[Space Heroes CTF] Acheron - 리버싱 / IDA

beginniner-friendly 난이도의 리버싱 문제 IDA 만 사용할 줄 안다면 쉽게 풀 수 있다. 친절하게 문제 서버에 접속할 수 있는 pwntool 파이썬 코드도 같이 주어진다. 우선 주어진 파이썬 코드로 접속해봤다. 접속하니 적대적인 외계 행성에서 길을 잃었다고 우주선으로 돌아가야 한다고 한다. 그리고 사용자 입력을 받는데 입력값은 N, S, E, W 만 가능하다고 나와있다. 상상해본건데 체스판 같은곳에 내가 있고 동서남북으로 특정한 패턴으로 움직이면 우주선에 도달할 수 있는듯 하다. 입력값에 N, S, E, W 가 아닌 test 라고 입력해봤는데 우주선을 찾지 못했다면서 interactive 가 꺼져버린다. 문제에서 주어진 바이너리 파일인 Acheron 을 IDA 로 열어본다. main 함수..

CTF/리버싱 2023.04.30

[Space Heroes CTF] A New Hope - 포렌식 / PPT / HxD

작년에 이어 올해도 열린 Space Heroes CTF 재밌는 문제가 많았으나 시간관계상 몇개밖에 풀어보지 못했다. 첫번째는 간단한 포렌식 문제이다. 문제에서 주어지는 것은 A_New_Hope.pptx 파일이다. 해당 ppt 파일을 열어보면 이렇게 생긴 슬라이드 하나만 덩그러니 있다. 그림들을 옆으로 치워봤는데 뒤쪽에 숨겨진 객체가 하나 있었다. 그런데 뭔가 파일이 깨진듯 엑스박스가 떠있었다. ppt 파일은 확장자를 .zip 으로 바꿔주면 일반 zip 파일처럼 압축을 풀어줄 수 있다. 압축을 풀면 이렇게 나온다. 이게 사진파일들이 들어있는 경로를 찾아간다. ppt > media 폴더로 들어가면 찾을 수 있다. image1.png 파일이 아까 봤던것 처럼 썸네일이 나오지 않는걸 볼 수 있다. HxD 로 열..

CTF/포렌식 2023.04.29

[HackingCampCTF] World Wide Web - 웹해킹 / LFI

웹해킹 문제 문제 푸는동안 캡쳐을 제대로 하지 못했다. phpmyadmin 의 취약점과 관련된 문제이다. 첫 부분을 캡쳐를 못했는데 문제페이지에 접속해보면 어떤 사진 하나가 덩그러니 있다. F12를 눌러 개발자 도구를 살펴보면 이미지의 alt 값이 /phpMyAdmin 으로 되어있는데 이걸 통해서 /phpMyAdmin 이라는 경로가 있다는 것을 알아냈다. 주소창에 /phpMyAdmin 을 입력해서 들어가보면 로그인 창이 하나 나오는데 역시나 F12 를 눌러 개발자도구를 확인해보면 id 가 wwwweb, pw 가 wwwweb!@# 인것을 확인할 수 있었다. 아이디, 비밀번호를 입력하면 이렇게 정상적으로 로그인이 된다. phpMyAdmin 의 버전을 확인해보니 4.8.1 이었는데, 해당 버전은 LFI 할 수..

CTF/웹해킹 2023.04.28

[CTFlearn] Riyadh - 리버싱 / IDA / Pwndbg

CTFlearn 의 아흔번째 문제 이번엔 10점짜리 Easy 난이도 리버싱 문제인데 아무래도 배점이 잘못된것 같다. 막 어렵진 않지만 그래도 10점은 아닌듯.. 일단 문제에서 주어지는 것은 readme, Riyadh, source.zip.enc 파일이다. 나머진 필요없고 문제풀때는 Riyadh 파일만 있으면 된다. 바로 IDA 로 열어서 F5를 눌러 main 함수의 수도코드를 살펴보았다. 일단 세가지 정도를 검증하고 있다. argc 가 1인지, buffer 와 v4 가 같은지, strlen 이 30 인지 세 가지를 비교하고 그거에 따라 각각 Msg2, Msg4, Msg5 가 실행된다. Msg 함수는 1 부터 7 까지 있는데 각각의 Msg 함수들을 보면 이렇게 xormask 값과 어떤 값을 XOR 하는것으..

워게임/CTFlearn 2023.04.27

[TJCTF] take-a-l - 리버싱 / IDA

쉬운 난이도의 리버싱 문제 IDA 라는 도구를 이용해 간단하게 해결할 수 있다. 문제에서 주어지는 파일은 chall 바이너리 파일이다. 한번 실행시켜 봤는데 What's your flag? 라는 문구가 출력되고 사용자의 입력을 받는다. test 라고 입력했더니 L 이라고 답이 나왔다. 바로 IDA 를 이용해 바이너리 파일을 열어 F5를 눌러 main 함수의 수도코드를 살펴봤다. 사용자의 입력을 받아 s 에 저장하고 flag 배열에 있는 값과 XOR 연산을 한 뒤 그 값이 18 인지 비교하고 있다. 18이면 W 를, 18이 아니는 L 을 출력한다. 문제 설명에 나와있던 I need W 가 이런 의미인가 보다. flag 배열에는 이런 값이 들어있다. 간단하게 18 이랑 XOR 해주면 된다. CyberChef..

CTF/리버싱 2023.04.26

[HackTheBox] Forest - 포렌식 / Stegsolve / Steghide / Vigenere

Medium 난이도의 포렌식 문제 스테가노그래피와 관련한 문제이다. 문제에서 주어지는 파일은 위와 같다. 가장 먼저 Stegsolve 라는 도구를 사용해봤다. 아래 경로에서 Stegsolve.jar 파일을 다운로드 받을 수 있다. (http://www.caesum.com/handbook/Stegsolve.jar) Stegsolve를 실행시켜서 File - Open으로 이미지를 불러오면 된다. 아래쪽에 있는 버튼을 누르면 이미지의 alpha, blue, green, red, xor 등등 다양한 값을 조정한 형태를 보여주게 된다. 하나씩 넘기다보면 중간에 이렇게 문자열이 보이게 된다. 처음엔 이게 플래그인줄 알았는데 아니었다. steghide 에서 사용하는 passphrase 였다. steghide extr..

반응형