CVE-2023-28322 Information
Description
An information disclosure vulnerability exists in curl <v8.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.
Reference
https://hackerone.com/reports/1954658
An
information
disclosure
vulnerability
exists
in
curl
<v8.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.