{"id":"CVE-2023-28322","details":"An information disclosure vulnerability exists in curl \u003cv8.1.0 when doing HTTP(S) transfers, libcurl might erroneously use the read callback (`CURLOPT_READFUNCTION`) to ask for data to send, even when the `CURLOPT_POSTFIELDS` option has been set, if the same handle previously wasused to issue a `PUT` request which used that callback. This flaw may surprise the application and cause it to misbehave and either send off the wrong data or use memory after free or similar in the second transfer. The problem exists in the logic for a reused handle when it is (expected to be) changed from a PUT to a POST.","aliases":["CURL-CVE-2023-28322"],"modified":"2026-04-16T04:35:30.322890639Z","published":"2023-05-26T21:15:16.153Z","related":["ALSA-2023:4354","ALSA-2024:1601","SUSE-SU-2023:2224-1","SUSE-SU-2023:2224-2","SUSE-SU-2023:2225-1","SUSE-SU-2023:2226-1","SUSE-SU-2023:2227-1","SUSE-SU-2023:2228-1","SUSE-SU-2023:2230-1","openSUSE-SU-2024:12940-1"],"references":[{"type":"WEB","url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/Z2LIWHWKOVH24COGGBCVOWDXXIUPKOMK/"},{"type":"WEB","url":"https://lists.debian.org/debian-lts-announce/2023/12/msg00015.html"},{"type":"WEB","url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/F4I75RDGX5ULSSCBE5BF3P5I5SFO7ULQ/"},{"type":"ADVISORY","url":"http://seclists.org/fulldisclosure/2023/Jul/47"},{"type":"ADVISORY","url":"http://seclists.org/fulldisclosure/2023/Jul/48"},{"type":"ADVISORY","url":"http://seclists.org/fulldisclosure/2023/Jul/52"},{"type":"ADVISORY","url":"https://security.gentoo.org/glsa/202310-12"},{"type":"ADVISORY","url":"https://support.apple.com/kb/HT213843"},{"type":"ADVISORY","url":"https://support.apple.com/kb/HT213844"},{"type":"ADVISORY","url":"https://support.apple.com/kb/HT213845"},{"type":"ADVISORY","url":"https://security.netapp.com/advisory/ntap-20230609-0009/"},{"type":"FIX","url":"https://hackerone.com/reports/1954658"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/curl/curl","events":[{"introduced":"0"},{"fixed":"a9f8fe28481fef7c28d85b4a12a3a35521408eaf"}],"database_specific":{"versions":[{"introduced":"0"},{"fixed":"8.1.0"}]}}],"versions":["before_ftp_statemachine","before_urldata_rename","curl-6_5","curl-6_5_1","curl-6_5_2","curl-7_10","curl-7_10_1","curl-7_10_2","curl-7_10_3","curl-7_10_4","curl-7_10_5","curl-7_10_6","curl-7_10_7","curl-7_10_8","curl-7_11_0","curl-7_11_1","curl-7_11_2","curl-7_12_0","curl-7_12_1","curl-7_12_2","curl-7_12_3","curl-7_13_0","curl-7_13_1","curl-7_13_2","curl-7_14_0","curl-7_14_1","curl-7_15_0","curl-7_15_1","curl-7_15_2","curl-7_15_3","curl-7_15_4","curl-7_15_5","curl-7_15_6-prepipeline","curl-7_16_0","curl-7_16_1","curl-7_16_2","curl-7_16_3","curl-7_16_4","curl-7_17_0","curl-7_17_0-preldapfix","curl-7_17_1","curl-7_18_0","curl-7_18_1","curl-7_18_2","curl-7_19_0","curl-7_19_1","curl-7_19_2","curl-7_19_3","curl-7_19_4","curl-7_19_5","curl-7_19_6","curl-7_19_7","curl-7_1_1","curl-7_2","curl-7_20_0","curl-7_20_1","curl-7_21_0","curl-7_21_1","curl-7_21_2","curl-7_21_3","curl-7_21_4","curl-7_21_5","curl-7_21_6","curl-7_21_7","curl-7_22_0","curl-7_23_0","curl-7_23_1","curl-7_25_0","curl-7_26_0","curl-7_27_0","curl-7_28_0","curl-7_28_1","curl-7_29_0","curl-7_3","curl-7_30_0","curl-7_31_0","curl-7_32_0","curl-7_33_0","curl-7_34_0","curl-7_35_0","curl-7_36_0","curl-7_37_0","curl-7_37_1","curl-7_38_0","curl-7_39_0","curl-7_40_0","curl-7_41_0","curl-7_42_0","curl-7_43_0","curl-7_44_0","curl-7_45_0","curl-7_46_0","curl-7_47_0","curl-7_47_1","curl-7_48_0","curl-7_49_0","curl-7_49_1","curl-7_4_1","curl-7_5","curl-7_50_0","curl-7_50_1","curl-7_50_2","curl-7_50_3","curl-7_51_0","curl-7_52_0","curl-7_52_1","curl-7_53_0","curl-7_53_1","curl-7_54_0","curl-7_54_1","curl-7_55_0","curl-7_55_1","curl-7_56_0","curl-7_56_1","curl-7_57_0","curl-7_58_0","curl-7_59_0","curl-7_5_2","curl-7_6","curl-7_6-pre4","curl-7_60_0","curl-7_61_0","curl-7_61_1","curl-7_62_0","curl-7_63_0","curl-7_64_0","curl-7_64_1","curl-7_65_0","curl-7_65_1","curl-7_65_2","curl-7_65_3","curl-7_66_0","curl-7_67_0","curl-7_68_0","curl-7_69_0","curl-7_69_1","curl-7_6_1","curl-7_6_1-pre1","curl-7_6_1-pre2","curl-7_6_1-pre3","curl-7_7","curl-7_7-beta1","curl-7_7-beta2","curl-7_7-beta3","curl-7_7-beta5","curl-7_70_0","curl-7_71_0","curl-7_71_1","curl-7_72_0","curl-7_73_0","curl-7_74_0","curl-7_75_0","curl-7_76_0","curl-7_76_1","curl-7_77_0","curl-7_78_0","curl-7_79_0","curl-7_79_1","curl-7_7_1","curl-7_7_2","curl-7_7_3","curl-7_7_alpha2","curl-7_8","curl-7_8-pre2","curl-7_80_0","curl-7_81_0","curl-7_82_0","curl-7_83_0","curl-7_83_1","curl-7_84_0","curl-7_85_0","curl-7_86_0","curl-7_87_0","curl-7_88_0","curl-7_88_1","curl-7_8_1","curl-7_8_1-pre3","curl-7_9","curl-7_9_1","curl-7_9_2","curl-7_9_3","curl-7_9_3-pre1","curl-7_9_3-pre2","curl-7_9_3-pre3","curl-7_9_4","curl-7_9_5","curl-7_9_5-pre2","curl-7_9_5-pre4","curl-7_9_6","curl-7_9_7","curl-7_9_7-pre2","curl-7_9_8","curl-8_0_0","curl-8_0_1","curl_7_6-pre3"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2023-28322.json","unresolved_ranges":[{"events":[{"introduced":"0"},{"last_affected":"37"}]},{"events":[{"introduced":"0"},{"last_affected":"38"}]},{"events":[{"introduced":"11.0"},{"fixed":"11.7.9"}]},{"events":[{"introduced":"12.0"},{"fixed":"12.6.8"}]},{"events":[{"introduced":"13.0"},{"fixed":"13.5"}]}]}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N"}]}