wireshark를 이용한 샘플 패킷 분석 / 파일 카빙 기법에 대해서 정리한다.
* 분석
- 의역을 해서는 안된다.
- 반드시 사실에 의거하여 판단을 해야 된다.
- wireshark 샘플 패킷
실습1.
- 같은 사무실에 근무하는 barry와 bath는 최근에 컴퓨터를 교체하였다.
- 그러나 인터넷이 되질 않아서 패킷을 덤프해 본 결과 다음과 같았다.
- 왜 인터넷이 되질 않았는지 확인해보고 트래픽을 보고 이유를 파악 해보자
( barry의 컴퓨터 패킷을 덤프한 내용 )
( beth의 컴퓨터 패킷을 덤프한 내용 )
* 누구의 컴퓨터가 인터넷이 되지 않고 왜 안되는지 이유는?
barry의 패킷 덤프 내용을 보면 외부로 통신하기전에 ARP Request를 보내고 응답으로 192.168.0.10의 MAC 주소를 받은걸로 보아서
외부로 HTTP 통신을 하기전에 게이트웨이 맥주소를 받았고 그다음 HTTP 통신이 일어났다고 추정할 수 있다.
beth의 패킷 덤프 내용을 보면 처음에 192.168.0.11로 ARP 통신을 보내고 거기에 대한 응답이 오지 않았다.
이후에 인터넷 브라우저를 사용하는데 에러가 뜨는걸 봐서는 beth 컴퓨터 게이트웨이 주소를 잘못 설정 한걸로 추정된다.
* 호스트 한 곳에서 덤프했기 때문에 물리주소가 같을 수 있다.
* 트래픽만 보고 정확하게 의도를 파악하긴 어렵지만 추측을 해볼 수 있기 때문에
트래픽에 나와있는 사실만을 가지고 최대한 정확하게 분석할 수 있어야 한다.
* 트래픽 분석에 있어서 필터 사용이 중요하다.
문제 7.
- 악의적인 트래픽과 정상적인 트래픽이 섞인 예제이다.
1. 공격자는 누구인가?
- 192.168.1.100
2. 어떤 공격을 하고 있었는지?
- 포트스캔
3. 확인된 정보는 어떤것이 있는지?
- 20~25번까지의 포트 스캔을 하였고 full-scan을 25번 포트가 열려있다.
* statics 옵션을 보면 유용한 기능들이 있다.
( 캡쳐파일에 전체적인 내용을 볼수 있기 때문에 분석을 하기전에 전체적으로 한번 보면 분석에 도움이 된다 )
파일 카빙 기법
- 파일의 복구하는 기법: 카빙
* 여기서는 트래픽에 있는 파일을 카빙을 이용해서 가져오는 방법만 알아보지만 카빙을 이용하면 깨진 파일조차도 복구할수 있다!!!
* 파일 시그니쳐
- 모든 파일은 해당 파일의 타입을 나타내는 고유의 값을 가지고 있다.
- 실행파일: .exe -> MZ
- 압축파일: .zip -> PK
- 이미지 파일: jpg -> 0xFF 0xD8 0xFF 0xE0
( 해당 패킷에서 http.request.method == GET으로 GET 메서드만 필터링해서 보면 그중 그림파일이 보이는데 아무거나 선택해서
마우스 우클릭후에 Follow로 들어가면 여러가지 stream들이 있다 )
* data를 hex dump를 이용해서 16진수로 저장하려 했지만 offset 부분까지 같이 저장되어서
Raw를 이용해서 바이너리 값으로 저장했다.
( hexedit를 이용해서 보면 jpg파일은 파일 시그니쳐가 0xFF 0xD8 0xFF 0xE0이므로 이 앞에 있는 헤더 내용들은 모두 지워준다 )
* 앞의 내용을 지워주는 이유는 프로그램이 파일의 확장자를 판단할때 파일 시그니처를 보고 판단하는데
현재는 파일 시그니쳐 앞에 여러가지 헤더 내용들이 들어있어서 깨진 파일이라고 나오게 된다.
* 이 방법 외에도 wireshark에서 지원해주는 File 메뉴에 Export Objects를 이용해서도 할 수 있다.
'프로그래밍 > NETWORK HACKING' 카테고리의 다른 글
[네트워크 보안] 네트워크 패킷 분석 문제 ( 포트 스캔 / DNS ) (0) | 2017.08.07 |
---|---|
[네트워크 보안] 네트워크 패킷 분석 실습 ( 파일 시그니처 관련 ) (0) | 2017.08.04 |
[네트워크 보안] HTTP header 분석 및 관련 공격 실습 (0) | 2017.08.01 |
[네트워크 보안] HTTP 개념 및 프로토콜 분석 (0) | 2017.07.31 |
[네트워크 보안] FTP 통신 동작 / ncat(netcat) (0) | 2017.07.29 |
댓글