exploit for CVE-2021-43848The code in this repo is a PoC for CVE-2021-43848 and of very low quality.
I have no plans to maintain it in any way.
[4.0K] /data/pocs/e19f5d73a0527d93ce2765077e1c79d763b43c79
├── [1.0K] go.mod
├── [ 28K] go.sum
├── [8.3K] main.go
├── [4.0K] patched-quic-go
│ ├── [4.0K] benchmark
│ │ ├── [ 425] benchmark_suite_test.go
│ │ └── [2.7K] benchmark_test.go
│ ├── [1.8K] buffer_pool.go
│ ├── [1.2K] buffer_pool_test.go
│ ├── [4.4K] Changelog.md
│ ├── [9.2K] client.go
│ ├── [ 18K] client_test.go
│ ├── [2.9K] closed_session.go
│ ├── [1.5K] closed_session_test.go
│ ├── [ 567] codecov.yml
│ ├── [4.1K] config.go
│ ├── [5.9K] config_test.go
│ ├── [ 377] conn_generic.go
│ ├── [1.8K] conn.go
│ ├── [ 458] conn_helper_darwin.go
│ ├── [ 313] conn_helper_freebsd.go
│ ├── [ 451] conn_helper_linux.go
│ ├── [4.4K] conn_id_generator.go
│ ├── [7.3K] conn_id_generator_test.go
│ ├── [6.6K] conn_id_manager.go
│ ├── [ 14K] conn_id_manager_test.go
│ ├── [7.5K] conn_oob.go
│ ├── [7.1K] conn_oob_test.go
│ ├── [ 897] conn_test.go
│ ├── [1.3K] conn_windows.go
│ ├── [ 803] conn_windows_test.go
│ ├── [3.0K] crypto_stream.go
│ ├── [1.6K] crypto_stream_manager.go
│ ├── [4.6K] crypto_stream_manager_test.go
│ ├── [5.7K] crypto_stream_test.go
│ ├── [1.8K] datagram_queue.go
│ ├── [2.5K] datagram_queue_test.go
│ ├── [4.0K] docs
│ │ ├── [ 17K] quic.png
│ │ ├── [ 88K] quic.sketch
│ │ └── [ 11K] quic.svg
│ ├── [1.9K] errors.go
│ ├── [4.0K] example
│ │ ├── [4.0K] client
│ │ │ └── [2.4K] main.go
│ │ ├── [ 134] Dockerfile
│ │ ├── [4.0K] echo
│ │ │ └── [2.5K] echo.go
│ │ └── [5.2K] main.go
│ ├── [4.9K] framer.go
│ ├── [ 16K] framer_test.go
│ ├── [5.8K] frame_sorter.go
│ ├── [ 40K] frame_sorter_test.go
│ ├── [4.0K] fuzzing
│ │ ├── [4.0K] frames
│ │ │ ├── [4.0K] cmd
│ │ │ │ └── [7.8K] corpus.go
│ │ │ └── [1.9K] fuzz.go
│ │ ├── [4.0K] handshake
│ │ │ ├── [4.0K] cmd
│ │ │ │ └── [3.9K] corpus.go
│ │ │ └── [ 13K] fuzz.go
│ │ ├── [4.0K] header
│ │ │ ├── [4.0K] cmd
│ │ │ │ └── [4.3K] corpus.go
│ │ │ └── [2.6K] fuzz.go
│ │ ├── [4.0K] internal
│ │ │ └── [4.0K] helper
│ │ │ ├── [2.3K] helper.go
│ │ │ ├── [ 186] helper_suite_test.go
│ │ │ └── [2.1K] helper_test.go
│ │ ├── [4.0K] tokens
│ │ │ └── [3.5K] fuzz.go
│ │ └── [4.0K] transportparameters
│ │ ├── [4.0K] cmd
│ │ │ └── [2.9K] corpus.go
│ │ └── [1.5K] fuzz.go
│ ├── [4.0K] http3
│ │ ├── [2.0K] body.go
│ │ ├── [5.0K] body_test.go
│ │ ├── [ 10K] client.go
│ │ ├── [ 28K] client_test.go
│ │ ├── [1.9K] error_codes.go
│ │ ├── [1.2K] error_codes_test.go
│ │ ├── [3.0K] frames.go
│ │ ├── [5.7K] frames_test.go
│ │ ├── [ 798] gzip_reader.go
│ │ ├── [ 724] http3_suite_test.go
│ │ ├── [1.9K] request.go
│ │ ├── [5.0K] request_test.go
│ │ ├── [8.4K] request_writer.go
│ │ ├── [4.4K] request_writer_test.go
│ │ ├── [3.2K] response_writer.go
│ │ ├── [4.7K] response_writer_test.go
│ │ ├── [5.7K] roundtrip.go
│ │ ├── [8.2K] roundtrip_test.go
│ │ ├── [ 16K] server.go
│ │ └── [ 30K] server_test.go
│ ├── [ 15K] interface.go
│ ├── [4.0K] internal_
│ │ ├── [4.0K] ackhandler
│ │ │ ├── [ 550] ack_eliciting.go
│ │ │ ├── [ 856] ack_eliciting_test.go
│ │ │ ├── [ 768] ackhandler.go
│ │ │ ├── [ 463] ackhandler_suite_test.go
│ │ │ ├── [ 247] frame.go
│ │ │ ├── [ 136] gen.go
│ │ │ ├── [2.4K] interfaces.go
│ │ │ ├── [ 184] mockgen.go
│ │ │ ├── [2.2K] mock_sent_packet_tracker_test.go
│ │ │ ├── [6.3K] packet_linkedlist.go
│ │ │ ├── [2.1K] packet_number_generator.go
│ │ │ ├── [3.0K] packet_number_generator_test.go
│ │ │ ├── [4.4K] received_packet_handler.go
│ │ │ ├── [8.9K] received_packet_handler_test.go
│ │ │ ├── [3.8K] received_packet_history.go
│ │ │ ├── [ 14K] received_packet_history_test.go
│ │ │ ├── [5.5K] received_packet_tracker.go
│ │ │ ├── [ 14K] received_packet_tracker_test.go
│ │ │ ├── [ 943] send_mode.go
│ │ │ ├── [ 577] send_mode_test.go
│ │ │ ├── [ 28K] sent_packet_handler.go
│ │ │ ├── [ 59K] sent_packet_handler_test.go
│ │ │ ├── [2.6K] sent_packet_history.go
│ │ │ └── [8.1K] sent_packet_history_test.go
│ │ ├── [4.0K] congestion
│ │ │ ├── [ 624] bandwidth.go
│ │ │ ├── [ 267] bandwidth_test.go
│ │ │ ├── [ 334] clock.go
│ │ │ ├── [ 198] congestion_suite_test.go
│ │ │ ├── [8.4K] cubic.go
│ │ │ ├── [9.7K] cubic_sender.go
│ │ │ ├── [ 19K] cubic_sender_test.go
│ │ │ ├── [ 10K] cubic_test.go
│ │ │ ├── [4.0K] hybrid_slow_start.go
│ │ │ ├── [2.2K] hybrid_slow_start_test.go
│ │ │ ├── [1.0K] interface.go
│ │ │ ├── [2.5K] pacer.go
│ │ │ └── [4.2K] pacer_test.go
│ │ ├── [4.0K] flowcontrol
│ │ │ ├── [3.7K] base_flow_controller.go
│ │ │ ├── [9.0K] base_flow_controller_test.go
│ │ │ ├── [3.4K] connection_flow_controller.go
│ │ │ ├── [5.1K] connection_flow_controller_test.go
│ │ │ ├── [ 388] flowcontrol_suite_test.go
│ │ │ ├── [1.4K] interface.go
│ │ │ ├── [4.7K] stream_flow_controller.go
│ │ │ └── [9.7K] stream_flow_controller_test.go
│ │ ├── [4.0K] handshake
│ │ │ ├── [4.4K] aead.go
│ │ │ ├── [7.2K] aead_test.go
│ │ │ ├── [ 23K] crypto_setup.go
│ │ │ ├── [ 27K] crypto_setup_test.go
│ │ │ ├── [ 971] handshake_suite_test.go
│ │ │ ├── [3.4K] header_protector.go
│ │ │ ├── [ 860] hkdf.go
│ │ │ ├── [ 741] hkdf_test.go
│ │ │ ├── [2.2K] initial_aead.go
│ │ │ ├── [ 15K] initial_aead_test.go
│ │ │ ├── [3.5K] interface.go
│ │ │ ├── [ 176] mockgen.go
│ │ │ ├── [2.9K] mock_handshake_runner_test.go
│ │ │ ├── [1.7K] retry.go
│ │ │ ├── [1.6K] retry_test.go
│ │ │ ├── [1.2K] session_ticket.go
│ │ │ ├── [1.8K] session_ticket_test.go
│ │ │ ├── [1.7K] tls_extension_handler.go
│ │ │ ├── [5.9K] tls_extension_handler_test.go
│ │ │ ├── [3.5K] token_generator.go
│ │ │ ├── [4.1K] token_generator_test.go
│ │ │ ├── [2.1K] token_protector.go
│ │ │ ├── [1.7K] token_protector_test.go
│ │ │ ├── [ 11K] updatable_aead.go
│ │ │ └── [ 23K] updatable_aead_test.go
│ │ ├── [4.0K] logutils
│ │ │ ├── [ 922] frame.go
│ │ │ ├── [1.6K] frame_test.go
│ │ │ └── [ 192] logutils_suite_test.go
│ │ ├── [4.0K] mocks
│ │ │ ├── [4.0K] ackhandler
│ │ │ │ ├── [4.2K] received_packet_handler.go
│ │ │ │ └── [9.2K] sent_packet_handler.go
│ │ │ ├── [7.9K] congestion.go
│ │ │ ├── [4.8K] connection_flow_controller.go
│ │ │ ├── [9.6K] crypto_setup.go
│ │ │ ├── [4.0K] logging
│ │ │ │ ├── [ 15K] connection_tracer.go
│ │ │ │ └── [2.8K] tracer.go
│ │ │ ├── [2.8K] long_header_opener.go
│ │ │ ├── [3.3K] mockgen.go
│ │ │ ├── [4.0K] quic
│ │ │ │ ├── [2.4K] early_listener.go
│ │ │ │ ├── [8.8K] early_session.go
│ │ │ │ └── [5.5K] stream.go
│ │ │ ├── [3.0K] short_header_opener.go
│ │ │ ├── [3.1K] short_header_sealer.go
│ │ │ ├── [5.3K] stream_flow_controller.go
│ │ │ └── [4.0K] tls
│ │ │ └── [2.0K] client_session_cache.go
│ │ ├── [4.0K] protocol
│ │ │ ├── [1.6K] connection_id.go
│ │ │ ├── [2.9K] connection_id_test.go
│ │ │ ├── [ 689] encryption_level.go
│ │ │ ├── [ 594] encryption_level_test.go
│ │ │ ├── [ 626] key_phase.go
│ │ │ ├── [ 771] key_phase_test.go
│ │ │ ├── [2.3K] packet_number.go
│ │ │ ├── [6.8K] packet_number_test.go
│ │ │ ├── [9.5K] params.go
│ │ │ ├── [ 364] params_test.go
│ │ │ ├── [ 501] perspective.go
│ │ │ ├── [ 537] perspective_test.go
│ │ │ ├── [3.0K] protocol.go
│ │ │ ├── [ 192] protocol_suite_test.go
│ │ │ ├── [ 796] protocol_test.go
│ │ │ ├── [1.8K] stream.go
│ │ │ ├── [3.0K] stream_test.go
│ │ │ ├── [3.4K] version.go
│ │ │ └── [4.2K] version_test.go
│ │ ├── [4.0K] qerr
│ │ │ ├── [2.5K] error_codes.go
│ │ │ ├── [1.6K] errorcodes_test.go
│ │ │ ├── [3.3K] errors.go
│ │ │ ├── [ 188] errors_suite_test.go
│ │ │ └── [4.1K] errors_test.go
│ │ ├── [4.0K] qtls
│ │ │ ├── [3.0K] go116.go
│ │ │ ├── [3.0K] go117.go
│ │ │ ├── [ 102] go118.go
│ │ │ ├── [ 380] qtls_suite_test.go
│ │ │ └── [ 372] qtls_test.go
│ │ ├── [4.0K] testdata
│ │ │ ├── [1.0K] ca.pem
│ │ │ ├── [1.2K] cert.go
│ │ │ ├── [1.0K] cert.pem
│ │ │ ├── [ 748] cert_test.go
│ │ │ ├── [ 676] generate_key.sh
│ │ │ ├── [1.7K] priv.key
│ │ │ └── [ 192] testdata_suite_test.go
│ │ ├── [4.0K] testutils
│ │ │ └── [3.1K] testutils.go
│ │ ├── [4.0K] utils
│ │ │ ├── [ 331] atomic_bool.go
│ │ │ ├── [ 468] atomic_bool_test.go
│ │ │ ├── [ 481] buffered_write_closer.go
│ │ │ ├── [ 515] buffered_write_closer_test.go
│ │ │ ├── [6.7K] byteinterval_linkedlist.go
│ │ │ ├── [2.6K] byteoder_big_endian_test.go
│ │ │ ├── [2.0K] byteorder_big_endian.go
│ │ │ ├── [ 408] byteorder.go
│ │ │ ├── [ 367] gen.go
│ │ │ ├── [ 294] ip.go
│ │ │ ├── [ 374] ip_test.go
│ │ │ ├── [4.0K] linkedlist
│ │ │ │ ├── [6.2K] linkedlist.go
│ │ │ │ └── [ 324] README.md
│ │ │ ├── [2.8K] log.go
│ │ │ ├── [3.9K] log_test.go
│ │ │ ├── [2.8K] minmax.go
│ │ │ ├── [3.7K] minmax_test.go
│ │ │ ├── [ 286] new_connection_id.go
│ │ │ ├── [6.9K] newconnectionid_linkedlist.go
│ │ │ ├── [ 243] packet_interval.go
│ │ │ ├── [6.8K] packetinterval_linkedlist.go
│ │ │ ├── [ 623] rand.go
│ │ │ ├── [ 541] rand_test.go
│ │ │ ├── [3.9K] rtt_stats.go
│ │ │ ├── [6.3K] rtt_stats_test.go
│ │ │ ├── [ 230] streamframe_interval.go
│ │ │ ├── [1.1K] timer.go
│ │ │ ├── [2.0K] timer_test.go
│ │ │ └── [ 184] utils_suite_test.go
│ │ └── [4.0K] wire
│ │ ├── [6.5K] ack_frame.go
│ │ ├── [ 17K] ack_frame_test.go
│ │ ├── [ 353] ack_range.go
│ │ ├── [ 311] ack_range_test.go
│ │ ├── [2.2K] connection_close_frame.go
│ │ ├── [5.4K] connection_close_frame_test.go
│ │ ├── [2.7K] crypto_frame.go
│ │ ├── [4.6K] crypto_frame_test.go
│ │ ├── [ 948] data_blocked_frame.go
│ │ ├── [1.6K] data_blocked_frame_test.go
│ │ ├── [1.9K] datagram_frame.go
│ │ ├── [5.1K] datagram_frame_test.go
│ │ ├── [7.1K] extended_header.go
│ │ ├── [ 16K] extended_header_test.go
│ │ ├── [3.7K] frame_parser.go
│ │ ├── [ 14K] frame_parser_test.go
│ │ ├── [ 687] handshake_done_frame.go
│ │ ├── [6.8K] header.go
│ │ ├── [ 22K] header_test.go
│ │ ├── [ 441] interface.go
│ │ ├── [3.1K] log.go
│ │ ├── [5.1K] log_test.go
│ │ ├── [1.0K] max_data_frame.go
│ │ ├── [1.6K] max_data_frame_test.go
│ │ ├── [1.2K] max_stream_data_frame.go
│ │ ├── [2.0K] max_stream_data_frame_test.go
│ │ ├── [1.3K] max_streams_frame.go
│ │ ├── [3.4K] max_streams_frame_test.go
│ │ ├── [2.1K] new_connection_id_frame.go
│ │ ├── [4.6K] new_connection_id_frame_test.go
│ │ ├── [1.1K] new_token_frame.go
│ │ ├── [2.3K] new_token_frame_test.go
│ │ ├── [ 832] path_challenge_frame.go
│ │ ├── [1.4K] path_challenge_frame_test.go
│ │ ├── [ 824] path_response_frame.go
│ │ ├── [1.4K] path_response_frame_test.go
│ │ ├── [ 569] ping_frame.go
│ │ ├── [ 943] ping_frame_test.go
│ │ ├── [ 581] pool.go
│ │ ├── [ 537] pool_test.go
│ │ ├── [1.5K] reset_stream_frame.go
│ │ ├── [2.3K] reset_stream_frame_test.go
│ │ ├── [ 915] retire_connection_id_frame.go
│ │ ├── [1.5K] retire_connection_id_frame_test.go
│ │ ├── [1.2K] stop_sending_frame.go
│ │ ├── [2.0K] stop_sending_frame_test.go
│ │ ├── [1.2K] stream_data_blocked_frame.go
│ │ ├── [1.9K] stream_data_blocked_frame_test.go
│ │ ├── [4.7K] stream_frame.go
│ │ ├── [ 15K] stream_frame_test.go
│ │ ├── [1.3K] streams_blocked_frame.go
│ │ ├── [3.5K] streams_blocked_frame_test.go
│ │ ├── [ 19K] transport_parameters.go
│ │ ├── [ 27K] transport_parameter_test.go
│ │ ├── [1.8K] version_negotiation.go
│ │ ├── [3.4K] version_negotiation_test.go
│ │ └── [ 516] wire_suite_test.go
│ ├── [4.0K] interop
│ │ ├── [4.0K] client
│ │ │ └── [4.9K] main.go
│ │ ├── [1.1K] Dockerfile
│ │ ├── [4.0K] http09
│ │ │ ├── [3.4K] client.go
│ │ │ ├── [ 188] http09_suite_test.go
│ │ │ ├── [2.1K] http_test.go
│ │ │ └── [2.9K] server.go
│ │ ├── [ 484] run_endpoint.sh
│ │ ├── [4.0K] server
│ │ │ └── [2.4K] main.go
│ │ └── [4.0K] utils
│ │ └── [1.3K] logging.go
│ ├── [1.1K] LICENSE
│ ├── [4.0K] logging
│ │ ├── [2.1K] frame.go
│ │ ├── [5.2K] interface.go
│ │ ├── [ 382] logging_suite_test.go
│ │ ├── [ 15K] mock_connection_tracer_test.go
│ │ ├── [ 491] mockgen.go
│ │ ├── [2.7K] mock_tracer_test.go
│ │ ├── [5.6K] multiplex.go
│ │ ├── [9.7K] multiplex_test.go
│ │ ├── [ 637] packet_header.go
│ │ ├── [1.7K] packet_header_test.go
│ │ └── [3.7K] types.go
│ ├── [1.7K] mock_ack_frame_source_test.go
│ ├── [1.4K] mock_batch_conn_test.go
│ ├── [1.6K] mock_crypto_data_handler_test.go
│ ├── [3.9K] mock_crypto_stream_test.go
│ ├── [2.8K] mock_frame_source_test.go
│ ├── [3.2K] mockgen.go
│ ├── [1.4K] mockgen_private.sh
│ ├── [2.6K] mock_mtu_discoverer_test.go
│ ├── [2.1K] mock_multiplexer_test.go
│ ├── [6.6K] mock_packer_test.go
│ ├── [4.3K] mock_packetconn_test.go
│ ├── [6.6K] mock_packet_handler_manager_test.go
│ ├── [2.7K] mock_packet_handler_test.go
│ ├── [ 12K] mock_quic_session_test.go
│ ├── [5.1K] mock_receive_stream_internal_test.go
│ ├── [3.3K] mock_sealing_manager_test.go
│ ├── [2.5K] mock_send_conn_test.go
│ ├── [2.7K] mock_sender_test.go
│ ├── [6.3K] mock_send_stream_internal_test.go
│ ├── [4.5K] mock_session_runner_test.go
│ ├── [2.2K] mock_stream_getter_test.go
│ ├── [9.6K] mock_stream_internal_test.go
│ ├── [8.4K] mock_stream_manager_test.go
│ ├── [2.5K] mock_stream_sender_test.go
│ ├── [1.7K] mock_token_store_test.go
│ ├── [1.9K] mock_unknown_packet_handler_test.go
│ ├── [1.5K] mock_unpacker_test.go
│ ├── [2.3K] mtu_discoverer.go
│ ├── [3.4K] mtu_discoverer_test.go
│ ├── [2.8K] multiplexer.go
│ ├── [3.1K] multiplexer_test.go
│ ├── [ 13K] packet_handler_map.go
│ ├── [ 18K] packet_handler_map_test.go
│ ├── [ 28K] packet_packer.go
│ ├── [ 81K] packet_packer_test.go
│ ├── [6.2K] packet_unpacker.go
│ ├── [ 12K] packet_unpacker_test.go
│ ├── [4.0K] qlog
│ │ ├── [ 18K] event.go
│ │ ├── [1.2K] event_test.go
│ │ ├── [7.1K] frame.go
│ │ ├── [8.0K] frame_test.go
│ │ ├── [3.3K] packet_header.go
│ │ ├── [4.8K] packet_header_test.go
│ │ ├── [ 14K] qlog.go
│ │ ├── [1.3K] qlog_suite_test.go
│ │ ├── [ 36K] qlog_test.go
│ │ ├── [1.6K] trace.go
│ │ ├── [7.2K] types.go
│ │ └── [7.2K] types_test.go
│ ├── [ 524] quic_suite_test.go
│ ├── [4.0K] quicvarint
│ │ ├── [1.2K] io.go
│ │ ├── [1.5K] io_test.go
│ │ ├── [ 204] quicvarint_suite_test.go
│ │ ├── [3.1K] varint.go
│ │ └── [6.4K] varint_test.go
│ ├── [4.4K] README.md
│ ├── [8.2K] receive_stream.go
│ ├── [ 22K] receive_stream_test.go
│ ├── [3.2K] retransmission_queue.go
│ ├── [6.5K] retransmission_queue_test.go
│ ├── [1.3K] send_conn.go
│ ├── [ 958] send_conn_test.go
│ ├── [1.8K] send_queue.go
│ ├── [2.9K] send_queue_test.go
│ ├── [ 13K] send_stream.go
│ ├── [ 39K] send_stream_test.go
│ ├── [ 20K] server.go
│ ├── [ 45K] server_test.go
│ ├── [ 61K] session.go
│ ├── [114K] session_test.go
│ ├── [4.4K] stream.go
│ ├── [ 514] streams_map_generic_helper.go
│ ├── [9.5K] streams_map.go
│ ├── [5.4K] streams_map_incoming_bidi.go
│ ├── [5.5K] streams_map_incoming_generic.go
│ ├── [9.8K] streams_map_incoming_generic_test.go
│ ├── [5.5K] streams_map_incoming_uni.go
│ ├── [5.5K] streams_map_outgoing_bidi.go
│ ├── [5.5K] streams_map_outgoing_generic.go
│ ├── [ 16K] streams_map_outgoing_generic_test.go
│ ├── [5.5K] streams_map_outgoing_uni.go
│ ├── [ 17K] streams_map_test.go
│ ├── [3.3K] stream_test.go
│ ├── [2.5K] token_store.go
│ ├── [3.2K] token_store_test.go
│ ├── [ 127] tools.go
│ ├── [1.8K] window_update_queue.go
│ └── [3.9K] window_update_queue_test.go
└── [ 119] README.md
46 directories, 402 files