it-swarm-id.com

Bagaimana saya dapat memeriksa bahwa cookie saya hanya dikirim melalui https terenkripsi dan bukan http?

Saya membaca posting blog GitHub pindah ke SSL, tetapi tetap Firesheepable yang mengklaim bahwa cookie dapat dikirim tidak terenkripsi melalui http bahkan jika situs tersebut hanya menggunakan https. Mereka menulis bahwa cookie harus ditandai dengan "bendera aman", tetapi saya tidak tahu seperti apa bentuk bendera itu.

Bagaimana saya dapat memeriksa bahwa cookie saya hanya dikirim melalui https terenkripsi dan tidak lebih dari http tidak terenkripsi, di situs saya yang hanya menggunakan https?

45
Jonas

Bendera cookie aman terlihat seperti ini:

aman;

Itu dia.
Ini akan muncul di akhir tajuk Http:

Set-Cookie: mycookie = somevalue; path =/securesite /; Kedaluwarsa = 12/12/2010; aman; httphanya;

Tentu saja, untuk memeriksanya, cukup tancapkan proxy atau sniffer (saya menggunakan sangat baik Fiddler ) dan menonton ...

* Bonus: Saya juga melemparkan atribut httpOnly di sana, melindungi terhadap akses cookie dari ruang Javascript, mis. melalui XSS.

48
AviD

Anda dapat memeriksa menggunakan alat seperti Firebug (ekstensi untuk Firefox: http://getfirebug.com/ ). Cookie akan ditampilkan sebagai 'aman'.

Jika Anda menggunakan Firefox, Anda dapat melihat di jendela 'Hapus Cookie Individual' untuk memastikan.

Dari sudut pandang pengembangan, cookie 'aman' sama dengan cookie biasa, tetapi memiliki parameter tambahan di dalamnya. misalnya.

SessionId=blah; path=/; secure; HttpOnly

Kerangka kerja pengembangan Anda dengan mudah-mudahan mendukung menambahkan ini dengan mudah - beri tahu kami platform apa yang Anda gunakan jika Anda memerlukan bantuan.

Ketika Anda berada di sana, saya sarankan menambahkan bendera HttpOnly juga jika Anda tidak memanipulasi cookie di Javascript, itu akan memberikan perlindungan tambahan cookie dari beberapa serangan XSS.

19
KirkJ

Anda juga bisa menggunakan plugin google chrome untuk mencapai hal ini dengan sangat baik Advance REST Client

Output sampel terlihat seperti ini:

Connection: keep-alive
Strict-Transport-Security: max-age=31536000
Content-Type: application/json
Content-Length: 104
X-Content-Type-Options: nosniff
Server: WEBrick/1.3.1 (Ruby/2.0.0/2015-12-16)
Date: Thu, 25 Aug 2016 07:15:57 GMT
Set-Cookie: your.cookie.name=some-hash-uuid-here; domain=your-backend-hostname.com; path=/; expires=Sat, 24 Sep 2016 07:15:57 -0000; HttpOnly; secure
Via: 1.1 vegur

Seperti yang Anda lihat di akhir nilai atribut ' Set-Cookie ' Anda akan melihat kata ' aman 'seperti dikomentari beberapa kali pada jawaban sebelumnya, tetapi juga perhatikan bagaimana ada atribut yang disebut' Ketat-Transport-Security 'yang penting untuk disebutkan.

3
d1jhoni1b