Cara memanipulasi http dengan curl
- 2482
- 804
- Chris Little I
Objektif
Ketahui Cara Menggunakan Curl Untuk Membuat Permintaan HTTP Untuk Berinteraksi Dengan Kandungan Dalam Talian.
Pengagihan
Semua Pengagihan GNU/Linux
Keperluan
Hanya curl. Ia boleh didapati di repositori setiap pengedaran.
Kesukaran
Mudah
Konvensyen
#
- Memerlukan akses root sama ada melalui su
atau sudo
.
$
- Jalankan sebagai pengguna biasa anda
Pengenalan
Curl adalah pelbagai alat perintah untuk berinteraksi dengan web. Curl mampu bertindak seperti pelayar web, memuat turun fail, mengakses API, dan juga menandatangani anda ke akaun dalam talian. Curl boleh ditulis, dan ia mengendalikan segala -galanya dari antara muka baris arahan yang mudah.
Meraih halaman
Mendapatkan HTML laman web adalah salah satu perkara paling asas yang boleh dilakukan oleh curl. Cuba dapatkan halaman rumah kami.
$ curl https: // linuxconfig.org
Curl membuang semua HTML laman web di terminal. Ia kelihatan tidak kemas, tetapi itulah yang sepatutnya dilakukan.
Cuba yang lain. Laman web Debian sedikit lebih mudah dibaca.
$ curl https: // www.Debian.org/
HTTP HEADERS
Banyak masa, anda tidak memerlukan laman web keseluruhan. Semua HTML itu sukar untuk menyeberang, dan semua yang anda perlukan adalah maklumat mengenai sambungan. Curl mempunyai -I
Untuk itu.
$ curl -i https: // linuxconfig.org
Sekarang, anda hanya mendapat tajuk HTTP yang memberi anda maklumat mengenai sambungan anda ke laman web ini.
Ia berfungsi sama dengan Debian.
$ curl -i https: // www.Debian.org/
Mengawal output
Semua output itu tidak begitu berguna jika anda tidak dapat menyimpannya. Ini akan menjadi kesakitan untuk menjalankan keriting setiap kali anda memerlukannya, dan bagaimana jika ia berubah? Syukurlah, anda benar -benar dapat menyelamatkan output Curl dengan -o
bendera.
$ curl -o linuxconfig.html https: // linuxconfig.org
Anda hanya menyimpan kod sumber halaman utama Linuxconfig ke fail yang dipanggil Linuxconfig.html
.
Ini lebih berguna untuk fail multimedia. Cuba ambil logo Google.
$ curl -o Google.png https: // www.Google.com/imej/penjenamaan/googlelogo/1x/googlelogo_color_272x92dp.png
Anda juga boleh menggunakan -O
Bendera untuk memberitahu Curl untuk menggunakan nama fail yang ada.
$ curl -o https: // getfedora.org/statik/imej/fedora_infinity_140x140.png
Permintaan HTTP dan log masuk
Dengan Curl, anda boleh berinteraksi dengan laman web melalui HTTP. Anda sebenarnya boleh menggunakan curl untuk log masuk ke laman web. Lihat contoh ini dari Panduan Hydra Pentesting kami.
curl -v--data 'log = username & pwd = realpassword & wp-submit = log+in & testcookie = 1' --cookie 'wordpress_test_cookie = wp+cookie+cheake' http: // localhost/wp-login.php
The --data
atau -d
Bendera melepasi data bersama -sama dengan bentuk menggunakan pembolehubah rentetan besar dan nama medan bentuk yang berkaitan. Anda juga boleh menghantar kuki dengan keriting.
Cuba cari duckduckgo untuk linux.
$ curl -v -d 'q = linux' https: // duckduckgo.com
Hasilnya mungkin kacau, tetapi carian itu sendiri adalah mudah. Sekiranya anda tertanya -tanya, -v
Bendera menambah tajuk ke output biasa.
Pemikiran penutupan
Curl sangat kuat. Anda hanya menggaru permukaan, tetapi anda harus mempunyai idea yang baik bagaimana curl dapat berinteraksi dengan laman web dan memuat turun kandungan dari internet. Curl dapat memberi anda beberapa pandangan sebenar tentang bagaimana web berfungsi, jadi ia pasti bernilai bereksperimen dengan beberapa lagi.
Tutorial Linux Berkaitan:
- Perkara yang hendak dipasang di Ubuntu 20.04
- Pengenalan kepada Automasi, Alat dan Teknik Linux
- Cara Menggunakan Google Drive di Linux
- Perkara yang perlu dilakukan setelah memasang ubuntu 20.04 Focal Fossa Linux
- Menguasai Gelung Skrip Bash
- Pengurusan skrip & proses bash berbilang threaded di…
- Mint 20: Lebih baik daripada Ubuntu dan Microsoft Windows?
- Muat turun fail curl di linux
- Muat turun fail dari URL di linux menggunakan baris arahan
- Simpan kata laluan anda di baris arahan dengan goPass (dengan…
- « Pengendalian Pengecualian Python
- Cara menyulitkan direktori dengan encfs pada debian 9 stretch linux »