포렌식 17

[MultiMedia] 제 친구의 개가 바다에서

Multimedia에 문제 제 친구의 개가 바다에서를 풀어보겠습니다. 문제를 보겠습니다. 주어진 파일 hidden.jpg를 다운받고 실행시켜 보겠습니다. 엄청 밝기가 강하네요...그래서 명암을 조절 해줬습니다. 조절을 해줬더니 다음과 같이 문제를 풀 수 있는 플래그가 나왔습니다. Flag : tjctf{th3_f0x_jumo3d_0v3r_m3} -reperence- 디지털 포렌식 with CTF

CTF-D/Multimedia 2022.01.28

파일 카빙(Carving)

이번 파일 카빙에 대해서 배워보겠습니다. 파일 카빙이란 메타 데이터가 아닌 파일 자체의 바이너리 데이터(signature, header)를 이용해서 디스크의 비할당 영역에서 파일을 복구하는 방식입니다. 주의해야 할 점은 파일이 디스크에 연속적으로 할당되었는지, 비연속적으로 할당 되었는지 알아야합니다. *연속 할당 임의의 한 파일이 디스크 내에 선형적으로 연속된 블록을 할당합니다. 장점은 연속하는 논리적 블록들이 물리적으로 인접해 있기 때문에 빠르게 엑세스가 가능하고, 디렉토리가 단순히 시작 블록 주소와 파일의 길이만 알고 있으면 디렉토리 구현의 단순화가 가능합니다. 단점은 새로운 파일을 생성할 때 필요한 공간을 미리 명시를 해주어야 하며, 연속된 공간이 확보되지 않으면 생성이 불가능합니다. 일정 파일이 ..

해쉬 함수 (Hash Function)

저번 시간에는 데이터 인코딩에 대해서 배웠습니다. 데이터 인코딩을 간략하게 설명하자면 "숫자, 문자, 시간 등 데이터는 원본 그대로 형태의 모습으로 저장될 수도 있는 반면, 다양한 인코딩 알고리즘(Base58, Base64)에 따라 특수한 형태의 데이터로 변환" 되는것을 말합니다. 이번에는 해쉬 함수에 대해서 배워 보겠습니다. 다뤄볼 내용은 MD5, SHA256, SHA512입니다. 해쉬 함수(Hash Function) 해쉬 함수란, 임의의 길이의 데이터를 고정된 길이의 데이터로 계산해 주는 함수입니다. 해쉬 함수의 특징으로는 일방향성을 띄고있고, 변환된 해쉬 값으로 원래의 입력값을 알아내는 것은 거의 불가능합니다. 주로 일방향 해시함수는 "데이터의 무결성" 을 확인하는 방법으로 사용합니다. 일반적으로 ..

문자(Characters) 인코딩

디지털 데이터의 표현 방법인 문자에 대해서 알아보겠습니다. 문자 인코딩 인코딩 또는 텍스트 인코딩으로 불리며, 사용자가 입력한 문자나 기호들을 컴퓨터가 이용할 수 있는 2진 신호로 만드는(변환하는) 것을 말합니다. 디지털 기기에서 문자는 화면에 출력되는 형태를 결정하는 중요한 요소입니다. 문자는 한글, 영어, 숫자, 특수문자 등을 표현하기 위해 디지털 기기에 문자의 특정 값을 대응시켜 사용하는데 이를 문자 코드라고 칭합니다. 문자 코드는 컴퓨터 시스템마다 서로 다르지만 동일하게 해석이 되어 표준으로 지정되어 있는 문자 코드가 여럿 존재합니다. 그래서 오늘은 표준으로 지정되어 있는 문자 코드중 대표적으로 4가지만 알아보겠습니다. ASCII(아스키) 문자 코드 ASCII코드는 American Stanard ..

[Network] DefCon#21 #5

이번 시간에도 지난 시간과 이어서 Network 카테고리에 있는 문제를 풀어보도록 하겠습니다. 문제를 보니 Gregory에게 무슨 일이 일어났는지 찾는것인데요, 주어진 파일은 pcap파일이 아닌 zip파일입니다. 파일을 다운 받아서 압축을 풀어봅시다. 압축파일 안에는 Dump폴더와 log텍스트 파일이 존재하는데요, 로그 텍스트 파일을 먼저 실행해보겠습니다. 딱히 수상한 부분은 보이지 않지만 한가지 의심이 가는것은 형광색으로 칠한 부분인데요. 이 부분은 dump_android.cpp compiled라는건 운영체제가 안드로이드인 휴대폰을 덤프를 떴다는 뜻입니다. 덤프란? 특정 시점에 작업 중이던 메모리 상태를 기록한 것입니다. 그래서 로그 파일과 덤프 폴더가 존재했던것입니다. 그럼 덤프 파일을 조사해봐야 하..

CTF-D/Network 2021.10.17

[Network] DefCon#21 #4

