95291 Commits

Author SHA1 Message Date
Joakim Karlsson
6404d51adc HTTP2: reduce duplication of 3GPP session tracking 2025-06-22 11:55:45 +00:00
Gerald Combs
1d6402c85e [Automatic update for 2025-06-22]
Update manuf, services enterprise numbers, translations, and other items.
2025-06-22 09:17:38 +00:00
Steve McKay
06da3512cf kafka: fix dissect_kafka_delete_topics_response()
DeleteTopicsResponse.ThrottleTimeMs was added in v1, not v3
2025-06-22 07:44:40 +00:00
Gerald Combs
76f8c0577b Falco Events: Maximize the evt field length
Set the size of the "evt" protocol field to the length of the entire
event.
2025-06-21 17:26:26 -07:00
Joakim Karlsson
0cfee2f0e1 HTTP2: Improve 3GPP referenceid regex 2025-06-21 14:18:35 +02:00
Martin Mathieson
811b934391 Encodings: Also check FT_STRINGZ 2025-06-21 12:02:31 +00:00
Joakim Karlsson
f24a3af301 doc: Add HTTP2 tracking of 3GPP session in release note 2025-06-21 12:59:21 +02:00
Joakim Karlsson
aa1876634c HTTP2: update name for 3GPP session tracking 2025-06-21 12:07:53 +02:00
Joakim Karlsson
b003f599e5 HTTP2: Add Associate IMSI from mapping location with referenceid 2025-06-21 09:44:15 +00:00
John Thacker
24b7055869 Gryphon: Fix retrieval of destination ChannelID in CMD_MSGRESP_MODIFY
The destination channel ID is found at offset - 9, not offset - 5;
using offset - 5 is presumably from forgetting about the 4 byte
command header between the Command Data and the Frame Header:

https://www.dgtech.com/product/gryphon/manual/html/GCprotocol/client_howto/GCframeformat.php#Commands
https://www.dgtech.com/product/gryphon/manual/html/GCprotocol/commands/Responder/modify_response.php

Note that cmd_sched already correctly uses offset - 9 to retrieve the
destination channel ID in an analogous situation.

Also, do not use the %c printf specifier to print a byte, as that is
not guaranteed to be valid UTF-8 in fuzzed data.

Fix #20585
2025-06-20 19:17:14 -04:00
Gerald Combs
e7817ac7a8 docs: Add a release note entry 2025-06-20 10:32:50 -04:00
Anthonin Bonnefoy
0c912ae40f PGSQL: Dissect CopyData content
PostgreSQL uses CopyData messages for replication streams. Messages like
keepalives, standby and hot standby feedback updates are sent in a
CopyData message. Additionally, logical replication is sent through
XLogData messages within a CopyData.

CopyData messages are described in https://www.postgresql.org/docs/current/protocol-replication.html#PROTOCOL-REPLICATION-START-REPLICATION
Logical replication messages are described in https://www.postgresql.org/docs/current/protocol-logicalrep-message-formats.html

This patch adds dissection for the CopyData details and the content of
XLogData if logical replication messages are detected.
2025-06-20 14:00:47 +00:00
Gerald Combs
35cddec4de Associate .scap files with Stratoshark
3b4c215a5f associated .scap files with Wireshark. Make sure they're just
associated with Stratoshark.

Split our wiretap file extension lists into separate versions based on
application flavor.

Fixes #20583
2025-06-20 12:01:38 +00:00
John Thacker
93525b979a ssh: Fix dissected length of local extensions
If a subset tvb is passed in and dissection starts at zero relative
to that tvb, the returned value is already correct and doesn't need
the parent tvb offset subtracted.
2025-06-20 06:31:14 -04:00
Nicolas Baranger
4d9bf278c3 ssh: FIX Ping Pong messages dissection after REKEY 2025-06-20 11:38:06 +02:00
Martin Mathieson
b6ddd18e69 ORAN FH CUS: Show Symbol reordering layers as summaries 2025-06-19 18:51:01 +00:00
Gilbert Ramirez
495183988c Increase max indent When printing an expanded proto tree to a file
The max indent was 160. For deeply-nested protocol trees, as was
found in a NR Radio Resource Control packet, reported by
Tamás Regős, this maximum could be reached. This fix increased it to
1024.
2025-06-19 20:36:09 +02:00
Martin Mathieson
5c543358c3 Encodings: further reduce warning count 2025-06-19 19:02:26 +01:00
John Thacker
ade64a0bcd ssh: Use data-text-lines for shell and exec commands
The CHANNEL_DATA in these cases are stdout and stderr, so this is
more appropriate. If a pty has been negotiated there will be ANSI
escape codes included.
2025-06-19 18:19:34 +02:00
Diego Figueroa
ed083678b7 TETRA: correct the length of the call identifier field
as specified in the standard, the call identifier is a 14 bit word,
but in many pdu-types in the in tetra.asn the call identifier was
declared as a 10 bit word.
This mistake is corrected, and the file epan/dissectors/packet-tetra.c
is automatically generated with asn2wrs.py

