Wireshark TLS Certificate Filters

1. Filter for all TLS handshake packets

tls.handshake

Shows all handshake records including Certificate, Client Hello, Server Hello, etc.

2. Filter specifically for Server Certificates

tls.handshake.type == 11

11 = Certificate message from server to client.

Useful to view and dissect certificate fields in packet details.

3. Filter for Certificate Requests (client auth scenarios)

tls.handshake.type == 15

Server requesting client certificate.

4. Filter for Certificate Verify
tls.handshake.type == 15

Client proving possession of private key during mutual TLS.
5. Filter for TLS Alerts (including cert failures)
tls.alert_message

Shows all alert messages. To focus on fatal certificate alerts:
tls.alert_message.level == 2

6. Filter for Specific Certificate-Related Alerts

ProblemWireshark FilterAlert CodeDescription
Bad Certificatetls.alert_message.desc == 4242Certificate rejected (e.g. invalid signature, policy failure).
Unsupported Certificatetls.alert_message.desc == 4343Certificate type not supported by peer.
Certificate Revokedtls.alert_message.desc == 4444Certificate has been revoked.
Certificate Expiredtls.alert_message.desc == 4545Certificate validity period expired.
Certificate Unknowntls.alert_message.desc == 4646Other certificate problem not covered by specific alerts.
Unknown CAtls.alert_message.desc == 4848Issuing CA not trusted by the client or server.
Access Deniedtls.alert_message.desc == 4949Access denied due to policy (not a technical cert error per se).

7. Filter for handshake failure in general

tls.alert_message.desc == 40

Generic handshake failure, can include cert issues.

8. Combined useful filter

tls.handshake.type == 11 || tls.alert_message


9. Filter for specific hostname (SNI)

tls.handshake.extensions_server_name

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.