เทคนิค “Boobs check” เพื่อตรวจสอบว่าเว็บไซต์ที่อยู่หลัง CDN ถูกโฮสต์ในอิหร่านหรือไม่
(twitter.com/hkashfi)- ใช้วิธีการขอข้อมูลแบบง่ายเพื่อยืนยันว่าเว็บไซต์ที่อยู่หลัง CDN นั้นโฮสต์อยู่บน เซิร์ฟเวอร์ภายในอิหร่าน โดยใช้คำสั่ง
curl -i https://domain/boobs.jpg - หากผลลัพธ์จากคำขอเป็น 403 Forbidden และในเนื้อหาปรากฏ IP ช่วง 10.10.34.x หมายถึง ทราฟฟิกถูกตอบกลับหลังผ่านระบบกรองภายในอิหร่าน
- อธิบายว่านี่คือ รูปแบบการตอบกลับที่พบบ่อยเมื่อมีการใช้การกรองเซ็นเซอร์พื้นฐานของอิหร่าน
- แม้มี CDN อยู่ก็ตาม หากเว็บไซต์เป้าหมาย มีตำแหน่งทางกายภาพอยู่ภายในอิหร่าน ก็มีโอกาสสูงมากที่รูปแบบนี้จะปรากฏ
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
วิธีนี้ใช้ได้ก็ต่อเมื่อ reverse proxy หรือ CDN ถูกตั้งค่าแบบนี้เท่านั้น
Proxy/CDN: HTTPS(443) → เซิร์ฟเวอร์ต้นทาง: HTTP(80)
ตัวอย่างเช่น โหมด Flexible ของ Cloudflare ใช้วิธีนี้
ถ้าเซิร์ฟเวอร์ต้นทางใช้การตั้งค่า TLS ที่ถูกต้อง (แม้จะเป็น ใบรับรอง self-signed ก็ตาม) วิธีนี้จะใช้ไม่ได้
กล่าวคือจะสำเร็จได้เฉพาะเมื่อการเชื่อมต่อ upstream ไม่ได้เข้ารหัส
หากต้องการทดสอบ สามารถตรวจสอบได้ด้วยคำสั่งนี้
curl [http://www.digiboy.ir/boobs.jpg](http://www.digiboy.ir/boobs.jpg) -vไม่แน่ชัดว่าการกรองเกิดที่ proxy/CDN หรือที่ต้นทาง อาจเป็นได้ทั้งสองแบบ
client → LB(nginx) → จบ TLS ที่ LB → ส่งต่อไปยัง backend nginx ด้วย
proxy_passการตั้งค่าง่ายกว่าที่คิด เลยสงสัยว่าทำไมถึงยังใช้ HTTP กันอยู่
ที่บ้านฉันยังใส่ ใบรับรอง Let's Encrypt ให้ทุก local domain เลย
อนึ่ง nginx ไม่รองรับ HTTP/2 สำหรับ HTTPS load balancing เลยกำลังจะย้ายไป haproxy
สงสัยว่าวิธีนี้ทำงานกับ HTTPS ได้อย่างไร
ระหว่างทางไม่น่าจะมองเห็น path ได้ นี่หมายความว่าอิหร่านทำ TLS termination แล้ว proxy ที่ชายแดนประเทศหรือ?
ถ้าใช่ ก็แปลว่าเว็บไซต์ทั้งหมดในอิหร่านโฮสต์แบบ HTTP เท่านั้น ซึ่งมีนัยสำคัญกว่านั้นมาก
หรือว่าหน่วยงานออกใบรับรองถูกห้ามไม่ให้ออก ใบรับรองส่วนตัว ให้แก่องค์กรในอิหร่าน? รวมถึง Let's Encrypt ด้วยหรือเปล่า?
TLS ไม่ได้ป้องกันไม่ให้เครือข่ายฝั่ง backend อ่าน URL ได้
เพราะอย่างนั้น CF จึงถูกวิจารณ์ว่าเข้ารหัสแค่ช่วง client–CF ส่วนช่วง CF–server ยังเป็น plain text
เพราะการลงทะเบียน NIN แทบไม่มีความเป็นนิรนาม ดังนั้น xkcd 538 จึงเป็นอุปมาที่เหมาะมาก
สงสัยว่าทำไมใครสักคนถึงอยากรู้ว่าเว็บไซต์โฮสต์อยู่ในอิหร่านหรือไม่
เว็บไซต์ข่าวที่ไม่ค่อยเป็นที่รู้จักซึ่งลอยอยู่บนโซเชียลมีเดียจำนวนมาก จริง ๆ แล้วเป็นเว็บไซต์ปฏิบัติการจิตวิทยา (psy-op) จากต่างชาติ
วิธีในบทความสามารถใช้ขึ้นบัญชีดำเว็บไซต์ที่มีฐานอยู่ในอิหร่านได้
สงสัยว่ามี เว็บไซต์ตัวอย่าง ที่ตอบกลับแบบนี้ให้ลองไหม
งั้นแปลว่าอิหร่านวาง reverse proxy ไว้หน้าทราฟฟิก HTTP ทั้งหมดหรือ?
ฉันก็สงสัยเหมือนกันว่าเว็บเพจใน iframe นั้นมีเนื้อหาอะไร
เมื่อก่อนฉันเคยเห็นภาพ “คำเตือน” ที่มีทั้งภาษาอังกฤษและอาหรับกับเพื่อน ๆ
มันดูเหมือนคำเตือนจาก หน่วยงานเซ็นเซอร์ ของรัฐบาลอิหร่าน เลยตั้งค่าให้ภาพนั้นแสดงกับ 1% ของคำขอในฟอรัมเล่น ๆ :)
ฉันอ่านบทความแล้วแต่ยังไม่ค่อยเข้าใจว่าเกิดอะไรขึ้น ใครช่วยอธิบายได้ไหม?
เมื่อส่งคำขอ
GET [https://somedomain.com/boobs.jpg](https://somedomain.com/boobs.jpg)เซิร์ฟเวอร์นอกอิหร่านจะตอบกลับ 404 (Not Found) แต่
เซิร์ฟเวอร์ในอิหร่าน ไฟร์วอลล์จะ ตรวจจับคำว่า “boobs” แล้วบล็อกคำขอนั้น ทำให้ได้ 403 (Forbidden)
กล่าวคือมันถูกกรองที่ไฟร์วอลล์ก่อนจะไปถึงเว็บเซิร์ฟเวอร์
หรือจะเกิด ปัญหา Scunthorpe?
สงสัยว่านักดูนกที่ค้นหาคำว่า ‘boobies’ จะโดนบล็อกเหมือน
boobs.jpgไหมถ้าอย่างนั้น ช่วง 10.x.x.x ถูก route แบบสาธารณะ ภายในอิหร่านหรือ?
ก็สงสัยเหมือนกันว่าทำไมรัฐบาลไม่ใช้ IP space ของตัวเอง
อาจเป็นการนำ ผลิตภัณฑ์กรองทราฟฟิก สำหรับองค์กรทั่วไปกลับมาใช้ใหม่
สุดท้ายอินเทอร์เน็ตของอิหร่านก็ทำงานเหมือนเครือข่ายส่วนตัวขนาดยักษ์
ลองต่อยอดไอเดียนี้ดู โดยทำรายการลิงก์วิกิพีเดียที่รวม เนื้อหาด้านมนุษยธรรมซึ่งมีแนวโน้มจะถูกบล็อกในระบอบเซ็นเซอร์
เช่น เหตุการณ์เทียนอันเหมิน, คดีคอร์รัปชันของ Wen Jiabao, Epstein email เป็นต้น
เหมือนกับ Fast.com ของ Netflix โปรเจกต์แบบนี้จะเป็นการเอาอาวุธของระบบเซ็นเซอร์มาใช้ย้อนกลับใส่มันเอง