1 คะแนน โดย GN⁺ 2023-09-21 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • Mullvad ประกาศว่าได้ลบร่องรอยการใช้ดิสก์ทั้งหมดออกจากโครงสร้างพื้นฐาน VPN ทำให้เซิร์ฟเวอร์ทำงานด้วยการปรับใช้แบบ RAM-only เท่านั้น
  • นี่เป็นความคืบหน้าต่อเนื่องหลังจากประกาศการย้ายไปสู่โครงสร้างพื้นฐานแบบไร้ดิสก์ที่ใช้บูตโหลดเดอร์ stboot เมื่อต้นปี 2022
  • การตั้งค่านี้ผ่านการตรวจสอบมาแล้วสองครั้งในปี 2022 และ 2023 และการตรวจสอบเซิร์ฟเวอร์ VPN ในอนาคตจะครอบคลุมเฉพาะการปรับใช้แบบ RAM-only เท่านั้น
  • เซิร์ฟเวอร์ใช้ Linux kernel แบบกำหนดเองที่ลดขนาดลงและติดตามการพัฒนาของ mainline kernel เพื่อสะท้อนฟีเจอร์ล่าสุดและการปรับปรุงประสิทธิภาพ พร้อมตัดองค์ประกอบที่ไม่จำเป็นออก
  • หัวใจสำคัญของการดำเนินงานคือ เมื่อรีบูตหรือทำ provisioning ครั้งแรก จะได้เคอร์เนลที่สร้างใหม่ สถานะไร้ร่องรอยไฟล์ล็อก และ OS ที่แพตช์ครบถ้วน

การเปลี่ยนผ่านสู่โครงสร้างพื้นฐาน VPN แบบไร้ดิสก์

  • Mullvad ประกาศว่าได้ลบร่องรอยการใช้ดิสก์ทั้งหมดออกจากโครงสร้างพื้นฐาน VPN
  • หลังจากประกาศเริ่มการย้ายระบบไปสู่โครงสร้างพื้นฐานแบบไร้ดิสก์ที่ใช้บูตโหลดเดอร์ stboot เมื่อต้นปี 2022 ก็ได้เดินหน้าการเปลี่ยนผ่านมาอย่างต่อเนื่อง
  • โครงสร้างพื้นฐาน VPN ในการตั้งค่านี้ผ่านการตรวจสอบมาแล้วสองครั้ง
  • การตรวจสอบเซิร์ฟเวอร์ VPN ในอนาคตจะครอบคลุมเฉพาะการปรับใช้แบบ RAM-only เท่านั้น

องค์ประกอบของเคอร์เนลและ OS สำหรับบูต

  • เซิร์ฟเวอร์ VPN ทั้งหมดยังคงใช้ Linux kernel แบบกำหนดเองที่ลดขนาดลงอย่างมาก
  • การพัฒนาเคอร์เนลติดตาม mainline branch โดยดึงเวอร์ชันล่าสุดมาใช้เพื่อสะท้อนฟีเจอร์ใหม่และการปรับปรุงประสิทธิภาพ
  • ตัดองค์ประกอบของเคอร์เนลที่ไม่จำเป็นออกเพื่อคงโครงสร้างที่เบา
  • ก่อนปรับใช้ ระบบปฏิบัติการสำหรับบูตมีขนาดมากกว่า 200MB เล็กน้อย
  • เมื่อเซิร์ฟเวอร์รีบูตหรือถูก provisioning ครั้งแรก จะได้สถานะดังต่อไปนี้
    • เคอร์เนลที่บิลด์ขึ้นใหม่
    • ไม่มีร่องรอยไฟล์ล็อก
    • OS ที่แพตช์ครบถ้วน

