Commit Graph

97 Commits

Author SHA1 Message Date
Evan Huus eda26f9e5f wmem: convert more asn1 dissectors to pinfo->pool
We prefer pinfo->pool over the global wmem_packet_scope() now. Convert a
few more asn1 dissectors. After this commit, just three asn1 dissectors
remain.
2021-08-19 15:07:44 +00:00
Evan Huus e69446aa55 asn1: convert most dissectors to pinfo->pool
Part 1/2 as the commits were too big for CI.

Largely find/replace, with a few manual tweaks. Then regenerate the asn1
dissector sources and make sure everything still builds. There are a
handful of cases I skipped as too complex, but this covers most of the
asn1 dissectors.
2021-07-26 15:30:11 +00:00
Stefan Metzmacher 94ac641efa packet-kerberos: implement PAC Ticket checksum verification
We use some private functions from MIT kerberos:
- krb5_free_enc_tkt_part()
- decode_krb5_enc_tkt_part()
- encode_krb5_enc_tkt_part()
but we already do that for krb5int_c_mandatory_cksumtype(),
which is newer than the above functions.

We use all of them only under HAVE_KRB5_PAC_VERIFY,
so we don't seem to need additional configure tests.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2021-07-15 04:52:30 +00:00
Stefan Metzmacher 8cd877fc4d packet-kerberos: always get the true length from decrypt_krb5_data_asn1()
Otherwise the child_tvb blobs may contain to much data.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2021-07-15 04:52:30 +00:00
Isaac Boukris 5f8a932338 kerberos: fix compilation without kerberos
regressed_by: 38810b76

Reported-By: @crondaemon <Dario Lombardo>.
2021-07-02 10:32:18 +00:00
Isaac Boukris 80c57b3d0b Kerberos: add basic dissection of PAC_TICKET_CHECKSUM
per recent MS-PAC update.
2021-07-02 08:18:57 +00:00
Isaac Boukris d833f5c061 krb5: use all_keys to verify PAC server signature to allow U2U
As a U2U ticket can't always be distinguished from a normal ticket,
e.g. in TGS-REP. Revert the old fix which didn't work for that case.
2021-07-01 14:25:02 +00:00
Isaac Boukris 38810b763b credssp: fully dissect TSRemoteGuardCreds struct 2021-07-01 06:46:55 +00:00
Martin Gallo 85df6d0273 Kerberos: Add support for MS-KILE Key List Request messages
This adds the MS-KILE pre-authentication data types KERB-KEY-LIST-REQ [161] and KERB-KEY-LIST-REP [162] as per the latest Microsoft' Open Specifications.
Keys obtained from KERB-KEY-LIST-REP are learnt and saved for further use in other packets.

