Adakah anda menggunakan keriting? Anda harus mengemas kini sekarang! Versi baru 7.71.0 memperbaiki dua pepijat serius

Kini boleh didapati versi kemas kini baru ddan "cURL 7.71.0", di mana mereka menumpukan perhatian untuk menyelesaikan dua bug serius yang membenarkan kata laluan akses dan juga keupayaan untuk menimpa fail. Itulah sebabnya jemputan untuk menaik taraf ke versi baru dibuat.

Bagi mereka yang tidak tahu utiliti ini, mereka harus tahu itu berfungsi untuk menerima dan mengirim data melalui rangkaian, menyediakan kemampuan untuk membentuk permintaan dengan fleksibel dengan menetapkan parameter seperti cookie, user_agent, referer, dan header lain.

Curl menyokong protokol rangkaian HTTP, HTTPS, HTTP / 2.0, HTTP / 3, SMTP, IMAP, POP3, Telnet, FTP, LDAP, RTSP, RTMP, dan rangkaian lain. Pada masa yang sama, kemas kini selari dilancarkan ke perpustakaan libcurl, yang menyediakan API untuk menggunakan semua fungsi keriting dalam program dalam bahasa seperti C, Perl, PHP, Python.

Perubahan utama dalam cURL 7.71.0

Versi baru ini adalah kemas kini dan seperti yang disebutkan di awal, ia dapat menyelesaikan dua bug, yang berikut:

  • Kerentanan CVE-2020-8177- Ini membolehkan penyerang menimpa fail tempatan pada sistem ketika mengakses pelayan serangan terkawal. Masalahnya hanya muncul apabila pilihan "-J" ("–remote-header-name") dan "-i" ("–head") digunakan secara serentak.

Pilihan "-J" membolehkan anda menyimpan fail dengan nama yang ditentukan di tajuk "Kandungan-Pelupusan". Ssaya sudah ada fail dengan nama yang sama, program ini keriting biasanya enggan menimpa, tetapi jika pilihan "-I" ada, logik pengesahan dilanggar dan ditimpa fail (pengesahan dilakukan pada tahap penerimaan badan respons, tetapi dengan pilihan "-i", tajuk HTTP keluar terlebih dahulu dan mempunyai masa untuk bertahan sebelum memproses badan respons). Hanya tajuk HTTP yang ditulis ke fail.

  • Kerentanan CVE-2020-8169: ini boleh menyebabkan kebocoran pada pelayan DNS beberapa kata laluan untuk mengakses laman web (Basic, Digest, NTLM, dll.).

Semasa menggunakan watak "@" dalam kata laluan, yang juga digunakan sebagai pembatas kata laluan dalam URL, ketika pengalihan HTTP dipicu, curl akan mengirimkan sebahagian kata laluan setelah watak "@" bersama dengan domain untuk menentukan nama.

Contohnya, jika anda menentukan kata laluan "passw @ passw" dan nama pengguna "user", curl akan menghasilkan URL "https: // user: passw @ passw @ example.com / path" dan bukannya "https: user: passw % 40passw@example.com/path "dan kirim permintaan untuk menyelesaikan hos" pasww@example.com "dan bukannya" example.com ".

Masalahnya terserlah ketika mengaktifkan sokongan untuk pengalihan HTTP Relatif (dilumpuhkan melalui CURLOPT_FOLLOWLOCATION).

Sekiranya menggunakan DNS tradisional, penyedia DNS dan penyerang dapat mencari maklumat mengenai bahagian kata laluan, yang dapat memintas lalu lintas rangkaian transit (walaupun permintaan asal dibuat melalui HTTPS, kerana lalu lintas DNS tidak dienkripsi). Semasa menggunakan DNS melalui HTTPS (DoH), kebocoran terhad pada pernyataan DoH.

Akhirnya, perubahan lain yang diintegrasikan ke dalam versi baru adalah penambahan pilihan "–retry-all-error" untuk percubaan berulang kali untuk melakukan operasi ketika terjadi kesalahan.

Bagaimana cara memasang cURL di Linux?

Bagi mereka yang berminat untuk memasang versi baru cURL ini Mereka boleh melakukannya dengan memuat turun kod sumber dan menyusunnya.

Untuk melakukan ini, perkara pertama yang akan kami lakukan ialah memuat turun pakej cURL terbaru dengan bantuan terminal, di dalamnya mari taip:

wget https://curl.haxx.se/download/curl-7.71.0.tar.xz

Kemudian, kami akan membuka zip pakej yang dimuat turun dengan:

tar -xzvf curl-7.71.0.tar.xz

Kami memasukkan folder yang baru dibuat dengan:

cd curl-7.71.0

Kami memasukkan sebagai root dengan:

sudo su

Dan kami taipkan perkara berikut:

./configure --prefix=/usr \
--disable-static \
--enable-threaded-resolver \
--with-ca-path=/etc/ssl/certs &&
make
make install &&
rm -rf docs/examples/.deps &&
find docs \( -name Makefile\* -o -name \*.1 -o -name \*.3 \) -exec rm {} \; &&
install -v -d -m755 /usr/share/doc/curl-7.71.0 &&
cp -v -R docs/* /usr/share/doc/curl-7.71.0

Akhirnya kita dapat memeriksa versi dengan:

curl --version

Sekiranya anda ingin mengetahui lebih lanjut mengenainya, anda boleh berjumpa pautan berikut.


Tinggalkan komen anda

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda dengan *

*

*

  1. Bertanggungjawab untuk data: AB Internet Networks 2008 SL
  2. Tujuan data: Mengendalikan SPAM, pengurusan komen.
  3. Perundangan: Persetujuan anda
  4. Komunikasi data: Data tidak akan disampaikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Pangkalan data yang dihoskan oleh Occentus Networks (EU)
  6. Hak: Pada bila-bila masa anda boleh menghadkan, memulihkan dan menghapus maklumat anda.