[ * ] 문제 확인



2013_ASIS FFinal300.pcap라는 패킷 캡쳐 파일이 주어지며 해당 패킷속에서 Key 값을 찾는 것이 해당 문제가 요구하는 것이다


[ * ] 해결 방향



이전에 포스팅 했던 Codegate_WeirdShark의 문제와는 달리 시원스럽게 열리는 것을 확인할 수 있었고, 해당 패킷의 흐름속에서 주고 받은 텍스트 파일, 사진 파일, 동영상 파일 등과 같은 멀티미디어의 흔적을 찾는다면 해당 문제에서 요구하는 Key 값을 얻어낼 수 있을 것 같다 


[ * ] 해결 과정

현재 문제에서 주어진 파일은 총 3263개의 패킷이 있으며 이를 전부 일일이 분석한다는 것은 시간적인 측면으로도 비효율적일뿐더러 기술적인 면에서도 발전이 더딜거라 생각하기 때문에 수 많은 패킷들 중 특징이 있는 것들로만 모아서 분석을 한다면 조금 더 빠르고 정확하게 찾아낼 수 있지 않을까 라는 생각이 들었다. 근본적으로 패킷이란 서로 다른 두 네트워크 간에 주고 받는 데이터의 흐름이기 때문에 이들이 주고 받는 패킷의 유형과 전체적인 동작에 대한 통계를 냄으로써 다양한 정보를 쉽게 얻을 수 있는 것이 없을까 찾아보다가 WireShark는 Statistics라는 탭에서 통계 기능을 제공한다는 사실을 알 수 있었다



통계 기능 중 Conversations라는 부분이 있는데, Conversations라 함은 장치 사이의 통신이며 MAC 계층 주소, 네트워크 계층 주소, 포트 번호 등을 포함하는 것이며, 해당 부분이 제공하는 기능은 장치 사이의 통신을 패킷, 바이트, 비트/초, 총 대화의 지속 시간등을 기준으로 활발한 연결을 찾는데 많은 도움을 주는 역할을 하며 아래의 사진은 해당 문제에서 Conversations라는 기능을 이용하고자 창을 띄운 것이다



해당 창에서 확인할 수 있는 탭은 Ethernet/IPv4/IPv6/TCP/UDP이며 각 탭의 옆에 있는 숫자는 대화의 수이다 예를 들어 위의 사진 처럼 IPv4 옆 4는 해당 사진에서 볼 수 있듯 4개의 대화가 이루어져 있음을 의미한다


위 사진을 보면 사설 IP 대역인 172.16.133.133과 172.16.133.149에서 상호간에 가장 활발히 패킷을 주고 받음을 알 수 있었으며 해당 패킷의 흐름을 따라가기 위해 패킷의 시작점을 알아야 했고 그 시작점은 Relation Start를 의미하는 듯한 Rel Start라는 부분에서 3.732919라는 패킷의 시작 시간 정보를 알 수 있었다. 알아낸 시간 정보를 기반으로 TCP Stream을 따라가는 과정이 담긴 사진은 아래와 같다




패킷의 흐름을 따라 갔더니 두 사용자 간의 주고 받은 대화가 있었으며 해당 대화에서 문제에서 요구하는 Key 값을 얻을 수 있었다.


Key = M)m5s6S^[>@#Q3+10PD.KE#cyPsvqH


구한 Key 값이 읽을 수 있는 형태가 아닐뿐더러 대화에서 Secret Key라고 한것으로 미루어 보아 암호에 대한 복호화 또는 압축파일에 사용되는 키 값이라 예상해볼 수 있고, 암호화 된 부분을 찾아 해당 키 값을 통해 복호화를 하거나 압축파일의 암호키로 사용되어 플래그 값의 추출을 진행까지 해야하는 문제인 것 같은 느낌이 들어서 해당 문제를 조금 더 알아보고 현재 포스팅 부분을 보완할 예정이다

http://deepinsecurity.blogspot.kr/2013/09/asis-ctf-2013-forensics-100-pcap.html >>>참조 바람.

참조 사이트

http://stih.tistory.com/17

https://openmaniak.com/kr/wireshark_stat.php

+ Recent posts