보안/포렌식

LMG Network Forensics) 1. Ann’s Bad AIM (네트워크 포렌식)

마리사라 2022. 12. 22. 10:36
반응형

이번에는 Forensic Contest의 Puzzle #1인 Ann's Bad AIM을 풀어보겠습니다.


1. 문제

Anarchy-R-Us, Inc. suspects that one of their employees, Ann Dercover, is really a secret agent working for their competitor. Ann has access to the company’s prize asset, the secret recipe. Security staff are worried that Ann may try to leak the company’s secret recipe.

(Anarchy-R-Us, Inc는 직원 중 한 명인 Ann Dercover가 실제로 경쟁업체를 위해 일하는 비밀 요원이라고 의심합니다. Ann은 회사의 자산인 비밀 레시피에 액세스 할 수 있습니다. 보안 직원은 Ann이 회사의 비법을 유출하려고 할 수도 있다고 걱정합니다.)

Security staff have been monitoring Ann’s activity for some time, but haven’t found anything suspicious– until now. Today an unexpected laptop briefly appeared on the company wireless network. Staff hypothesize it may have been someone in the parking lot, because no strangers were seen in the building. Ann’s computer, (192.168.1.158) sent IMs over the wireless network to this computer. The rogue laptop disappeared shortly thereafter.

(보안 직원은 얼마 동안 Ann의 활동을 모니터링했지만 지금까지 의심스러운 것을 발견하지 못했습니다. 오늘 예상치 못한 노트북이 회사 무선 네트워크에 잠깐 등장했습니다. 직원은 건물에 낯선 사람이 보이지 않았기 때문에 주차장에 있던 누군가일 수 있다고 가정합니다. Ann의 컴퓨터(192.168.1.158)가 무선 네트워크를 통해 이 컴퓨터에 IM을 보냈습니다. 의심스러운 노트북은 얼마 지나지 않아 사라졌습니다.)

“We have a packet capture of the activity,” said security staff, “but we can’t figure out what’s going on. Can you help?”

(보안 요원은 "우리는 이 활동의 패킷 캡처를 가지고 있지만 무슨 일이 일어나고 있는지 알 수 없다. 도와줄 수 있나요?"라고 말했다.)

You are the forensic investigator. Your mission is to figure out who Ann was IM-ing, what she sent, and recover evidence including:

(당신은 법의학 수사관입니다. 당신의 임무는 앤이 누구에게 IM-ing을 보냈는지, 무엇을 보냈는지를 파악하고 다음을 포함한 증거를 복구하는 것입니다.)

 

1. What is the name of Ann’s IM buddy? (앤의 IM 친구의 이름은?)
2. What was the first comment in the captured IM conversation? (캡처된 IM 대화에서 첫 번째 댓글은 무엇인가?)
3. What is the name of the file Ann transferred? (앤이 전송한 파일의 이름은 무엇인가?)
4. What is the magic number of the file you want to extract (first four bytes)? (추출하려는 파일의 매직 넘버(첫 4바이트)는 무엇인가?)
5. What was the MD5sum of the file? (파일의 MD5 값은 무엇인가?)
6. What is the secret recipe? (비밀 레시피는 무엇인가?)

 

file : http://forensicscontest.com/contest01/evidence01.pcap

 

MD5(evidence.pcap) = d187d77e18c84f6d72f5845edca833f5


2. 풀이

우선 문제를 풀기 위해 위의 파일을 열어줍니다. 이때 파일의 무결성을 확인하기 위해 파일의 MD5값을 확인해 줍니다. MD5값은 명령 프롬프트 또는 PowerShell로 확인할 수 있습니다.

certutil -hashfile [filename] md5

문제에서 말해준 MD5와 같으니 파일의 무결성은 문제가 없습니다. 이제 본격적으로 문제를 풀어보겠습니다.

 

우선 pcap파일을 Wireshark를 통해 열어봅니다.

네트워크에서 여러 패킷이 오고 간 것을 볼 수 있습니다. 이제 필요한 내용으로 추려보겠습니다. 우선 Ann이 무언가를 유출하려고 했으니 Ann의 IP와 관련된 패킷으로 추려봅니다. Ann의 IP는 192.168.1.158이라고 하였으니 필터를 걸어줍니다.

ip.addr == 192.168.1.158

쭉 내려가다 보면 64.12.24.50과 많은 양의 통신을 주고받은 것을 볼 수 있습니다. 이 중에서 길이가 긴 No. 25의 패킷을 확인해 보겠습니다. 해당 패킷에 우클릭 - Follow - TCP Stream을 누르면 해당 패킷의 TCP Stream을 볼 수 있습니다.

 

내용을 보아하니 Secret Recipe를 전달하는듯한 내용입니다. 잘 찾은 듯합니다. 여기서 Sec558user1이라는 이름이 반복적으로 나오는 것을 보아 상대방 이름은 Sec558user1으로 추측됩니다.

 

또한 여기서 가장 완성된 문장인 "Here's the Secret recipe... I just downloaded it from the file server. Just copy to a thumb drive and you're goot to go>(>) :-)"가 IM 대화의 첫 번째 댓글로 보입니다.

 

그리고 내용을 잘 살펴보면 recipe.docx라는 파일의 형태를 한 이름이 보이는 데, 이것이 3번 문제인 앤이 전송한 파일의 이름일 것입니다.

 

따라서 4번 문제인 파일의 매직 넘버는 Docx 파일의 매직넘버인 "50 4B 03 04"입니다.

 

