utls icon indicating copy to clipboard operation
utls copied to clipboard

Can you help support TLS Extension application_settings(17513)

Open deancn opened this issue 3 years ago • 1 comments

Extension: application_settings (len=5) Type: application_settings (17513)

https://www.ietf.org/archive/id/draft-vvv-tls-alps-01.html

deancn avatar Aug 07 '22 18:08 deancn

I second this. The UTLS client is missing the 17513 extension which causes it to get 403'd on some websites (cloudflare).

// chrome 96 wireshark
// JA3 Hash: cd08e31494f9531f560d64c695473da9
// JA3 Full: 771,4865-4866-4867-49195-49199-49196-49200-52393-52392-49171-49172-156-157-47-53,0-23-65281-10-11-35-16-5-13-18-51-45-43-27-17513-21,29-23-24,0

// chrome_83 client hello utls golang
// JA3 Hash: b32309a26951912be7dba376398abc3b
// JA3 Full: 771,4865-4866-4867-49195-49199-49196-49200-52393-52392-49171-49172-156-157-47-53,0-23-65281-10-11-35-16-5-13-18-51-45-43-27-21,29-23-24,0

Wireshark Client Hello for chrome 96.

Transport Layer Security
    TLSv1.2 Record Layer: Handshake Protocol: Client Hello
        Content Type: Handshake (22)
        Version: TLS 1.0 (0x0301)
        Length: 512
        Handshake Protocol: Client Hello
            Handshake Type: Client Hello (1)
            Length: 508
            Version: TLS 1.2 (0x0303)
            Random: 632375267fb762a679c020653e0b5fee5af889998e602608d0e4343648bd3f1b
            Session ID Length: 32
            Session ID: 737bb0d18030f5f0b47a0e4525137583a3bb4036e7a29dad7dc596c891e9e974
            Cipher Suites Length: 32
            Cipher Suites (16 suites)
            Compression Methods Length: 1
            Compression Methods (1 method)
            Extensions Length: 403
            Extension: Reserved (GREASE) (len=0)
            Extension: server_name (len=22)
            Extension: extended_master_secret (len=0)
            Extension: renegotiation_info (len=1)
            Extension: supported_groups (len=10)
            Extension: ec_point_formats (len=2)
            Extension: session_ticket (len=0)
            Extension: application_layer_protocol_negotiation (len=14)
            Extension: status_request (len=5)
            Extension: signature_algorithms (len=18)
            Extension: signed_certificate_timestamp (len=0)
            Extension: key_share (len=43)
            Extension: psk_key_exchange_modes (len=2)
            Extension: supported_versions (len=11)
            Extension: compress_certificate (len=3)
            Extension: application_settings (len=5)
            Extension: Reserved (GREASE) (len=1)
            Extension: padding (len=194)
            [JA3 Fullstring: 771,4865-4866-4867-49195-49199-49196-49200-52393-52392-49171-49172-156-157-47-53,0-23-65281-10-11-35-16-5-13-18-51-45-43-27-17513-21,29-23-24,0]
            [JA3: cd08e31494f9531f560d64c695473da9]

r3nby avatar Aug 07 '22 23:08 r3nby

Third this

moredure avatar Aug 24 '22 01:08 moredure

Fixed in #115, closing ticket.

gaukas avatar Sep 07 '22 03:09 gaukas

thank you so much

deancn avatar Sep 07 '22 09:09 deancn

Extension: renegotiation_info (len=1) Extension: server_name (len=22)

Any chance you can share how you added these 2 above in your UTLs request?

vladracs avatar Jul 27 '23 14:07 vladracs