References:
- [MS-KILE] 2.2.11 KERB-KEY-LIST-REQ https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-kile/a8198db9-b537-4256-b903-80a716540398
- [MS-KILE] 2.2.12 KERB-KEY-LIST-REP https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-kile/38a494fc-2885-47eb-b008-3a1b574f3614
- [MS-KILE] 3.3.5.7.8 Key List Request https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-kile/732211ae-4891-40d3-b2b6-85ebd6f5ffff
2021-06-15 14:51:07 +00:00
yuanjungong e0d420ac48 Fix a resource leak by closing skf before return 2021-06-09 17:26:24 +00:00
Isaac Boukris 07bc6e4399 krb5: fix PAC server signature verification in U2U 2021-06-08 17:36:44 +00:00
Isaac Boukris f94f22b7f8 krb5: add TGT-REQ/TGT-REP dissection per the U2U RFC draft
https://datatracker.ietf.org/doc/html/draft-swift-win2k-krb-user2user-03
2021-06-08 17:36:44 +00:00
Dario Lombardo ea929d6401 wsutils: add local implementation of g_memdup2.
g_memdup() was deprecated and replaced with g_memdup2() in GLib 2.68,
we provide our own copy of g_memdup2() for older GLib versions.
2021-03-25 09:38:10 +00:00
Robert Crowston 2c44097e66 Kerberos: add support for decoding SPAKE exchanges
SPAKE preauthentication has been present in MIT Kerberos since 2014.
SPAKE is now in the final stages of write-up as an RFC (latest draft is
here:
https://tools.ietf.org/id/draft-ietf-kitten-krb-spake-preauth-09.txt.)
2021-01-01 20:17:35 +00:00
Martin Mathieson df651aca91 Spelling improvements
Improve script by ignoring common contractions, dealing with
e.g. \n within strings, and finding multiple concatenated words even
when no camelCase is used.

Also includes some actual spelling fixes.
2020-11-22 11:30:24 +00:00
Martin Mathieson 191e1f62d5 Kerberos: make tfs change in template rather than directly.
This fixes the change from https://code.wireshark.org/review/#/c/38087/

Change-Id: I43b3cb64bfd2f7398873804f1d4dd8821b050ef1
Reviewed-on: https://code.wireshark.org/review/38089
Petri-Dish: Martin Mathieson <martin.r.mathieson@googlemail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-08-08 09:54:09 +00:00
Guy Harris e1d9a226a2 Fix the type of arrays of pointers to hf_ values for bitfield routines.
The static arrays are supposed to be arrays of const pointers to int,
not arrays of non-const pointers to const int.

Fixing that means some bugs (scribbling on what's *supposed* to be a
const array) will be caught (see packet-ieee80211-radiotap.c for
examples, the first of which inspired this change and the second of
which was discovered while testing compiles with this change), and
removes the need for some annoying casts.

Also make some of those arrays static while we're at it.

Update documentation and dissector-generator tools.

Change-Id: I789da5fc60aadc15797cefecfd9a9fbe9a130ccc
Reviewed-on: https://code.wireshark.org/review/37517
Petri-Dish: Guy Harris <gharris@sonic.net>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-06-19 11:32:26 +00:00
Dario Lombardo 4ae362383f kerberos: move krb5.h include upwards.
FreeBSD defines constants such as KRB5_KU_USAGE_ACCEPTOR_SEAL
as part of the krb5_key_usage struct. Having such a defines
causes a clash that breaks the compilation. The struct needs to be
included first.

Error:

In file included from ./asn1/kerberos/packet-kerberos-template.c:413:
/usr/include/krb5.h:255:5: error: expected identifier
    KRB5_KU_USAGE_ACCEPTOR_SEAL = 22,
    ^
./asn1/kerberos/packet-kerberos-template.h:22:41: note: expanded from macro 'KRB5_KU_USAGE_ACCEPTOR_SEAL'
 #define KRB5_KU_USAGE_ACCEPTOR_SEAL     22
                                        ^

Change-Id: Ic241f2b6a2c01e7bd6c84d05e509f12e738ab2ac
Reviewed-on: https://code.wireshark.org/review/37358
Petri-Dish: Dario Lombardo <lomato@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Pascal Quantin <pascal@wireshark.org>
2020-06-04 08:50:11 +00:00
Dario Lombardo 16ef9b6735 kerberos: fix compilation on FreeBSD.
FreeBSD shows a combination of define cases that make the function
missing_encryption_key unused. Put it in the right define scope.

Change-Id: Icf226f134ffa7624a7daf709c302c29acfffe95e
Reviewed-on: https://code.wireshark.org/review/37360
Petri-Dish: Guy Harris <gharris@sonic.net>
Tested-by: Petri Dish Buildbot
Reviewed-by: Guy Harris <gharris@sonic.net>
2020-06-02 21:57:22 +00:00
Guy Harris f4e977ebac kerberos: add some comments to #else/#endif.
You are in a twisty little maze of #ifdefs, all different.

Change-Id: I4c82efe27e840919c7bf19a035abe90cd84e0fbd
Reviewed-on: https://code.wireshark.org/review/37367
Reviewed-by: Guy Harris <gharris@sonic.net>
2020-06-02 20:57:48 +00:00
Dario Lombardo 21dc133147 kerberos: set some parameters unused.
Change-Id: If813820ff96a73f68244bf195767c7dbc8df496f
Reviewed-on: https://code.wireshark.org/review/37359
Petri-Dish: Guy Harris <gharris@sonic.net>
Tested-by: Petri Dish Buildbot
Reviewed-by: Guy Harris <gharris@sonic.net>
2020-06-02 19:56:41 +00:00
Dario Lombardo fc35d51089 Fix compilation without kerberos.
Error:
./asn1/kerberos/packet-kerberos-template.c:109:2: error: unknown type name ‘enc_key_t’
./asn1/kerberos/kerberos.cnf: In function ‘dissect_kerberos_EncryptionKey’:
./asn1/kerberos/kerberos.cnf:386:7: error: unused variable ‘start_offset’ [-Werror=unused-variable]
./asn1/kerberos/kerberos.cnf: In function ‘dissect_kerberos_T_authenticator_subkey’:
./asn1/kerberos/kerberos.cnf:406:42: error: ‘save_Authenticator_subkey’ undeclared (first use in this function); did you mean ‘hf_kerberos_authenticator_subkey’?
./asn1/kerberos/kerberos.cnf:406:42: note: each undeclared identifier is reported only once for each function it appears in
./asn1/kerberos/kerberos.cnf: In function ‘dissect_kerberos_T_encTicketPart_key’:
./asn1/kerberos/kerberos.cnf:445:42: error: ‘save_EncTicketPart_key’ undeclared (first use in this function); did you mean ‘hf_kerberos_encTicketPart_key’?
./asn1/kerberos/kerberos.cnf: In function ‘dissect_kerberos_T_encKDCRepPart_key’:
./asn1/kerberos/kerberos.cnf:435:42: error: ‘save_EncKDCRepPart_key’ undeclared (first use in this function); did you mean ‘hf_kerberos_encKDCRepPart_key’?
./asn1/kerberos/kerberos.cnf: In function ‘dissect_kerberos_T_encAPRepPart_subkey’:
./asn1/kerberos/kerberos.cnf:416:42: error: ‘save_EncAPRepPart_subkey’ undeclared (first use in this function); did you mean ‘hf_kerberos_encAPRepPart_subkey’?
./asn1/kerberos/kerberos.cnf: In function ‘dissect_kerberos_T_krbCredInfo_key’:
./asn1/kerberos/kerberos.cnf:455:42: error: ‘save_KrbCredInfo_key’ undeclared (first use in this function); did you mean ‘hf_kerberos_krbCredInfo_key’?
cc1: all warnings being treated as errors

Change-Id: Ib9e38c3d745dd8a12ac8e4691918770a8b876727
Reviewed-on: https://code.wireshark.org/review/37313
Petri-Dish: Dario Lombardo <lomato@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-05-27 19:12:03 +00:00
Stefan Metzmacher f5858299a9 packet-kerberos: maintain EncAPRepPart_subkey in a kerberos_app_session_keys map
This improves the performance a lot if you have a keytab with a lot of
entries (e.g. for a whole domain).

GSSKRB5 decryption should only try the subkey of the AP-Rep.

We could further optimize this and remember the key
on the cenversation after the first success, but
that's for another day.

Change-Id: I405e41e7d90073d569fcbeec4b4188453a251000
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/37323
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-05-27 12:07:51 +00:00
Guy Harris 53a24787b8 kerberos: fix build without krb5_c_fx_cf2_simple().
Have completely separate definitions of krb5_fast_key(); the one used if
we don't have krb5_c_fx_cf2_simple() declares *all* parameters as
unused, as it's a stub routine.

Change-Id: I828c8d8f60634fcf537c2822f1a1c5db33ea2798
Reviewed-on: https://code.wireshark.org/review/37321
Petri-Dish: Guy Harris <gharris@sonic.net>
Tested-by: Petri Dish Buildbot
Reviewed-by: Guy Harris <gharris@sonic.net>
2020-05-27 06:56:57 +00:00
Stefan Metzmacher daf8b802d8 packet-kerberos: avoid guessing the KDC_REP keyusage were possible
We already know about the top level message type.

So we only need an autodetection for the TGS-REP.
We could also avoid that, but that would need state to
match TGS-REQ with TGS-REP.

But if we client used FAST and we got a strengthen_key,
we're sure an authenticator subkey was used.

Windows don't use an authenticator subkey without FAST,
but heimdal does.

For now try 8 before 9 in order to avoid overhead and false
positives for the 'kerberos.missing_keytype' filter in pure
windows captures.

Change-Id: If974dda735cd2aa5b1920c26309e5e2081723e4f
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/37299
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-05-26 13:58:45 +00:00
Stefan Metzmacher fd9ed550c3 packet-kerberos: avoid guessing the authorization_data keyusage
Change-Id: I28bdf176818401c1e4e6ef15cf808e502fcf4989
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/37300
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-05-26 12:38:16 +00:00
Stefan Metzmacher d89565e0c0 packet-kerberos: avoid guessing the authenticator key usage
We already know a few details in order to avoid the autodetection.

This avoids overhead and false positives for the
'kerberos.missing_keytype' filter.

Change-Id: I8a15fa41d2a56df3fb26de046a401bf43a876b79
Reviewed-on: https://code.wireshark.org/review/37298
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-05-26 12:20:10 +00:00
Stefan Metzmacher fa60a8c5f5 packet-kerberos: provide details about missing keys
It's useful to see which decryption keys are missing!
The "kerberos.missing_keytype" filter can be used to find all of them.

It's also useful to see which key_map was is in used
and how many decryption attempts were tried.

This should also allow future optimizations in
order to avoid decryption attempts based on the usage
and more detailed key maps.

Change-Id: Ie0302454e29a65aa00ddac79839aac8ec63fa290
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/37297
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-05-26 12:10:30 +00:00
Stefan Metzmacher 738e73a50e packet-kerberos: add support for decrypting KRB5 FAST messages
Currently this is only available for MIT Kerberos, but it
should be possible to implement the same using
krb5_crypto_fx_cf2() from Heimdal.

Change-Id: Ic3327dfde770f9345485bf97e2ac6045b909b64e
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/36472
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-05-26 11:42:42 +00:00
Stefan Metzmacher d2ad1a42d6 packet-kerberos: show learnt and used decryption keys on the top level tree
This gives a useful overview.

Change-Id: I39aaa8cf5de6fa3788c674355675873f2212b78f
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/37292
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-05-26 09:26:16 +00:00
Stefan Metzmacher 94f0842f8b packet-kerberos: split out kerberos_new_private_data()
This way we can avoid zero_private on the stack.

Change-Id: Iea7ed7e1cd6d0616b0e72aeff489549efd13e4f4
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/37291
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-05-26 09:25:29 +00:00
Stefan Metzmacher 975e8531a7 packet-kerberos: improve displaying used decryption keys
Change-Id: Ia2d8a0aa34ad1503477c0b8f3aa382a666067e24
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/37290
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-05-26 09:24:20 +00:00
Stefan Metzmacher b95a1b652f packet-kerberos: display details of learnt keys
That makes it easier to match them.

Change-Id: I29b9d69415d82a1ea7df275a89a413c2fd460b1f
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/37289
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-05-26 09:23:48 +00:00
Stefan Metzmacher 8edf1cf549 packet-kerberos: let decrypt_krb5_with_cb() use kerberos_all_keys
For now we use kerberos_all_keys, but in future we may select the
map based on passed usage.

Change-Id: I1f29e97aa60a41be3694b75bc4353b3a5dae0eae
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/37288
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-05-26 09:16:45 +00:00
Stefan Metzmacher 3a289703ef packet-kerberos: maintain a kerberos_all_keys map
This will be used temporary in order to replace
enc_key_list until we maintain/use separate lists.

Note that this will use wmem_file_scope(), but it
will get the longterm keys filled in when needed.

In the long run, we'll use more detailed lists
and use optimizations depending on the key usage.

Change-Id: If654dcfbc9ec8742eadbbb82b97a23fe8403022d
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/37287
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-05-26 08:55:14 +00:00
Stefan Metzmacher 0b7dd5720d packet-kerberos: let verify_krb5_pac() use kerberos_longterm_keys
Here it's enough to try longterm keys from the keytab.

Change-Id: I4d98fd7aa456c5cf2ca175cdcefc0ad1a4a8be2d
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/37286
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-05-26 08:28:46 +00:00
Stefan Metzmacher 4caaba64b2 packet-kerberos: maintain a kerberos_longterm_keys map
This will replace enc_key_list in the long run,
but will hold only keytabb entries, as that's what
the consumers outside of packet-kerberos.c are using.

Change-Id: Iba0436a0c1754232f0363cb1e9a905ac7c22986f
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/37285
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-05-26 08:28:29 +00:00
Stefan Metzmacher 6c4d03c74b packet-kerberos: allocate enc_key_list on wmem_epan_scope()
In the long run we'll remove enc_key_list and use a wmem_map instead.

Change-Id: I50a0a32eea4cb21bf2bcb5e97ed8eab6b847a75d
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/37283
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-05-26 08:28:04 +00:00
Stefan Metzmacher 20bfb9ffb9 packet-kerberos: use a fixed keyvalue buffer for enc_key_t
With AES-256 we need 32 bytes, there's no need to use allocated memory.

Change-Id: Ibbb99523c00f167d0b4dce95f038707855964bde
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/37282
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-05-25 06:33:56 +00:00
Stefan Metzmacher 4d801abad0 packer-kerberos: maintain enc_key_t->id as a unique number
The id is relative to the frame number, -1 means "keytab".

A key with a lower value means it was learned before
a key with a higher value.

This will make it easier to match keys, between learning and using.

Change-Id: I7b44626b4724dbd541c4702e3b9aa9350d809b08
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/37279
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-05-25 05:03:17 +00:00
Stefan Metzmacher bc26b5ee24 packet-kerberos: pass more information down to add_encryption_key()
For the MIT/Heimdal case we'll add much more details in future,
this step just passed down the required information.

Change-Id: I8c2ef732a66ca63931ee0481952014b6c460e0d2
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/37273
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-05-24 20:00:15 +00:00
Stefan Metzmacher afaa3d5c30 packet-kerberos: add hooks to handle each learned encryption in a separate way
This constructs more more useful origin names.
It also allows specific handling of each key type in future.

Change-Id: Ife959a39a0e5b3ef806c6f34f66128732b64536e
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/37272
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2020-05-24 19:15:53 +00:00
Stefan Metzmacher 6b5e61971e packet-kerberos: use better add_new_data_source() names
It makes it easier to see what is actually decrypted.

Change-Id: I6c1378f93d32dc31cedc6d901069fa9c30438d61
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/37269
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-05-21 16:57:08 +00:00
Stefan Metzmacher a9634ab5a0 packet-kerberos: add dissection of PAC_DEVICE_INFO
Change-Id: I81a3d76e445fa59580f0e95e451092dc526f017d
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/37268
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-05-21 16:57:01 +00:00
Dario Lombardo c6ea36d981 kerberos: fix compilation when kerberos is unavailable.
Small indentation fixes.

Change-Id: I62ba59f71dd530f82b5f0982fc0600737c5778c0
Reviewed-on: https://code.wireshark.org/review/36547
Reviewed-by: Martin Mathieson <martin.r.mathieson@googlemail.com>
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Petri-Dish: Dario Lombardo <lomato@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-03-23 14:53:51 +00:00
Stefan Metzmacher e59c89b58f packet-kerberos: split out a decrypt_krb5_data_asn1() helper function
If decrypt_krb5_data_private() is available we use it directly in order
to pass down kerberos_private_data_t.

Change-Id: I864d3e7d9adda454c96384d7b146ec774cd05d5f
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/36491
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-03-19 07:57:44 +00:00
Stefan Metzmacher 1579ad0d24 packet-kerberos: split out a decrypt_krb5_data_private() function
This allows passing 'kerberos_private_data_t' down to
used_encryption_key(). This will be used in order
to implement Kerberos FAST decryption.

For now we'll pass a zeroed kerberos_private_data_t,
but in future code can use decrypt_krb5_data_private()
directly and pass in the result of
kerberos_get_private_data(actx).

Change-Id: Iffdd3c3168eca3ed90cfa0a924248df9fac98a0c
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/36490
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-03-19 07:34:08 +00:00
Stefan Metzmacher 55c068bd0b packet-kerberos: dissect new RFC6113 errors messages
Change-Id: I2b95bc257762cc8734386171da1bf574220c4530
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/36469
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-03-18 19:21:35 +00:00
Stefan Metzmacher 8f00b7011f packet-kerberos: dissect names of new PAC_* types
For now we don't dissect the details, but it's already useful,
if they are not unknown elements.

Change-Id: I38b521262b688ba0afbbb9c58b99c3b50dbd2b24
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/36467
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-03-18 18:30:37 +00:00
Stefan Metzmacher fa7584898d packet-kerberos: Encrypted{AuthorizationData,Authenticator} are not the same
We need to dissect them differently...

Change-Id: Idb6d65800b1787b9cb6fca2630373547b9b7b1bc
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-on: https://code.wireshark.org/review/36466
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2020-03-18 18:30:12 +00:00