WireShark에서 문제가있는 패킷 만 표시


5

WireShark를 사용하여 수백만 개의 패킷을 분석하고 있습니다. 오류가있는 패킷 만 표시하는 필터가 있습니까?

"오류"는 IP 오류 (예 : 잘못된 IP 헤더 체크섬), TCP 오류 (예 : 잘못된 TCP 체크섬) 또는 응용 프로그램 계층 (내 경우에는 WireShark에서 구문 분석 한 FIX 프로토콜)의 오류를 의미합니다. .

잘못된 패킷 만 표시하도록 WireShark를 구성하려면 어떻게해야합니까?

답변:


7

Wireshark의 일반적인 개념으로 "오류"라는 개념은 심각도 수준이 "오류"(가장 높은 수준) 인 "전문가 정보"항목의 개념입니다.

해당 유형의 "전문가 정보"항목이있는 모든 패킷을 찾으려면 디스플레이 필터를 사용하십시오.

expert.severity == error

Wireshark 1.10.x 및 이전 버전에서

_ws.expert.severity == error

Wireshark 1.12 이상에서.

그러나 오류가있는 프로토콜에 대한 Wireshark dissector에 문제가있는 오류를 찾는 코드가 있고 오류가 발견되면 해당 오류에 대한 전문가 정보 항목을 추가하는 경우에만 오류가 표시됩니다. (Wireshark는 멍청한 네트워킹 전문가가 아니라 탐지하도록 작성된 오류 이외의 오류를 감지 할 수있는 영리한 네트워킹 전문가가 아닙니다.)


Wireshark를 사용하는 누군가를 언급 할 때 "그러나 .."단락이 잘못 배치되어 있습니다 (아마도 무시할 수는 없음). 그 체크섬을 수행하고 그로부터 필터를 만들면 Wireshark가 그것을 할 수 있습니다.
barlop

하나는 무시할 수 없으며 여전히 FIX 프로토콜에서 임의의 오류를 잡을 필요는 없다는 것을 인식하지 못할 수도 있습니다. 체크섬과 관련이없는 오류 (체크섬이 패킷 데이터에 의존하고 임의 계산을 수행 할 수없는 경우 BTW) 패킷 필터에서는 체크섬을 확인하기 위해 자체 필터를 작성할 수 없습니다. 다행히도 Wireshark 계산을 수행하고 체크섬을 확인 하는 경우는 아닙니다 ).

_ws.expert.severity==error대신 사용
Devendra

이는 Wireshark 1.10 (해당 필드에 "_ws."접두사가없고 당시의 현재 버전 임)과 Wireshark 1.12 (해당 접두사가 있고 2014 년 7 월에 릴리스 된) 사이의 변경이었습니다. ). 답변을 업데이트했습니다.

1

보다 구체적인 오류 필터 샘플 :

_ws.expert.group == Malformed
_ws.expert.severity != Ok
_ws.expert.message ~ "A new tcp session is started with the same ports"
  1. 그룹 이름 :

    체크섬, 시퀀스, 응답, 요청, 디코딩되지 않은, 재 조립, 변형, 디버그, 프로토콜, 보안, 주석

  2. 심각도 수준 :

    오류, 경고, 참고, 채팅, 설명, 확인

  3. 메시지

    전문가 정보 노드의 분석 섹션에서 문제가있는 패킷의 패킷 내용보기에서 조회 할 수 있습니다. 예 :Transmission Control Protocol/[SEQ/ACK analysis]/[TCP Analysis Flags]/[Expert Info]

이것은 user164970의 답변을 기반으로합니다.


_ws.expert.severity != Ok매우 유용했습니다.
Timo
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.