1 ความคิดเห็น

 
GN⁺ 2023-09-21
ความคิดเห็นจาก Hacker News
  • เจ๋งมากจริง ๆ ถ้าเป็นผู้ให้บริการ VPN ที่ใส่ใจเรื่อง ความปลอดภัยและความโปร่งใส ก็ทำให้อยากคาดหวังว่าจะทำแบบ Mullvad
    บางเจ้าทุ่มเงินให้อินฟลูเอนเซอร์พูดว่า “ให้ความสำคัญกับความปลอดภัย” ส่วนบางเจ้าก็โฟกัสกับการปรับปรุงความปลอดภัยจริง ๆ
    อ้างอิง: ทั้งหมดเป็นโอเพนซอร์ส: https://github.com/system-transparency/stboot

    • แยกออกมานิดหน่อย แต่ผมมักรู้สึกขัดใจที่ผู้ให้บริการ VPN รายใหญ่โฆษณาราวกับว่าเว็บส่วนใหญ่ที่ผู้ใช้เข้าไม่ใช่ HTTPS และทำเหมือนว่าประโยชน์หลักของตนคือการอุดช่องโหว่ที่ HTTPS อุดไปแล้ว
      HTTPS ไม่ได้แก้ได้ทุกอย่างก็จริง แต่การตลาดแบบสร้างความกลัวของบริษัท VPN ใหญ่ ๆ ที่ลงโฆษณา YouTube ทำให้ดูเหมือนว่าแค่เข้า Amazon จากร้านกาแฟ ก็จะมีคนขโมยบัตรเครดิตไปได้
      เท่าที่เห็น มีแค่ Tom Scott ที่ทำวิดีโอในหัวข้อนี้ได้ถูกต้อง [0]
      [0] https://www.youtube.com/watch?v=WVDQEoe6ZWY
    • stboot และคอมโพเนนต์ที่รองรับ รวมถึงเอกสารถูกย้ายไปยัง GitLab แยกต่างหากแล้ว: https://git.glasklar.is/system-transparency/core/stboot
  • ไม่ได้จะล่อให้ตอบแบบเดิม ๆ นะ แต่ก็น่าสนใจที่ผู้ให้บริการ VPN ที่มีความสามารถทางเทคนิคเลือกใช้ Linux มากกว่า BSD ทั้งที่มีข้อกำหนดอย่าง การทำงานแบบไม่มีดิสก์, การปรับแต่งเคอร์เนล และความปลอดภัยที่แข็งแกร่งขึ้น

    • ในมุมผม กลุ่มคนที่สามารถจ้างมาแล้วรู้ Linux อย่างทะลุปรุโปร่งมีมากกว่ามาก ข้อดีมันมากพอให้ยอมรับประเด็นความปลอดภัยที่ถูกมองว่าเป็นปัญหาได้
      ในแง่ไร้ดิสก์ ผมเคยรัน การ deploy ผ่าน iPXE มากกว่า 25,000 เครื่อง บนเซิร์ฟเวอร์เบลดแบบไม่มีดิสก์ด้วย Ubuntu ที่ปรับแต่งหนักมาก และมันยอดเยี่ยมมาก
      ไม่ว่าจะเลือกระบบปฏิบัติการอะไร การไม่มีดิสก์ก็ค่อนข้างดี ถ้ามีปัญหาด้านความปลอดภัยหรือต้องอัปเกรด ก็แค่รีบูต แต่การรีบูตเซิร์ฟเวอร์ 25,000 เครื่องใช้เวลาพอสมควรแม้บน gigE
      การสร้างระบบ scheduling ให้จัดการเรื่องนี้ได้อย่างเสถียรต้องลงแรงมาก แต่ผลลัพธ์ก็ค่อนข้างดี
    • มี BSD ตัวไหนที่ดีกว่าสำหรับการใช้งานแบบนี้ไหม?
  • ผมสงสัยพวก VPN ที่บอกว่า “ไม่เก็บหรือบันทึก log” จริง ๆ อาจเป็นแบบนั้นก็ได้ แต่ก็อาจส่ง สตรีมข้อมูลแบบเรียลไทม์ ไปให้หน่วยงานบังคับใช้กฎหมายหรือหน่วยข่าวกรอง ฯลฯ แทนที่จะเก็บไว้เอง
    แบบนั้นการพูดว่า “เราไม่บันทึก log” ก็ถือว่าถูกต้องในเชิงเทคนิค

    • ผู้ไม่หวังดีย่อมมีอยู่ได้เสมอ
      แต่ก็มีบริษัทอย่าง OVPN ที่ พิสูจน์ในศาลแล้ว ว่า “ไม่มี log” เป็นเรื่องจริง[1]
      [1] https://www.ovpn.com/en/blog/ovpn-wins-court-order
    • ต่อให้เป็นบริษัทซื่อสัตย์ แรงกดดันก็มีสองทาง ทางหนึ่งคือความปลอดภัย อีกทางคือแรงกดดันทางกฎหมาย
      ระบบอาจถูกเจาะด้วยช่องโหว่ด้านความปลอดภัย social engineering และการบีบบังคับที่รวมถึงเครื่องมือสงครามจิตวิทยาแบบดั้งเดิม เช่น เงิน อุดมการณ์ จุดอ่อน และอัตตา
      หรืออาจได้รับคำสั่งทางกฎหมายจากรัฐบาล รัฐบาลแทบทุกแห่งทั่วโลกมีกฎหมายและแนวปฏิบัติในการดำเนินงานที่บังคับให้ฝ่ายใดก็ตามส่งมอบข้อมูลได้ ภายใต้ข้ออ้างเรื่องการป้องกันการฟอกเงินและการก่อการร้าย หรือ AML/CFT
      การป้องกันการโจมตีแบบนี้อย่างแข็งแกร่งมีต้นทุนสูงมาก ผมมองไม่ค่อยเห็นโมเดลธุรกิจที่ทำได้จริงด้วยค่าบริการเดือนละ 5 ดอลลาร์ แล้วยังครอบคลุมทั้งค่าใช้จ่ายปกติและการรับมือเหตุการณ์แบบนี้
      เพิ่มเติมคือยังมี backdoor ที่ฝังอยู่ในเทคโนโลยีพื้นฐานที่คงใช้อยู่แล้วด้วย เช่นกรณี Cavium HSM ที่ถูกเปิดเผยในสัปดาห์นี้
    • ผมไม่คิดว่า Houston Police Department หรือหน่วยตำรวจเมืองไหน ๆ จะซับซ้อนพอจัด ปฏิบัติการดูดข้อมูลจาก backbone ใยแก้วนำแสงแบบ NSA ได้
      แม้มีข่าวว่า NYPD ซื้ออุปกรณ์ดักฟังโทรศัพท์มือถือผิดกฎหมายราคาเป็นล้านดอลลาร์ แต่โดยทั่วไป ระดับที่หน่วยบังคับใช้กฎหมายท้องถิ่นระดับใหญ่สุด ๆ ในสหรัฐฯ ไปถึงได้ก็น่าจะประมาณนั้นเป็นเพดาน
      แล้วมันจะทำงานได้ยังไงตั้งแต่แรก? ถ้าไม่มีคำสั่งศาลให้ปิดปาก ภายในไม่กี่สัปดาห์ข่าวลือวงในก็น่าจะหลุดออกมา
      เหตุผลที่อุปกรณ์เกี่ยวกับโทรศัพท์มือถือเป็นความลับได้ ก็เพราะมีแค่คนในสถานีตำรวจเข้ามาเกี่ยวข้อง แต่กับผู้ให้บริการ VPN ทำแบบนั้นไม่ได้ พวกเขาไม่ได้มีอภิสิทธิ์ที่ไม่เป็นธรรมแบบที่ CIA หรือ NSA และบางครั้ง FBI ได้รับ
      สิ่งที่ผมทำได้ซึ่งอาจดึงความอยากรู้อยากเห็นของหน่วยบังคับใช้กฎหมาย ยังต่ำกว่าประเด็นที่หน่วยข่าวกรองรัฐบาลกลางสนใจมาก แน่นอนว่าชีวิตคุณอาจน่าสนใจกว่านั้นก็ได้
    • ระบบดักฟังโดยชอบด้วยกฎหมายทำงานแบบนี้มาตั้งแต่ทศวรรษ 1990 แล้ว
      ต้องดูข้อกฎหมายของเขตอำนาจศาลนั้น ๆ ว่ามี ภาระหน้าที่ด้านการดักฟังโดยชอบด้วยกฎหมาย ที่ส่งผลต่อผู้ให้บริการ VPN หรือไม่ หรือไม่ Mullvad ก็อาจชี้แจงให้ชัดเจนได้
      สวีเดนมีข้อกำหนดเรื่องการดักฟังโดยชอบด้วยกฎหมายกับอุปกรณ์สื่อสารทุกชนิดแน่นอน แต่สำหรับ VPN ผมไม่แน่ใจ
    • นั่นดูเหมือนเป็นการตีความการบันทึก log ที่ค่อนข้างแปลก
      ในมุมผม มันคือ VPN บันทึกกิจกรรมของลูกค้าแล้วส่งไปให้ที่อื่นจัดเก็บ
  • มีเรื่องหนึ่งที่ผมสงสัยเกี่ยวกับ VPN มาตลอด
    เช่น ถ้าผู้มีรสนิยมทางเพศต่อเด็กใช้ Mullvad เพื่อดาวน์โหลดรูปภาพต้องห้าม แบบนี้ VPN ต้องรับผิดชอบหรือเปล่า?
    หน่วยงานบังคับใช้กฎหมายน่าจะเห็นว่า IP ออกมาจากสำนักงานของ Mullvad แล้วจะไม่สันนิษฐานเหรอว่าเป็นฝีมือพวกเขา? ผมสงสัยว่าพวกเขาหลีกเลี่ยงเรื่องนี้ได้อย่างไร
    อาจเป็นคำถามโง่ ๆ แต่สงสัยจริง ๆ

    • Mullvad เคยถูกตำรวจบุกยึดค้นด้วยเหตุการณ์คล้าย ๆ กันจริง และมีอธิบายไว้ที่นี่:
      https://mullvad.net/en/blog/2023/5/2/update-the-swedish-auth...
      “แต่แม้ว่าพวกเขาจะเอาอะไรไปได้ ก็จะไม่สามารถเข้าถึงข้อมูลลูกค้าใด ๆ ได้”
      “กฎหมายภายในประเทศที่ทำให้สามารถให้บริการ VPN ที่เน้นความเป็นส่วนตัวในสวีเดนได้ มีดังนี้”
    • ไม่ใช่ทนายความ แต่เท่าที่ผมเข้าใจ โดยทั่วไปน่าจะเข้าข่าย Section 230 เพราะตรรกะเดียวกันนี้ใช้กับบริษัทอย่าง Comcast, AT&T ฯลฯ ที่ปล่อยให้ไบต์ไหลผ่านโครงสร้างพื้นฐานของตนได้เช่นกัน
    • จากนั้นการสืบสวนก็จะดำเนินไปในทิศทางการส่งหมายค้นหรือหมายเรียกไปยังบริการ VPN เพื่อขอข้อมูลที่เกี่ยวข้อง เช่น รายละเอียดผู้ใช้ของบัญชีนั้นและล็อกต่าง ๆ
      ตรงนี้เองที่ข้อความว่า “เราไม่เก็บล็อกใด ๆ” และสถาปัตยกรรมที่ รันเฉพาะใน RAM มีความสำคัญ
      ต่อให้หมายค้นอนุญาตให้นำฮาร์ดแวร์ออกไปได้ ข้อมูลทั้งหมดก็จะหายไปเมื่อปิดเครื่อง หน่วยงานบังคับใช้กฎหมายคงต้องขนแบตเตอรี่มาเยอะ ๆ
    • หลีกเลี่ยงไม่ได้ นั่นจึงเป็นเหตุผลที่ครั้งหนึ่งพวกเขาเคยถูกตำรวจบุกยึดค้น และเลิกให้บริการ port forwarding แล้ว
    • แต่สมมติว่าคุณล็อกอิน VPN นั้นแล้วค้นหาเสื้อสเวตเตอร์เด็กสำหรับลูก และยังเปิดเซสชันทิ้งไว้ ในระหว่างนั้นหน่วยงานบังคับใช้กฎหมายตรวจสอบ IP ที่เชื่อมโยงกับกิจกรรมก่อนหน้า แล้ว IP นั้นตอนนี้ถูกจัดสรรให้คุณอยู่
      ถ้าต้องอธิบายเรื่อง VPN กับที่อยู่ IP ให้ตำรวจฟัง ก็ขอให้โชคดี นี่แหละคือสิ่งที่ผมกลัว
  • “พวกเขา” ก็แค่ฉีด ไนโตรเจนเหลว ใส่อุปกรณ์ ถอดมันออกจากแร็ก แล้วเอา DRAM ใส่กระติกเก็บความเย็นที่มีไนโตรเจนเหลวกลับไป จากนั้นค่อย ๆ อ่านข้อมูลก็ได้
    https://ieeexplore.ieee.org/document/8388826

    • ทำแบบนั้นก็ไม่ได้อะไรเลยในโปรโตคอลเข้ารหัสยุคใหม่
      ฟีเจอร์นี้เรียกว่า forward secrecy และช่วยปกป้องทราฟฟิกในอดีต แม้คีย์จะรั่วไหลในภายหลังก็ตาม
      WireGuard ที่ Mullvad ใช้รองรับสิ่งนี้ ส่วน WPA ของ Wi‑Fi ยังไม่รองรับด้วยเหตุผลบางอย่าง ซึ่งจะขอปล่อยให้ผู้อ่านคาดเดาเอง
    • โปรเซสเซอร์ AMD รองรับ RAM แบบเข้ารหัสที่เรียกว่า SME[1]
      คีย์อยู่ภายใน CPU และจะสุ่มใหม่ทุกครั้งที่บูต ต่อให้ดักส่องชิป RAM ขณะทำงาน หรืออ่าน RAM ที่ถูกแช่เย็นและเก็บรักษาไว้อย่างสมบูรณ์ ก็จะไม่ได้อะไรเลย
      นี่เป็นเหตุผลสำคัญอย่างหนึ่งที่ Xbox One ไม่ถูกแฮ็ก
      ในโน้ตบุ๊กธุรกิจที่ใช้ AMD และเซิร์ฟเวอร์ AMD EPYC สามารถเปิด SME ได้จาก BIOS
      1. https://www.amd.com/content/dam/amd/en/documents/epyc-busine...
    • คำว่า “ก็แค่” ตรงนี้แบกรับอะไรไว้เยอะมาก
      ถ้าจะ “ก็แค่” ทำเรื่องนี้ เจ้าหน้าที่ต้องยึดครองโครงสร้างพื้นฐานของอาคารแทบทั้งหมดก่อนที่ Mullvad จะตอบสนองได้ ซึ่งไม่ได้ง่ายอย่างที่พูด
      แม้จะถือว่าเป็นเรื่องเล็กน้อย เมื่อเทียบกับบริการ VPN คู่แข่ง ก็ยังเป็นระดับที่สูงกว่าอีกหลายขั้นอยู่ดี
    • นั่นดูเป็นงานที่มากกว่าการถอด SSD แล้วอ่านไฟล์ล็อกเยอะมาก และดูมีโอกาสผิดพลาดมากกว่าด้วย
  • ถึงอย่างนั้นก็ยังไม่ได้ป้องกันการโจมตีที่ดึงข้อมูลแบบเรียลไทม์ผ่านแบ็กดอร์ประเภทอื่น ๆ เช่น แบ็กดอร์บนฮาร์ดแวร์, memory injection, หรือซัพพลายเชน
    มีคำกล่าวว่า “เรามั่นใจได้ว่าเมื่อเซิร์ฟเวอร์รีบูตหรือถูก provision ครั้งแรก เซิร์ฟเวอร์จะได้รับเคอร์เนลที่สร้างขึ้นใหม่” ผมจึงสงสัยว่ารอบนั้นถี่แค่ไหน
    รายวัน รายสัปดาห์ หรือทุกชั่วโมง? ยิ่งรอบยาวเท่าไร โอกาสของเวกเตอร์โจมตีบางแบบก็ยิ่งต่ำลง

  • ในอเมริกาเหนือและยุโรป VPN มีข้อบังคับทางกฎหมายให้ต้อง เก็บ ประวัติการใช้งาน VPN เช่น เว็บไซต์ที่เยี่ยมชมหรืออีเมลที่ใช้สมัคร ไว้ 1–2 ปี
    บริษัท VPN ส่วนใหญ่โฆษณาว่าไม่เก็บ browsing log
    ถ้าอย่างนั้นก็เท่ากับละเมิดกฎหมายยุโรปและสหรัฐฯ
    เลยไม่รู้ว่าควรมอง VPN แบบไม่มีดิสก์อย่างไร

  • เป็นประเด็นดีที่มีคนพูดในคอมเมนต์ว่า virtual machine สามารถ snapshot สถานะหน่วยความจำทั้งหมดได้ เรื่องนี้ก็ควรระวังด้วย

  • ถ้าเป็น “เคอร์เนลที่สร้างขึ้นใหม่ ไม่มีร่องรอยไฟล์ล็อก และ OS ที่แพตช์ครบถ้วน” แค่ใช้ดิสก์ใน โหมดอ่านอย่างเดียว ก็น่าจะได้ผลแบบเดียวกันไม่ใช่หรือ?

    • สมัยนี้ดิสก์ก็ไม่ได้มีสวิตช์อ่านอย่างเดียวเสมอไป คิดถึงร่องกายภาพบนฟลอปปีดิสก์จริง ๆ
      และบุคคลที่สามก็ตรวจสอบพิสูจน์ได้ยากว่าสวิตช์นั้นถูกตั้งค่าไว้อย่างถูกต้อง
  • มีคำกล่าวว่า “เซิร์ฟเวอร์ VPN ทั้งหมดของเรายังคงใช้เคอร์เนล Linux ที่ปรับแต่งเองและลดทอนลงอย่างมาก และติดตามสาขา mainline ของการพัฒนาเคอร์เนล” แต่ เซิร์ฟเวอร์ที่ปรับแต่งเอง เป็นจุดเฉพาะทางด้านความปลอดภัย
    เซิร์ฟเวอร์ทั่วไปมีคนศึกษาและแพตช์อย่างต่อเนื่อง แต่เราไม่อาจคาดหวังแบบเดียวกันกับเซิร์ฟเวอร์ลักษณะนี้ได้
    หากมีใครพบช่องโหว่ด้านความปลอดภัย ผู้โจมตีก็อาจซื้อช่องโหว่นั้นไป และอาจไม่มีใครรู้เลยว่าระบบถูกเจาะแล้ว