이번 시간에도 지난 시간과 이어서 Network 카테고리에 있는 문제를 풀어보도록 하겠습니다. 이번 문제를 보면 Betty동료가 Gregory에게 제공한 비밀번호를 찾는것입니다. 비밀번호를 줬다는것은 메세지를 받았다는 추측할 수 있습니다. 그럼 Network Miner를 통해서 pcap파일을 보겠습니다. 열어보니 아니나 다를까 Hey Greg으로 시작하는 메세지가 와있습니다. 그래서 더 스크롤을 내려보니 스크립트 코드가 있는걸 확인할 수 있는데 코드를 보면 kml파일로 짜여진 스크립트 코드인걸 알 수 있습니다. kml파일을 구글에 검색해보니 Keyhole Markup Language의 약자로써 구글 어스, 구글 지도 등 브라우저에서 지리 데이터를 표시하는 데 사용되는 파일 형식이라고 적혀있습니다. 그럼 ..

CTF-D/Network 2021.10.15

[Network] DefCon#21 #3

이번 시간에도 지난 시간과 이어서 Network 카테고리에 있는 문제를 풀어보도록 하겠습니다. 문제를 읽어보면 Gregory는 Betty를 만나지 못할 경우 어떻게 죽는지를 찾는 문제입니다. 주어진 문제 파일인 round3.pcap파일을 다운 받아서 실행을 시켜봅시다. pcap파일을 실행 시켜서 내리다 보니 프로토콜중에 mp4라고 되어 있는 수상한 패킷이 하나 보입니다. TCP Stream으로 실행을 시켜 보겠습니다. 경로 [Analyze] - [Follow] - [TCP Stream] 해당 프로토콜의 TCP Stream를 보면 mms-message를 받았고, 받은 파일은 VID_20130705_145557.mp4입니다. 즉 mms는 Multimedia Messaging Service의 약자로써 멀티미디..

CTF-D/Network 2021.10.15

[Network] DefCon#21 #2

이번 시간에도 지난 시간과 이어서 Network 카테고리에 있는 문제를 풀어보도록 하겠습니다. 문제를 읽어보면 Betty와 Gregory가 만나는 장소를 찾으면됩니다. 주어진 문제 파일인 round2.pcap파일을 다운 받아서 실행을 시킨 다음에 문제에 나와있는대로 Betty와 Gregory가 서로 대화를 주고 받았을거 같으니 IRC프로토콜을 먼저 확인을 해보겠습니다. 경로 : [irc검색] - [오른쪽 마우스 클릭] - [Follow] - [TCP Strem] * IRC 프로토콜 Internet Relay Chat의 약자로 실시간 채팅 프로토콜입니다. 여러 사용자가 모여 대화를 나눌 수 있고, 또한 개인간의 대화 기능도 지원합니다. 또한 IRC 클라이언트와 직접 연결을 설정하는데 사용되는 하위 프로토콜..

CTF-D/Network 2021.10.11

[Network] DefCon#21 #1

이번 시간에는 CTF-d 워게임 사이트에서 네트워크 카테고리에 문제를 풀어보도록 하겠습니다. 문제를 읽어 보겠습니다. 문제를 읽어 봤을때 풀어야 하는 문제는 회의가 예정된 요일이 언제인지를 찾아야 하는데, 언제 진행 되었는지 알 수 있는 데이터가 어떤 형식으로 작성되어 있는지 알 수가 없기 때문에 WhireShark분석 도구를 통해서 패킷 용량, 프로토콜 등을 확인하면서 찾아야 합니다. 주어진 문제파일인 round1.pcap파일은 pcap(Packet Capture)의 약자로 패킷을 캡처한 파일이라고 생각하시면 됩니다. 그럼 바로 문제풀이를 해보겠습니다. 주어진 문제파일입니다. 이제 WhireShark로 열어 보겠습니다. 문제를 열었더니 패킷들이 많이 잡혀있습니다. 그중에서 실행을 했을 때, 가장 먼저 ..

CTF-D/Network 2021.10.09

[N0Named CTF - Write Up[B]] 유출된 자료 거래 사건 [1]

이번 시간에는 Forensic Season 1B에 있는 유출된 자료 거래 사건[1]에 대해서 풀이를 진행하겠습니다. 문제를 먼저 보도록 하겠습니다. 읽어보면 회사에서 내부 자료가 유출을 당했다. 그리고 경찰은 유출된 자료가 판매되고 있다는 신고를 받고, 판매자와 구매자를 잡으려고 했으나 증거가 부족하다. 그래서 구매자의 pc를 이미지 덤프를 하고 우리 회사에 의뢰를 맡겼으니 해결해주어야 한다. 간단하게 말해서 구매자의 집에 수상한 usb가 많이 발견되었다는 건 usb로 내부 자료를 유출했다고 의심이 든다. 그래서 연결된 usb를 찾아보자. 일단은 구글 드라이브에 저장되어 있는 문제 파일을 다운로드하도록 하자. 이렇게 생긴 압축파일을 하나 받을 것이다. 압축을 풀면 vmdk라는 확장자를 가진 가상 머신이 ..

CTF/N0named CTF 2021.09.20