반응형

분류 전체보기 712

[JISCTF] Colorfull - 포렌식 / Wireshark / John the Ripper / PIL

조금 어려웠던 포렌식 문제 네트워크 트래픽을 캡쳐했는데 악성 행위가 있는거 같다고 찾아내보라고 한다. 문제에서 주어지는 것은 colorfull.pcapng 파일이다. pcapng 파일은 Wireshark 도구를 이용해 열어볼 수 있다. 열어보면 위와 같은 화면이 나온다. 조금만 스크롤을 내려보면 FTP 프로토콜을 이용해 files.zip 파일을 내려받은 흔적을 확인할 수 있다. 해당 패킷에서 우클릭 - Follow - TCP Stream 버튼을 눌러 자세한 내용을 확인해 본다. Show and save data as를 Raw로 선택해주고 Save as... 버튼을 눌러 데이터를 저장해준다. 데이터 맨 앞에 50 4b 03 04 로 시작하는걸 보니 ZIP 파일이 맞다. 저장한 files.zip 파일의 압축..

CTF/포렌식 2023.01.26

[CTFlearn] The adventures of Boris Ivanov. Part 1. - 포렌식 / Stereogram

CTFlearn의 예순 한번째 문제 이번 문제는 포렌식으로 분류되어 있는데, 개인적으로 이런 문제는 MISC로 넣어야 된다고 본다. 근래 풀어본 문제중 가장 충격적인 문제였다.. 문제 설명을 읽어보면 KGB 요원인 Boris Ivanov 가 비밀 자료 거래 정보를 획득해서 비밀 자료를 거래하는 통신을 가로챘다고 한다. 어떤 데이터를 거래하려고 했는지 알아내는것이 이번 문제의 목표이다. 문제에서 주어지는 파일은 Boris_Ivanov_1.jpg 파일이고 위와 같이 생겼다. 내용은 John BROWN과 Michael SMITH 가 무언가를 거래하는 내용인데 정황상 맨 아래쪽에 보이는 모자이크 같은 부분이 거래하는 내용인것 같다. 이게 뭔지 알아내는데 진짜 오랜 시간이 걸렸다.. 가장 먼저 시도한건 지난 문제..

워게임/CTFlearn 2023.01.25

[JISCTF] Call - 암호학 / SMS PDU