For reference see the following tables of ETSI TS 100 392-2:
- Table 14.21
- Table 14.23
- Table 14.31
- Table 14.32
- Table 14.24
- Table 14.22
- Table 14.5
- Table 14.4
- Table 14.7
- Table 14.8
- Table 14.6
- Table 14.16
- Table 14.18
2025-06-19 17:16:15 +02:00
Martin Mathieson
7f653eed2e Remove temp debug 2025-06-19 09:56:25 +01:00
msweant
ce3fdfddd1 NMEA0183: Heuristic UDP Detection
Adding heuristic dissection function to detect
NMEA0183 over UDP ports.  Adds manufacturer
lookup table values as part of the heuristic
detection logic.  Heuristic disabled by default.
2025-06-18 18:28:31 -04:00
msweant
a7cbd8282c NMEA0183: Parametric Message Table Updates
Adding parametric message talker and sentence
formatter values to the dissector tables.
Details are based on open source research.
2025-06-18 20:59:45 +00:00
Martin Mathieson
4c0a79aa58 ORAN FH CUS: Break down individial symbolMask bits 2025-06-18 20:47:45 +00:00
Martin Mathieson
5a0ac770f8 dcerpc-pn-io: fix length of a subtree 2025-06-18 20:46:41 +00:00
John Thacker
187e23bf13 ssh: Use s2c_c2s tfstring
Use an existing true_false_string that has the correct values for
Client to Server and Server to Client. Also fix a spelling in an
expert info description.
2025-06-18 20:15:26 +00:00
Gerald Combs
be0ea5fe52 Docs: Add a buglink text check 2025-06-18 13:40:56 -04:00
Martin Mathieson
c397602a4c ASN1: Update a comment 2025-06-18 17:41:31 +01:00
Stig Bjørlykke
5939b1c054 icmp: Fix indent 2025-06-18 16:04:05 +02:00
Samantha Morris
92b9ebd316 ICMP: Readd EI switch block 2025-06-18 13:39:02 +00:00
John Thacker
a7aff4f333 extcap, plugins: Check for identical personal plugin directory
Check for an identical personal plugin or extcap directory, and don't
try to load extcap or plugins a second time from an identical directory.
This mostly can happen when using the --global-profile option, though I
suppose there are other methods as well like links.

Prevents some warnings about trying to load the same plugin or extcap
(or a plugin or extcap of the same name) like:

tshark: The plugin 'usbdump.dll' was found in multiple directories
 ** (tshark:11896) 07:28:36.907856 [Extcap WARNING] C:\gitlab-builds\builds\MsQ3pox2\0\wireshark\wireshark\extcap.c:1955 -- process_new_extcap(): Cannot store interface C:\Program Files\Wireshark\extcap\ciscodump.exe, already loaded as personal plugin
 tshark: Unable to load sinsp plugin C:\Development\wsbuild68\run\RelWithDebInfo\plugins\falco\cloudtrail.dll: Caught sinsp exception cannot register plugin C:\Development\wsbuild68\run\RelWithDebInfo\plugins\falco\cloudtrail.dll in inspector: found another plugin with name cloudtrail. Aborting..

Ping #20454
2025-06-18 12:24:53 +00:00
Martin Mathieson
4015e9250c Improve check for whether VALS fit into item mask 2025-06-18 10:20:09 +01:00
Sammie
c62d8d7abf ICMP: Make use of correct type list 2025-06-18 05:05:58 +00:00
John Thacker
a11df8a55e Bluetooth: Allow specifying if a custom UUID is a long attribute
Add the ability to specify is a custom UUID is a long attribute to
the custom UUIDs UAT. Abstract the access to the trees involved,
in case the storage changes. Constify a few functions.

Fix #20537
2025-06-18 06:47:14 +02:00
Martin Mayer
4a18e77d30 ICMPv6: Minor field display name changes 2025-06-18 06:45:10 +02:00
John Thacker
0396917654 androiddump: Have a timeout with non-blocking sockets on Windows too
After ae9da806947f66d2ea8bf77ca9c2ccdcd89f5483 androiddump properly
checks to see if sockets timeout on Windows (recv doesn't set errno
on Windows), so we can use a timeout instead of stalling.

