นักวิจัยด้านความปลอดภัยสองคนคือ Juliano Rizzo และ Thai Duong ได้นำเสนองานวิจัยที่งาน Ekoparty สาธิตความเป็นไปได้ในการเจาะเว็บที่มีการรวมโค้ดจากภายนอกที่ไม่ได้เข้ารหัส SSL แม้ตัวเว็บหลักจะส่งข้อมูลผ่าน SSL ก็ตาม
เทคนิคนี้อาศัยการส่งจาวาสคริปต์ปลอมด้วยการดักกลาง (man in the middle) ระหว่างการโหลดจาวาสคริปต์จากเว็บภายนอกที่ไม่ได้เข้ารหัส ตัวจาวาสริปต์นั้นจะส่งข้อความที่แฮกเกอร์รู้ล่วงหน้า (known text) กลับไปยังเว็บหลัก เมื่อแฮกเกอร์จับข้อความแบบเข้ารหัสแล้วจึงนำมาเข้ากระบวนการย้อนกลับ เพื่อหากุญแจเข้ารหัสของ session นั้นๆ ได้
สำหรับเว็บต่างๆ ทางแก้ทางหนึ่งที่เป็นไปได้คือการเรียกใช้จาวาสคริปต์ภายนอกผ่านทาง SSL ทั้งหมด เช่น Google +1 นั้นสามารถรวมจาวาสคริปต์จาก https://apis.google.com/js/plusone.js
ได้แทนที่จะใช้ HTTP ปรกติ
ที่มา - ArsTechnica
Comments
ถ้าไม่ใช้ link script ดึงจาก google จะสร้างใช้เอง
ก็ต้องเสียค่าจด HTTPS อีกสินะ ราคามันไม่ถูกเลยนะนาย
ถ้าเว็บคุณไม่ใช่ https ข่าวนี้ก็ไม่มีผลหรอกครับ เพราะมันดักได้ทุกตัวอักษรตั้งแต่ packet แรกเลยฮะ
ติดใจชื่อของคุณคนนี้แฮะ ^^ ---> Thai Duong
~ HudchewMan's Station & @HudchewMan~
คนนี้เค้าเป็นคนเวียดนามฮะ :)
ก็ยังหาช่องทางเจาะกันจนได้นะ
@lew ผมขอแสดงความเห็น
บทความเชิงเทคนิคแบบนี้ ศัพท์ที่เป็นศัพท์ทางเทคนิค (technical term) ควรจะเขียนทับศัพท์ด้วยภาษาอังกฤษไปเลย หรือไม่ก็ควรจะมีคำเดิมในวงเล็บด้วยก็น่าจะดีขึ้น
ผมเห็นว่าหลายคำพอเอามาแปลเป็นไทยแล้วมันไปตีกับคำอื่น คือมันไม่มีคำไทยตรงๆ ก็ต้องแปลไปเป็นคำที่ใกล้เคียง บางคำอ่านแล้วงงว่ามันแปลมาจาก technical term ตัวไหน
ความไม่ชินกับภาษาไทยเป็นปัญหานึงก็จริง แต่อีกปัญหานึงคือปัญหาความกำกวมของภาษาไทยที่แปลมาจาก technical term ครับ
คำไหนบ้างหรือครับ
ปรกติผมจะพยามใช้ภาษาไทยให้มากที่สุด ไม่ว่าจะเป็นการทับศัพท์หรือใช้คำแปล ยกเว้นว่าอ่านแล้วเข้าใจยากเท่านั้น
ดังนั้นถ้ามีคำไหนที่ผมใช้ภาษาไทยมากเกินไป สามารถเสนอมาได้ คนเขียนคนอื่นจะได้ทราบด้วยครับ
lewcpe.com, @wasonliw
อย่าง เช่นประโยคนี้ครับ
การรวมโค้ดจากภายนอกที่ไม่ได้เข้ารหัส SSL
ตัวผมเองค่อนข้าวชอบที่ใช้ภาษาไทยนะครับ แต่ถ้าเป็นบทความทางเทคนิคที่มีศัพท์เทคนิคเยอะๆ เวลาแปลไทยระเอียดเกินมันจะค่อนข้างงงครับ
ขอบคุณครับ
เสนอความคิดเห็นเสริมทั้งสองท่านครับ
ผมคิดว่าโลกของโปรแกรมเมอร์และโค้ดตั้งอยู่บนภาษาอังกฤษเป็นหลัก หลักการเลือกว่าคำไหนแปลไม่แปลน่าจะตั้งอยู่บนหลักว่า "ถ้าเราจะเอาเรื่องนี้กลับไปคุยกับฝรั่ง เราใช้ศัพท์เทคนิคตัวเดียวกันหรือไม่" น่าจะดีนะครับ
ทุกวันนี้โปรแกรมเมอร์ไทยพบปะต่างชาติอยู่ตลอดเวลา การเข้าใจศัพท์เทคนิคร่วมกันน่าจะเป็นประโยชน์กว่าการแปลเพียงเพื่อให้เข้าใจได้นะครับ
หรืออาจจะใช้หลักการเดียวกับการวิพากย์ข่าวทั่วๆ ไปที่มักมีอีกย่อหน้านึงเขียนว่า "หรือกล่าวโดยสรุปก็คือ..." หรือ "พูดง่ายๆ ว่ามันคือ..." อะไรทำนองนี้ ต่อจากย่อหน้าที่มีแต่ศัพท์เทคนิคก็ได้นะครับ
เสนอเพียงเท่านี้ ขอบคุณครับ
ขอบคุณครับ ผมก็เห็นด้วยบางส่วนนะครับ เพราะส่วนมากผมจะใช้ภาษาไทยให้มากที่สุด ยกเว้นบางอย่างที่มันแปลไทยแล้วงงจริงๆ ผมก็จะใช้ภาษาอังกฤษไปเลย
แล้ว expected output ของคุณคืออะไรครับ?
lewcpe.com, @wasonliw
เปิดมาเจอ "expected output" ถึงกับงง...
ผมอาจจะเป็นคนเดียวที่อ่านข่าวแล้วงง (ในช่วงแรก) จนต้องกลับไปอ่านบทความต้นฉบับว่า "การรวมโค้ดจากภายนอกที่ไม่ได้เข้ารหัส SSL" คืออะไร
อย่างกรณีนี้มันหมายถึง "injected JavaScript (or something) from xxx through Ads, IFRAME etc." ถ้าถามผมว่า "การรวมโค้ดจากภายนอกที่ไม่ได้เข้ารหัส SSL" มันตรงมั้ย ... ผมตอบว่ามันก็ตรง แต่ประโยคที่เป็นภาษาไทยดังกล่าวพออ่านแล้วมันไม่เห็นภาพ และไม่ได้ concept ของการทำงานเท่ากับประโยคที่เป็นภาษาอังกฤษน่ะครับ
ผมอธิบายงงมั้ย?
ผมคิดว่าที่คุณ Papasek ต้องการน่าจะเป็นประมาณ
ล่ะมั้งครับ ?
เรียกใช้โค้ดจากภายนอก ก็ดู OK นะครับ แต่คำว่ารวมโค้ดก็อ่านเข้าใจได้เหมือนกัน
injected ไม่ใช่การเรียกครับ
ผมเรียกว่า การแทรกโค๊ด นะครับ
จริงๆ ถ้าเอาให้ตรงมันก็คือการฉีดน่ะล่ะ อารมณ์มันจะเหมือนกับเราเห็นรอยแยกบนกำแพง ก็เลยเอากาวซีเมนท์ฉีดลงไป (เหมือนใช้เข็มฉีดยา) ให้กาวมันแทรกตัวลงไปในช่องว่าง
มัน inject เข้าไปในโค้ดที่ include มาไม่ใช่หรือครับ หรือผมอ่านผิด ?
เพิ่มเติม: ผมพูดถึงประโยคนี้นะครับ "เว็บที่มีการรวมโค้ดจากภายนอกที่ไม่ได้เข้ารหัส SSL"
ขอบคุณมากครับที่เปิดมาแบบนี้ นี่แหละครับปัญหาของการใช้ภาษาไทย คือมันกำกวมอยู่บ้าง
กรณีนี้ไม่ใช่ include ครับ ถ้าคุณเคยใช้ google analytics มันจะเป็นชุดคำสั่ง javascript มาให้ ซึ่ง code ชุดนี้ก็สามารถยิง javascript ตัวอื่นเข้ามาใน page ของเราได้ ซึ่งการแฮ็ค ssl ในข่าวนี้ก็ใช้ช่องโหว่ตรงนี้แหละครับ
ผมเข้าใจว่าไม่ว่าจะเรียกจาก <script src=xxx"> หรือจะเรียกผ่านการ load ใน js ก็ได้ผลเหมือนกันนะครับ คือคนที่แฮคสามารถแอบเปลี่ยนข้อมูล script ระหว่างทางได้ (เนื่องจาก script ไม่ได้เข้ารหัส) ทำให้ script ที่ได้มามีโค้ดไวรัสมาด้วย (ตามหลัก man-in-the-middle)
เข้าใจถูกแล้วครับ ส่วนเรื่องปัญหาด้านภาษา ผมว่าอาจเป็นที่ผมคนเดียวก็ได้ครับ
แล้วคนธรรมดาจะมีวิธีแก้ยังไงครับ?
ถ้ามี SSl ที่ให้เราเอาไฟล์ js ไปฝาก สำหรับเรียก ก็คงดี
ในกรณีืี่ถูกฝังมากับ ads ต่างๆ หรือจะเป็น widget อย่างพวกน้ำมัน หุ้น แนวนั้น ที่เราเอามาแปะไว้เองก็คงลำบากครับ
อีกอย่างก็คือ cross site script ครับ ถ้าป้องกัน และรัดกุมตรงนี้ก็หายห่วงในระดัยนึงครับ
ขอบคุณครับ สบายใจเลย ไม่ต้องปวดหัวคิดวิธีป้องกันอะไรละ เพราะยังไม่คิดจ่ายเงินเพิ่มเพื่อ SSL ^^