쉬우면서도 어려운 문제.. 뭔지만 알면 쉽게 풀 수 있는데, 모르면 정말 오래걸릴 수 있는 문제이다. 문제에서는 별다른 설명 없이 00110000910000FF2E547419646687CFA0F41CA4032993D321D5B8414D9BD348D1397C1293CE63C458753AB3915028B44901 이런 텍스트를 주고 Decrypt 하라고 한다. 16진수로 디코딩 해보고 이전에 풀어봤던 문제에서 나온 Multi-tap 같은걸로 디코딩하려 해봤는데 (https://hackingstudypad.tistory.com/148) 아무것도 먹히지 않았다. 문제 제목이 큰 힌트가 될거라 생각하고 Call 과 관련한 키워드로 구글에 검색을 해봤다. 처음엔 Call Decoder 뭐 이런식으로 검색해보다가 휴..

CTF/암호학 2023.01.24

[CTFlearn] Symbolic Decimals - 암호학 / Python

CTFlearn의 예순번째 문제 전혀 Hard 하지 않은 Hard 난이도의 암호학 문제이다. 문제 설명이 좀 친절하지 않았다면 어려울 수 있는 문제인데 문제 설명이 너무 친절하다.. 심볼로 메세지를 숨기는 방법을 아냐면서 예를 들어주는데 !@#$%^&*( 같은경우 123456789 와 각각 매칭이 된다고 한다. 이것 그냥 키보드 숫자키를 의미하는 것이다. ^&,*$,&),!@#,*#,!!^,(&,!!$,(%,$^,(%,*&,(&,!!$,!!%,(%,$^,(%,&),!!!,!!$,(%,$^,(%,&^,!)%,!)@,!)!,!@% 문제에서 주어진 이 암호문을 키보드 숫자키에 맞춰서 숫자로 바꾸면 무언가 의미있는 데이터가 나올 것이다. 양이 그렇기 길지 않아서 그냥 수작업으로 일일이 바꿔도 되지만 파이썬 코드..

워게임/CTFlearn 2023.01.23

[JISCTF] REV102 - 리버싱 / Uncompyle6

푸는데 머리조금 아팠던 리버싱 문제이다. 역시나 수학은 어려운것 같다.. 문제에서 주어지는 것은 be_true 라는 바이너리 파일이다. 무슨 파일인지 보려고 HxD로 열어봤는데 중간중가네 pys, pyt 이런 단어들이 보여서 파이썬으로 만들어진 것이라고 추측했다. 확실하게 파이썬이라고 생각한건 을 구글에 검색한 결과 파이썬 제너레이터라는 검색결과가 나왔기 때문이다. 그래서 해당 파일의 확장자를 .pyc 로 바꾸고 분석을 시작했다. .pyc 파일을 파이썬 코드로 복구하는데는 uncompyle6 라는 도구를 사용한다. pip install uncompyle6 라고 입력하면 다운로드 받을 수 있다. python3 uncompyle6 이라고 입력하면 이렇게 파이썬 코드를 복구할 수 있다. import opera..

CTF/리버싱 2023.01.22

[CTFlearn] Ambush Mission - MISC / Stegsolve

CTFlearn의 쉰아홉번째 문제 이번 문제는 MISC 카테고리의 문제이다. MISC는 miscellaneous의 약자로 여러가지 잡다한 이라는 의미를 가지고 있다. 그런데 사실 문제 풀어보면 스테가노그래피 문제라 포렌식 쪽으로 봐도 될 것 같다. 문제 설명을 읽어보면 타겟을 체포하기 위해 통신을 가로채서 이미지를 하나 획득했는데, 이미지를 통해 약속시간이 언제인지 알아내 달라고 한다. 문제에서 제공되는 파일은 clue.png 이고, 내용은 위에 있는것과 같다. 그냥 사각형 여러개 그려진 의미없는 그림처럼 보인다. 이 문제는 Stegsolve 라는 도구를 사용하면 풀 수 있다. 이전에 CTFlearn에서도 다루지 않았나 싶었는데, CTFlearn에서는 처음 나온 유형이었고, 블로그에서는 관련된 문제들을 ..

워게임/CTFlearn 2023.01.21

[이천 도자기마을 카페웰콤] 방문후기(feat. 크림브륄레)

이천에 볼 일이 있어 인근에서 일을 해결하고 지인이 이천에서 정말 인기 많은 카페가 있다고 해서 들려 본 곳. 바로 옆에 큰 대형주차장이 있어서 주차는 정말 편하다. 도자기마을은 아기자기한 도자기 공방들이 모여있는 곳인데 이 곳말고도 이쁜 카페들이 많으니 이 인근을 한번 둘러보는 것을 추천, 근처에 이천아울렛도 있어서 아울렛에서 쇼핑하고 오는 사람이 많은 듯 했다. 들어오면 바로 카운터가 있고 문 안쪽으로 들어가면 이렇게 속닥하게 앉아있을 수 있는 테이블이 있다. 다만 고객이 일어난다고 해서 바로바로 테이블이 닦아지거나 하진 않는다 계속 주문이 들어오고 만드느라 직원들이 정신이 없어보인다. 그냥 카운터 쪽에서 휴지 가져다가 부스러기 정도만 닦고 앉았다. 마을이 공방들이 모여 있어서 그런지 조경도 잘 되어..

일상 2023.01.20

[JISCTF] Common - MISC / Python

쉬운 난이도의 MISC 문제 MISC는 miscellaneous의 약자로 여러가지 잡다한 이라는 의미를 가지고 있다. 문제 설명을 읽어보면 두 파일을 비교해서 뭔가를 찾아내야 하는듯 하다. 주어지는 파일은 files.zip 인데 압축을 풀어보면 안에 이렇게 file2.txt 와 file3.txt 파일이 들어있다. 왼쪽이 file2.txt, 오른쪽이 file3.txt 의 내용이다. 뭔가 알수없는 문자들이 가득 쓰여있는데, 얼핏 보면 두 파일의 내용이 똑같은것 처럼 보인다. 리눅스에서 diff 명령어를 통해 file2.txt 와 file3.txt를 비교한 결과를 보니 확실히 중간에 뭔가가 다른것 같다. 1c1 이라고 되어있는건 각 파일의 첫번째 줄이 서로 다르다는 의미인데, 이건 file2.txt 와 fil..

CTF/MISC 2023.01.19

[CTFlearn] Blank Page - 포렌식 / Unicode / HxD

CTFlearn의 쉰 여덟번째 문제 이번엔 조금 참신한 포렌식 문제이다. 이전에도 Unicode와 관련된 비슷한 유형의 문제를 풀어본 적 있는데 (https://hackingstudypad.tistory.com/354) 이번 문제의 풀이법은 조금 다르다. 문제 설명을 읽어보면 Super Agent School을 졸업한 스파이인 나에게 Master-Mind가 비밀 지령을 줬는데 읽지 못하겠다고 도와달라고 한다. TheMessage.txt 파일이 주어지는데 메모장으로 열어보면 아무것도 없는 빈 파일이다. 메모장을 드래그 한번 해봤더니 그래도 뭔가 내용이 들어있는것 처럼 블록이 잡히는걸 볼 수 있었다. 그래서 HxD를 이용해 TheMessage.txt 파일을 열어봤다. 안에 많은 내용이 적혀있었는데, 자세히 ..

워게임/CTFlearn 2023.01.18

[JISCTF] Baby Reverse - 리버싱 / IDA

제목처럼 간단한 리버싱 문제 아무런 설명없이 파일만 덩그러니 주어진다. Easy.zip 파일 압축을 풀어보면 Easy 라는 이름의 파일이 들어있다. 리눅스 환경에서 file 명령어를 통해 어떤 파일인지 확인할 수 있다. ELF 파일이라고 나오는데 ELF는 리눅스에서 실행가능한 실행파일이다. 한번 실행시켜 봤더니 실행하자마자 Try harder!! 라는 문구가 나오면서 프로그램이 종료된다. IDA라는 디스어셈블러를 이용해 Easy 파일을 열어 main 함수의 수도코드를 살펴보았다. 가장 먼저 보이는 조건문에서 argc가 1인지 확인을 한다. 여기있는 argc는 argument의 갯수를 의미한다. 아까처럼 ./Easy 라고만 실행하면 argc 는 1이 되어서 Try harder!! 가 출력되고 끝나는 것이다..

CTF/리버싱 2023.01.17
반응형