Fix #20526
2025-06-18 00:06:10 +02:00
Ethan Stewart
b7060b5125 stcsig: Parse timestamp ns values correctly 2025-06-18 00:04:24 +02:00
Blank
bffdaf6d6e fix: pipeline 2025-06-18 00:03:01 +02:00
Blank
b09c37faa5 GSM MAP: fix Version 2 of ResetArg 2025-06-18 00:03:01 +02:00
msweant
efce296e4c EAP: MCC and MNC Reordering in the tree
The 3GPP FQDN places the MNC prior to the MCC.
This presents the MCC field value prior to the
MNC for consistency and readability.

Closes #16538.
2025-06-17 17:01:16 -04:00
Michail Koreshkov
fe09b2df4d GTP: Assosiate IMSI with all packets in session
Add field `e212.assoc.imsi` to all packets in one session.
2025-06-17 20:44:59 +00:00
John Thacker
ae9da80694 androiddump: Use WSAGetLastError instead of checking errno on Windows
"Error codes set by Windows Sockets are not made available through the
errno variable... The WSAGetLastError function is intended to provide a
reliable way for a thread in a multithreaded process to obtain per-thread
error information."

https://learn.microsoft.com/en-us/windows/win32/winsock/error-codes-errno-h-errno-and-wsagetlasterror-2

So on Windows, do not check errno to determine if we have timed out but
instead check if SOCKET_ERROR was returned and call WSAGetLastError.

Ping #20526

The next commit will re-introduce a timeout on non-blocking sockets
(this change prevents re-opening #20386.)
2025-06-17 15:32:44 -04:00
John Thacker
73d836e71c ssh: Parse SSH_MSG_CHANNEL_EXTENDED_DATA packets 2025-06-17 13:46:17 -04:00
John Thacker
e8e06d7065 ssh: Parse env and exec CHANNEL_REQUEST messages
Note that unfortunately the SSH protocol does not specify the encoding
for these strings, which must match whatever the server expects. (The
bytes returned in CHANNEL_DATA messages are affected by environment
variables and the shell defaults, but these strings are passed directly
to execve.) In practice they must not have internal NULs or use wide
characters (so no NUTF-16), and OpenSSH ports to Windows, IBM z/OS, etc.
force the use of UTF-8 or ISO-8859-1 rather than attempt to deal with
non ASCII-compatible encodings.

Also fix the indentation in ssh_dissect_connection_specific to match the
rest of the dissector and EditorConfig.
2025-06-17 13:07:01 -04:00
Michael Mann
362528c613 Start finding commonality between CAN wiretaps
Use socketcan.[c|h] for shared (Socket)CAN functionality where the wiretaps create records of the  WTAP_ENCAP_SOCKETCAN encapsulation type.

Adjust existing "homegrown" structures to use as much of the "shared" data structures from socketcan.h so that all can use the single function wtap_socketcan_gen_packet() to create records.
2025-06-17 15:05:15 +00:00
John Thacker
65718f1932 ssh: Adjust length warning for modes that do not encrypt packet length
RFC 4253 6: "[T]he length of the concatenation of 'packet_lVength',
'padding_length', 'payload', and 'random padding' MUST be `a multiple
of the cipher block size or 8, whichever is larger,... even when
using stream ciphers."

Modes that do not encrypt plen with the same key as the other three
cannot follow this as written and delete 'packet_length' from the
above sentence. As padding_length is one byte and random_padding at
least four, packet_length must be at least 8 in all modes.

This is not really necessary for AES GCM, because the block size is
16, but does affect some other modes such as -etm modes or ChaCha20.
2025-06-17 10:24:10 -04:00
Joakim Karlsson
b8e356e2b6 JSON-3GPP: add more PduSessionUri for referenceid 2025-06-17 14:20:33 +00:00
Stig Bjørlykke
1409ce6d24 Qt: Calculate dropped packet count percentage
Calculate the dropped packet count percentage from the total
number of packets, not only the captured packages. This gives
a better number for percentage of dropped packets.
2025-06-17 13:02:42 +00:00
John Thacker
128d9ac3f7 ssh: Add heuristic dissector
Add a SSH heuristic dissector that looks for the Version Identification
String.

If we have heuristics, we can't just use match_uint (which isn't set
when heuristics or conversation matching are used for the dissector.)

There should be some additional changes later to handle the rare case
where the server version string comes first, or if the client version
string is missing. The initial strings and SSH_MSG_KEXINIT are equivalent
in either direction; it is not until the key exchange actually starts that
server versus client can be determined.
2025-06-17 12:33:46 +00:00
Stig Bjørlykke
97afd107b7 file: Count OPT_PKT_DROPCOUNT
Add the block option OPT_PKT_DROPCOUNT to cf->drops. This will
show the number of dropped packets in the status bar, and in the
Capture File Properties dialog if the capture does not have a
Interface Statistics Block.
2025-06-17 13:07:27 +02:00