5번 문제에서는 파일의 MD5 값을 물어봅니다. MD5 값을 정확하게 확인하려면 파일을 가지고 있어야 하므로 좀 더 살펴보겠습니다.

쭉 내려가다 보면 Ann이 205.188.13.12라는 IP와 TCP 연결을 맺고 무언가를 전송한 흔적이 보입니다. 하지만 문제에서 의심스러운 노트북회사 내부에서 무선 네트워크를 통해 접속했다고 했으니 이 205.188.13.12는 아닌 듯합니다. 좀 더 살펴보겠습니다.

 

좀 더 내려가니 Ann이 같은 Network인 192.168.1.159와 TCP통신을 맺은 것이 보입니다. 문제의 조건과도 부합하니 해당 패킷을 확인해 보겠습니다.

패킷에 FileXfer(파일 전송 프로그램)과 recipe.docx라는 내용이 보이니 이것이 recipe.docx를 전송한 TCP Stream이라는 것을 알 수 있습니다. 이제 이 Stream에서 recipe.dox를 추출해 보겠습니다.

 

우선 해당 TCP Stream을 Raw형태로 변환합니다.

이 패킷은 Ann이 보내는 패킷과 Sec558user1이 보내는 패킷이 같이 존재합니다. 여기서 Ann이 보내는 패킷에 recipe 파일이 존재할 것이니 왼쪽 하단의 Entire conversation에서 192.168.1.158 -> 192.168.1.159로 보내는 패킷만 확인합니다.

 

이걸 하단의 Save as... 를 이용하여 저장합니다. 이름은 적당히 recipe로 하겠습니다. 이제 이것을 Hex Editer 프로그램으로 열어봅니다. 저는 HxD를 사용하겠습니다.

https://mh-nexus.de/en/hxd/

 

HxD - Freeware Hex Editor and Disk Editor | mh-nexus

HxD - Freeware Hex Editor and Disk Editor HxD is a carefully designed and fast hex editor which, additionally to raw disk editing and modifying of main memory (RAM), handles files of any size. The easy to use interface offers features such as searching and

mh-nexus.de

 

이제 여기서 recipe.docx의 Data만 추출해야 합니다. 이때 사용되는 것이 4번 문제인 Docx 파일의 매직 넘버입니다. 매직 넘버 "50 4B 03 04"가 Docx 파일의 첫 4 Byte이니 그 이전의 내용을 모두 지우면 Docx 파일의 내용만 남게 되는 것입니다.

 

이제 해당 매직 넘버를 Ctrl + F를 통해 찾습니다.

해당 값은 여러 개가 나올 것이지만 가장 먼저 나타나는 값만 찾으면 됩니다.

 

해당 값을 찾았다면 그 이전의 값은 모두 지워줍니다.

이제 이것을 docx 확장자로 저장하고 실행해 보겠습니다.

내용이 잘 열리게 됩니다. 이것이 6번 문제인 비밀 레시피입니다.

 

마지막으로 5번 문제인 MD5 값을 확인해 보겠습니다.

따라서 MD5 값은 8350582774e1d4dbe1d61d64c89e0ea1 입니다.


3. 마무리

이제 문제와 답을 함께 써 보겠습니다.

 

1. What is the name of Ann’s IM buddy? (앤의 IM 친구의 이름은?)

Sec558user1


2. What was the first comment in the captured IM conversation? (캡처된 IM 대화에서 첫 번째 댓글은 무엇인가?)

Here's the Secret recipe... I just downloaded it from the file server. Just copy to a thumb drive and you're goot to go>:-)


3. What is the name of the file Ann transferred? (앤이 전송한 파일의 이름은 무엇인가?)

recipe.docx


4. What is the magic number of the file you want to extract (first four bytes)? (추출하려는 파일의 매직 넘버(첫 4바이트)는 무엇인가?)

50 4B 03 04


5. What was the MD5sum of the file? (파일의 MD5 값은 무엇인가?)

8350582774e1d4dbe1d61d64c89e0ea1


6. What is the secret recipe? (비밀 레시피는 무엇인가?)

1 serving

Ingredients:

4 cups sugar

2 cups water

In a medium saucepan, bring the water to a boil. Add sugar. Stir gently over low heat until sugar is fully dissolved. Remove  the  saucepan from heat.  Allow to cool completely. Pour into gas tank. Repeat as necessary.

 

이제 이것이 맞는지 확인해 보겠습니다. 해당 문제의 답 역시 forensic contest에 있습니다.

https://forensicscontest.com/2009/09/25/puzzle-1-solution-anns-bad-aim

 

Puzzle #1 Solution: Ann’s Bad AIM – Network Forensics Puzzle Contest

WINNER: Kristinn Gudjonsson (Wins a free SANS OnDemand class- worth up to $3500) Finalists: Aaron Allen Alan Tu Amar Yousif Erik Hjelmvik Franck Guénichot Jeff Jarmoc Joshua Soles (Win a Fiendish Japanese Pocket Puzzle) Semifinalists: Drew Pekkarinen Yo

forensicscontest.com

 

4번에서 16 bit임을 표현하기 위한 0x가 붙고 6번에서 레시피의 제목이 붙은 것 이외에는 정답임을 알 수 있습니다.


4. 마치며

이번에는 Puzzle 1을 풀어보았습니다. 이것이 디지털 포렌식의 모든 것이라고 할 수는 없지만 나름 필요한 기술이 포함되어 있다고 할 수는 있을 것입니다. 다음에는 Puzzle 2인 Ann Skips Bail을 풀어보겠습니다.

반응형