หลังจากที่ fan page ของ Mark Zuckerberg ถูกแฮ็ก ทาง Facebook ก็เพิ่มระดับความปลอดภัยของเว็บไซต์ ด้วยการเปิดให้ผู้ใช้เลือกใช้งานผ่านโปรโตคอล HTTPS ได้ตลอดเวลาครับ
ก่อนหน้านี้โดยปกติแล้ว Facebook จะใช้โปรโตคอล HTTPS แค่ตอน log in เท่านั้น ซึ่งเปิดโอกาสให้มีการ "ไฮแจ็ก" session cookie ได้ อย่างที่ซอฟต์แวร์ Firesheep แสดงให้เห็นมาแล้วว่ามันอันตรายแค่ไหน
รู้สึกอุ่นใจขึ้นเยอะเลยครับ น่าจะทำมาตั้งนานแล้วนะเนี่ย สำหรับเว็บไซต์อื่น ๆ ที่มี HTTPS ให้ใช้แต่ไม่ตลอดเวลานั้น เราสามารถบังคับได้ด้วยส่วนเสริมของ Firefox ที่ชื่อ HTTPS Everywhere ครับ
[อัปเดต] แม้ในบล็อกของ Facebook จะบอกว่า "Starting today" แต่ตอนนี้ (ประมาณเที่ยงคืนครึ่ง เวลาไทย) ผมยังตั้งค่านั้นไม่ได้แฮะ
ที่มา - ReadWriteWeb
Comments
ของผมก็ยังไม่ได้นะ
ยังไม่ได้เหมือนกันครับ
ยังด้วยคน
สงสัยทยอยอัพ
ส่วนตัวใช้ plugin ssl anywhere ใน firefox อยู่แล้ว
HTTPS มันไม่เห็นจะช่วยเรื่อง session hijacking เลย
ทำไมถึงคิดว่ามันไม่ช่วยล่ะครับ
lewcpe.com, @wasonliw
https เป็นการเข้ารัหสข้อมูล ระหว่างต้นทางปลายทาง
การขโมย session โดยใช้ XSS นั้น จะเป็นการหลอกให้ user run javascript ที่จะไปอ่าน cookie เพื่อน get session id แล้วส่งไปให้ hacker
ส่วนรายละเอียดการ implement ลองหาเพิ่มเติมตาม security sites ดูนะครับ มันค่อนข้างยาวนิดนึง
Session Hijack มีหลายแบบครับ ทั้งแบบแอบดึงออกจากเครื่องเหยื่อเองเลยหรือแอบฉกไประหว่างทางครับ
ใช่ครับ
และแบบที่นิยม คือแบบ ที่ฉกจากเครื่องเหยื่อ ไม่ใช่ระหว่างทางครับ
ฉกระหว่างทางมันมีข้อจำกัดหลายแบบครับ ส่วนใหญ่ต้องอยู่ใน network เดียวกันเพื่อ sniff package.
ยังไง https ก็คงช่วยไรไม่ได้มาก สำหรับเรื่องนี้
เพิ่มเติมให้ละกัน
การป้องกันพวก session hijacking มันต้องไปป้องกันที่ application coding level มากกว่า
เช่นการ convert dangerous/script characters ให้เป็น html entity
การ check page ordering, package ordering(จำชื่อเรียกอย่างเป็นทางการไม่ได้)
การที่ facebook เปิด https ให้ใช้นั้นผมว่า คงจะมีเหตุผลอื่นด้วย นอกเหนือจากการป้องกัน session hijacking
และที่สำคัญ มันคงเป็นการตัดสินใจที่ยากลำบากพอสมควรเนื่องจากว่าการทำ https ทุกๆ transaction จะกิน resource มากกว่าหลายเท่า
^
^
ตอบข้างบน
ไอ้ XSS ที่คุณว่ามามันป้องกันได้ครับถ้าไม่สะเพร่า แล้วเค้าก็(พยายาม)ป้องกันหมดแล้วที่ coding level แบบที่คุณว่ามานั่นแหละ
แต่ต่อให้ป้องกันแบบที่คุณว่ามาดีเลิศแค่ไหน ถ้าไม่ใช้ HTTPS ก็ตกม้าตายอยู่ดี
^
^
ตอบคุณ lancaster
ผมไม่แน่ใจว่า คุณหมายความว่ายังไงที่บอกว่า ตกม้าตาย
ถ้าคุณ coding at application level ดีพอ ต่อให้ hacker ได้ session ID ไปจริงๆ แต่ว่าคุณ coding โดยใช้เทคนิค การตรวจสอบลำดับการ access web page, หรือมีการแนบ parameter ที่คอยเพิ่ม ตัวเลข ทุกๆ request&response (developer อาจจะเขียน code force signout ดักไว้ ถ้าหากว่า page ordering, หรือลำดับตัวเลขมันผิด). หรือจะทำแบบ amazon ก็ได้ที่ทำการ force login ทุกครั้งก่อนทำ transaction ที่สำคัญ (วิธีนี้อาจจะไม่เหมาะกับ facebook).
จริงๆแล้วอาจจะต้องใช้หลายๆเทคนิคมา combine กัน ที่พูดไปข้างบนแค่ยกตัวอย่างง่ายๆเท่านั้นครับ
ผมชอบดู geek (ถก)เถียงกันจริงๆ อ่านแล้วได้ความรู้
^
^
that's just my two cents.
ผมอยากรู้ว่า ถ้าเกิดเรา ordering แล้ว เราเปิดหลายๆหน้า มันไม่รวนหรอครับ
การทำ Session Hijack มันไม่ต้องใช้ XSS เสมอไปนี่ครับ
และผมเองก็ยังไม่เคยได้ยินว่า Facebook มีปัญหา XSS
lewcpe.com, @wasonliw
:D
ที่ผมอยากจะบอกคุณก็คือ
้https มันป้องกัน session hijacking ไม่ได้ทั้งหมด ไงครับ
ต่อให้ encrypt data ด้วย https, session ID ก็ยังคงถูกขโมยได้โดยใช้ XSS เทคนิค อยู่ดี
แล้วไอ้ที่คุณว่า "HTTPS ไม่เห็นช่วย" นี่มันเป็นจริงตรงไหนหรือครับ
lewcpe.com, @wasonliw
ที่ผมบอกว่ามันไม่ช่วย ก็เป็นเพราะว่า ยังไงก็โดน XSS อยู่ดีครับ
หรือถ้าจะให้ใช้คำพูดเป๊ะๆ ผมอาจจะต้องพูดว่า มันช่วยได้บ้าง ละกันครับ
และการที่คุณบอกว่า "ไม่เคยได้ยินว่า Facebook มีปัญหา XSS" ก็ไม่ได้หมายความว่า facebook ไม่เคยโดน hack เรื่องนี้
ลองดูอันนี้ละกันครับ
http://www.xssed.com/news/80/New_highly_critical_Facebook_XSS_vulnerabilities_pose_serious_privacy_risks/
**ต้อง offline ก่อนละครับ อาจจะไม่ได้มา discuss ด้วยหลายวัน
มันก็ปลอดภัยได้ในระดับนึง คนใช้งานก็รู้สึกปลอดภัยมากขึ้น แฮคเกอร์มันเก่งคงช่วยไม่ได้
ฝรั่งก็มีวัวหายแล้วล้อมคอกเหมือนกันแฮะ อิอ
ผมชอบ กระทู้นี้จัง
แต่ https ทำให้ บริษัท เก็บ log ไม่ได้ สะบายใจ จัง