The Hypertext Transfer Protocol (HTTP) yaiku apa sing ngidini browser sampeyan bisa komunikasi karo server lan entuk informasi saka Internet.

HTTP minangka protokol kanggo ngodhe lan ngirim informasi, kayata teks, gambar, swara, video lan multimedia, antarane browser web lan server web liwat Internet.
The Hypertext Transfer Protocol (HTTP) yaiku apa sing ngidini browser sampeyan bisa komunikasi karo server lan entuk informasi saka Internet. Iki minangka dhasar kanggo njelajah web, lan penting kanggo sampeyan ngerti protokol iki kanggo nggawe situs web utawa aplikasi sing nindakake apa wae kajaba nampilake konten statis. Ing artikel iki, kita bakal ngrembug panjalukan HTTP lan respon HTTP, uga sawetara header penting sing sampeyan butuhake nalika nggawe situs web sampeyan dhewe.

HTTP singkatan saka Hypertext Transfer Protocol. Iki minangka basa web, lan iku sing ndadekake browser sampeyan nuduhake situs web. HTTP nemtokake cara data kudu diformat supaya sampeyan bisa ndeleng gambar, maca teks, utawa nonton video online. Artikel iki bakal nerangake kabeh babagan HTTP kanthi rinci supaya sampeyan ngerti carane nggunakake ing komputer nalika browsing situs web!
HTTP minangka protokol, sing tegese Hypertext Transfer Protocol. Iki minangka standar sing digunakake browser web kanggo njaluk lan nampa informasi saka server ing jaringan. Protokol HTTP dirancang dening Tim Berners-Lee ing taun 1991 minangka bagéan saka rancangan asline kanggo apa sing bakal dadi World Wide Web. HTTP minangka akronim kanggo Hypertext Transfer Protocol. Iku cara nransfer data liwat internet antarane server web lan browser. HTTP bisa digunakake ing macem-macem skenario, kayata nalika sampeyan pengin ndeleng situs web ing telpon utawa digunakake bebarengan karo enkripsi SSL.
https minangka varian sing luwih aman, sing umume situs web digunakake saiki. Sinau luwih lengkap babagan https kene
HTTP digunakake kanggo apa?
HTTP minangka protokol sing umume situs web digunakake kanggo komunikasi karo browser web. Iki uga digunakake kanggo akeh perkara liyane, kayata ndownload file ing komputer utawa piranti seluler; nransfer data ing antarane rong server ing internet, lan malah ngirim pesen saka siji ponsel menyang telpon liyane.
Hypertext Transfer Protocol bisa dideleng minangka protokol lapisan aplikasi, tegese tugase ngirim data saka siji sistem komputer menyang sistem liyane kanthi struktur adhedhasar pesen. Klien njaluk sawetara jinis sumber daya (umpamane, kaca web) kanthi ngirim baris panjalukan HTTP sing diikuti karo header tambahan, saben ing baris dhewe. Sawise iki wis kasil dikirim, server nanggapi karo baris respon HTTP ngiring dening nomer baris header kanggo nyedhiyani dijaluk.
Iki utamane amarga ngidini kabeh jinis piranti, kayata kamera lan DVR sing mlaku ing perangkat kukuh lawas kanthi otentikasi sandhi telnet sing lemah dadi bagian saka tentara botnet tanpa owah-owahan.
Nalika kita bisa ngonfirmasi laporan kasebut, kita uga nyathet babagan sing ora biasa - HTTP digunakake tinimbang protokol UDP utawa TCP sing luwih umum. Iki langsung nyetel weker lan mimpin kita pracaya ana alesan ndasari kanggo ngalih iki siasat; siji sing ngasilake kemampuan tambahan kanggo penulis malware.
ijol-ijolan data HTTP
TTP ijol-ijolan data mbisakake loro layanan kanggo komunikasi karo saben liyane. Iki minangka proses ngirim informasi antarane rong sistem nggunakake panjalukan lan respon HTTP. Ana sawetara cara supaya informasi bisa dikirim liwat saluran komunikasi iki, kalebu ngirim data formulir, ngirim data JSON utawa XML, lan liya-liyane. ing awak request HTTP POST. Nggunakake Python kanggo nindakake panjalukan formulir HTML
Python duwe sawetara modul sing bakal mbantu sampeyan ngirim panjalukan layanan web (urllib2), nampa respon (server soket), lan ngurai kaca HTML (BeautifulSoup). Dadi yen pengin ngurai kaca HTML sing ditampa sampeyan kudu nginstal perpustakaan BeautifulSoup.
Uga, kanggo ngirim panjalukan HTTP POST, sampeyan uga butuh modul urllib2. Mangkene conto carane nggunakake modul kasebut bebarengan:
- ngimpor socketServer
- ngimpor urllib2
- panyuwunan = urllib2.Panjaluk
- respon = urllib2.urlopen(request)
- htmlString = response.read()
Otentikasi HTTP
Nalika interaksi web diwiwiti, prekara ing ngisor iki biasane kedadeyan Iki dikenal minangka "Otentikasi Dasar HTTP". Gagasan kasebut yaiku nalika sampeyan njaluk panjaluk menyang kaca web, saliyane ngirim header kanthi jinis konten sing cocog lan liya-liyane, sampeyan uga ngirim sawetara kredensial sing dikode ing base64 (ya, enkoding sing ngganggu banget). Saiki kanggo saben browser ing kana, ana login / sandhi sing gegandhengan sing digunakake kanggo mlebu menyang situs web. Kredensial sing dikirim dening browser sampeyan kudu cocog karo apa sing dikarepake. Elinga yen mung ing jeneng lan sandhi dikirim kanthi teks sing cetha - kabeh sing dienkripsi nggunakake SSL / TLS. Kredensial dikirim minangka bagean saka header "otorisasi", lan katon kaya iki:
Sesi aplikasi HTTP
HTTP minangka protokol stateless. Tegese saben panjalukan kudu ngemot kabeh informasi sing dibutuhake kanggo nglayani panyuwunan kasebut lan ngarahake panampa kanggo njupuk tindakan sing cocog, tinimbang protokol liyane kaya FTP utawa Telnet.
Ana sawetara aspek liyane saka HTTP sing cocog kanggo digunakake minangka mekanisme sesi:
Iki adhedhasar teks, mula ora ana kode binar sing bakal diowahi liwat enkoding kayata BinHex utawa UUencode (sanajan iki ana kanggo lalu lintas web!) sadurunge disuntikake menyang sistem liyane; Iku nggunakake TCP, khusus port 80 - iki tegese yen aplikasi sampeyan bisa ngontrol lalu lintas metu banjur sampeyan duwe free mrentah liwat pinten data sing inject menyang infrastruktur wong liya tanpa ana anggepan wungu dening firewall log; Iku nggunakake model klien / server.
Klien ngirim panjalukan lan server nanggapi panjaluk kasebut asynckanthi cepet, nyedhiyakake akeh kesempatan kanggo obfuscation utawa injeksi menyang sistem liyane kanthi nanggapi data saka mesin sampeyan dhewe
Didhukung kanthi akeh, supaya sampeyan bisa nyuntikake lalu lintas HTTP menyang platform target apa wae tanpa kudu ngerti apa-apa babagan implementasine protokol lan layanan web tartamtu. Pesen respon HTTP yaiku data sing ditampa dening piranti klien saka server web.
Masalah: Kita ora duwe pengenal sesi!
HTTP ora nyedhiyakake mekanisme kanggo ngenali sesi endi sing arep dirampas. Solusine? Kita butuh sawetara cara kanggo nggawe pengenal sesi dhewe sing bisa dikirim kanggo ngganti sing wis ana; yen kita kasil banjur panampa bakal garpu input kita menyang sesi HTTP anyar (saéngga nggayuh goal kita mbajak sesi HTTP).
HTTP, dianggep minangka sumber daya web utawa protokol transfer kanggo world wide web lan adhedhasar model klien/server ing ngendi pangguna-agen (klien) bakal njaluk informasi saka komputer remot liwat protokol HTTP, lan nampa data sing dijaluk. ing bali.
Panjaluk metode HTTP
Sanadyan sampeyan bisa mbangun server web tumpukan kanthi mung njupuk lan POST, nalika app tuwuh, dadi luwih angel kanggo ngatur. Klien HTTP sing bisa sampeyan temoni yaiku: OPTIONS, HEAD, PUT, DELETE lan TRACE. Panjaluk kasebut bakal mbantu sampeyan nangani data aplikasi kanthi luwih apik lan menehi penak kanggo ngatur data sesi.
PILIHAN HTTP
Cara HTTP OPTIONS digunakake dening klien HTTP kanggo njaluk informasi babagan pilihan komunikasi sing kasedhiya ing sumber sing dijaluk. Jarang banget didhukung dening browser amarga ora digunakake ing praktik dening pangguna pungkasan, mula meh ora ana gunane. Pangecualian yaiku Internet Explorer 5+ sing ndhukung fitur iki, nanging mung yen wis diaktifake liwat setelan.
HEADERS HTTP
Cara HTTP HEAD identik karo metode GET kajaba transfer kolom header respon diilangi. Iki tegese sampeyan ora bisa ngakses isi kaca, nanging biasane, sampeyan ora perlu, supaya iki luwih entheng tinimbang panjalukan biasa lan luwih cepet. Google Chrome lan Opera ndhukung cara iki uga umume server proxy.
HTTP PUT
Cara HTTP PUT njaluk supaya sumber daya tartamtu disimpen ing URI panjalukan efektif sing diwenehake. Bentenane dhasar antarane nggunakake POST lan PUT kanggo nggawe sumber daya yaiku POST ngidini klien nggawe sumber daya kanthi panyuwunan bebas saka apa sumber daya kasebut, dene PUT tansah nggawe conto anyar sumber daya sing diidentifikasi kanthi panyuwunan efektif kanggo klien web. .
HTTP DELETE
Cara HTTP DELETE njaluk supaya server asal mbusak asosiasi antarane URI panjaluk sing efektif lan sumber daya sing diidentifikasi. Sawise implementasine sukses, kabeh efek saka cara apa wae sing ditindakake ing sumber daya sing ditemtokake sadurunge DELETE (kalebu efek ing sumber daya liyane sing diasilake saka metode kasebut)
HTTP TRACE
Cara HTTP TRACE digunakake kanggo mbaleni maneh panjalukan sing ditampa supaya klien bisa ndeleng apa sing ditampa lan bisa uga nggunakake informasi kasebut kanggo tujuan tes utawa diagnostik. Nalika TRACE digunakake, panampa pungkasan bisa ndeleng kabeh data iki - sing ndadekake masalah keamanan utama.
Ing ngisor Line
HTML minangka basa sing ditulis ing kaca web. Iku singkatan saka HyperText Markup Language, lan iku sing ngandhani browser carane nampilake kaca web. HTML ora kalebu prentah kanggo perkara kaya ngemot gambar utawa muter video - iki ditangani kanthi teknologi sing kapisah kayata CSS, JavaScript, AJAX, lsp.