2014-03-24 7 views
0

TCP로 설정된 통신을 식별하는 데 문제가 있습니다. 첫 번째 완료된 통신 (예 : 첫 번째 완전한 http 통신)을 식별해야합니다. 캡처 한 .pcap 파일을 덤프했습니다. 통신은 세 방향 핸드 셰이크 (SYN, SYN - ACK, ACK)로 시작한 다음 양측에서 이중 FIN 플래그로 통신을 종료해야 함을 알고 있습니다.단일 통신 식별

하지만 그 덤프 파일에는 많은 통신이 있습니다. 그래서 여기에 질문이 있습니다. 정확히 하나의 의사 소통을 맞추기 위해 기억해야 할 것은 무엇입니까?

원본 IP, 대상 IP, 프로토콜, 어쩌면 포트에 대해 생각했지만 확실하지 않습니다.

모든 조언을 주셔서 감사합니다. 영어로 죄송합니다.

답변

0

당신은 당신이 필요로하는 것을 주장 연결의 5- 튜플 :

  1. 원본 IP
  2. 소스 포트
  3. 목적지 IP
  4. 목적지 포트
  5. 전송 (TCP 또는 UDP)는
  6. 쉐인 바와 같이

,이 프로토콜에 의존 예이며 ICMP에는 TCP 및 UDP와 같은 포트가 이라는 개념이 없습니다.

같은 libpcap의 필터는 TCP 및 UDP를 위해 일하는 것이 다음

tcp and host 1.1.1.1 and port 53523 and dst ip 1.1.1.2 and port 80 

은 tcpdump와 함께 적용 :

$ tcpdump -nnr myfile.pcap 'tcp and host 1.1.1.1 and port 53523 and dst ip 1.1.1.2 and port 80' 

당신이 타임 스탬프를 수행해야합니다 첫 번째 완성 연결을 확인하려면. 거기 여부를 판단하는

$ bro -r myfile.pcap 
$ bro-cut -d < conn.log | head -1 
2014-03-14T10:00:09-0500 CPnl844qkZabYchIL7 1.1.1.1 57596 1.1.1.2 80 tcp http 0.271392 248 7775 SF F ShADadfF 14 1240 20 16606 (empty) US US 

는 TCP에 대한 플래그 데이터를 사용하여가 (완전하거나 불완전한) 본 각 연결 시도를 나열합니다으로 답을 얻을 것 PCAP를 읽을 브로 같은 도구를 사용하여

성공적인 악수. 다른 프로토콜의 경우 보내고받은 바이트 수에 따라 판단 할 수 있습니다.

0

최초로 완료된 통신을 식별하는 것은 프로토콜 특유의 것입니다. 필터가 제대로 작동합니다. 프로토콜이 일반적으로 사용되는 프로토콜 인 경우 pcap 데이터 스트림에서 "대화"를 찾을 수있는 프로토콜 분석기 및 필터라는 플러그인이 있습니다. 대략적인 시작 시간과 종료 시간을 알고 있으면이를 좁히는 데 도움이됩니다.

  1. 당신은 필터링하여 특정 TCP 나 UDP 대화를 식별 할 수

최초의 완성 된 대화를 식별하기 위해 특정 대화

  • 를 확인하려면 :