1 คะแนน โดย GN⁺ 3 시간 전 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • Loupe เป็นแอปสำหรับ iOS·iPadOS ที่อ่านค่าจริงจาก public iOS API และแสดงผลในรูปแบบดิบ ทำให้สามารถตรวจดูได้โดยตรงว่าอุปกรณ์เปิดเผยค่าใดบ้างผ่าน API ที่แอปภายนอกสามารถเรียกใช้ได้
  • แม้ไม่มีชื่อ อีเมล หรือข้อมูลตำแหน่ง แต่ค่าที่ถูกอ่านหลายรายการเมื่อรวมกันก็อาจก่อเป็น ฟิงเกอร์พรินต์ ที่ใช้ระบุตัวผู้ใช้ซ้ำได้ข้ามทั้งแอปและเว็บไซต์
  • ค่าที่อ่านได้ถูกจัดเป็น 3 ระดับตามต้นทุนในการเข้าถึง
    • Passive: ค่าที่ทุกแอปมองเห็นได้โดยไม่ต้องมีพรอมป์ต์ เช่น locale, time zone, screen, battery เป็นต้น
    • Needs Permission: ค่าที่ทำให้ iOS แสดงพรอมป์ต์ขอสิทธิ์ เช่น contacts, photos, location, calendars
    • Advanced: การใช้ side channel ของ public API เช่นการ probing URL scheme ผ่าน canOpenURL และการคงอยู่ของ Keychain ที่ยังเหลืออยู่แม้ติดตั้งใหม่
  • ค่าที่ Loupe อ่านจะไม่ออกจากอุปกรณ์ เว้นแต่ผู้ใช้จะส่งออกด้วยตนเองอย่างชัดเจน และจะแสดงเป็นค่าดิบโดยไม่มีการรวมข้อมูลหรือแฮช รวมถึงไม่มีการอัปโหลด ซิงก์ หรือแชร์
  • การบิลด์ต้องใช้ Xcode 26 ขึ้นไป โดยเปิด code/Loupe.xcodeproj แล้วกรอก DEVELOPMENT_TEAM และ bundle identifier ใน Signing.local.xcconfig จากนั้นบิลด์และรันบนอุปกรณ์หรือซิมูเลเตอร์
  • ใช้ buildable folders ของ Xcode ทำให้ไฟล์ Swift ใหม่ถูกนำเข้ามาโดยอัตโนมัติโดยไม่ต้องแก้ไขไฟล์โปรเจกต์ และแม้จะบิลด์สำหรับ macOS ได้ด้วย แต่เวอร์ชัน Mac ยังต้องทำงานเพิ่มอีกเล็กน้อยก่อนจะอยู่ในสภาพที่ polished
  • Loupe เป็นโอเพนซอร์สฟรี โดย source code เผยแพร่ภายใต้ MIT License แต่ชื่อ Loupe, โลโก้, ไอคอนแอป, รูปภาพ, ไอคอน และไฟล์ต้นฉบับด้านดีไซน์ ไม่ได้อยู่ภายใต้ MIT License

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

 
GN⁺ 3 시간 전
ความเห็นจาก Hacker News
  • ไม่เข้าใจว่าทำไม การเข้าถึงอินเทอร์เน็ต ของแอปถึงไม่ได้ถูกบล็อกเป็นค่าเริ่มต้นแล้วค่อยให้ผู้ใช้เลือกอนุญาต
    ถ้าป้องกันการรั่วไหลของข้อมูลได้ ความเสียหายส่วนใหญ่แบบนี้ก็น่าจะลดลงมาก และจริง ๆ แล้วก็มีแอปจำนวนมากที่ไม่จำเป็นต้องต่ออินเทอร์เน็ตตั้งแต่แรก
    ไม่เข้าใจว่าทำไมการอ่านความดันโลหิตถึงต้องให้ฉันสร้างบัญชี GE อย่างน้อยกรณีนั้นก็ยังรู้ได้ว่าพวกเขากำลังใช้ประโยชน์จากฉัน แต่นี่คือการใช้งานในทางที่ผิดอย่างชัดเจน

    • 99% ของแอปจะขอการเข้าถึงอินเทอร์เน็ต และถ้าไม่อนุญาตก็จะทำงานไม่ได้ ทำให้ผู้ใช้เผลอชินกับการกดอนุญาตไปเอง
      แอปส่วนใหญ่ก็มีเหตุผลที่ชอบธรรมในการต้องใช้อินเทอร์เน็ตอยู่แล้ว ดังนั้นสิทธิ์แบบ ใช่/ไม่ใช่ อย่างเดียวคงไม่ช่วยได้มากนัก
    • ถ้าอย่างนั้นน่าจะฝังเครื่องมือแบบ Little Snitch มาในระบบปฏิบัติการเลยมากกว่า
      อยากให้แสดงล็อกแบบละเอียดของทุกคำขอเครือข่าย โดเมนปลายทาง และข้อมูลที่ถูกส่งออกไป
    • iPhone ที่ซื้อในจีนแผ่นดินใหญ่ หรือก็คือเครื่องที่หมายเลขรุ่นลงท้ายด้วย CH/A มีการตั้งค่า สิทธิ์การเข้าถึงอินเทอร์เน็ต แยกตามแอป
      ตัวเลือกมีสามแบบคือ ปิด, WLAN เท่านั้น, และ WLAN กับเซลลูลาร์ [0]
      [0] https://old.reddit.com/r/ios/comments/aib10i/in_china_ios_al...
    • ใน AOSP เครือข่ายเป็นสิทธิ์ทั่วไปของแอป ดังนั้นอย่างน้อยใน Lineage ก็สามารถปิดเครือข่ายให้กับแอปใดก็ได้ รวมถึงแอปอย่าง Google Play services
      ไม่เคยใช้ GrapheneOS เลยไม่รู้ แต่ตัว Android เองรองรับเรื่องนี้ครบอยู่แล้ว จึงไม่เข้าใจว่าทำไมผู้ผลิตมือถือส่วนใหญ่ถึงเอาสิทธิ์นี้ออกจาก ROM ของตัวเอง
    • GrapheneOS สามารถจำกัดการเข้าถึงอินเทอร์เน็ตของแอปใดก็ได้ตั้งแต่ตอนติดตั้งแอป
      แต่ก็เห็นด้วยว่าฟีเจอร์แบบนี้ควรมีอยู่ทุกที่
  • ขอแก้ไขบางคอมเมนต์ตรงนี้: แอป iOS ไม่สามารถแสดงรายการแอปที่ติดตั้งทั้งหมดได้
    มันตรวจสอบได้เฉพาะแอป/สคีมที่ระบุไว้ล่วงหน้าใน LSApplicationQueriesSchemes เพื่อเช็กว่าติดตั้งอยู่หรือเปิดได้หรือไม่
    ถ้าใส่รายการแอปที่ไม่เกี่ยวข้องกันเป็นลิสต์ยาว ๆ ก็จะถูกปฏิเสธจากการตรวจแอปของ Apple
    Apple เพิ่มข้อจำกัดนี้เพราะรายชื่อแอปที่ติดตั้งสามารถถูกใช้เพื่อทำ fingerprinting และสร้างโปรไฟล์ที่ละเมิดความเป็นส่วนตัวได้

    • แต่ถึงอย่างนั้น แอปหนึ่งก็ยังขอเช็กการมีอยู่ของ ได้สูงสุด 50 แอป ไม่ใช่หรือ?
      แล้ว data broker หรือผู้ให้บริการรวมข้อมูลก็สามารถซื้อข้อมูลแบบนั้นจากแอปหลายพันตัว มารวมกันแล้วขายต่อได้
    • ไม่น่าจำเป็นต้องมีรายการยาวมากด้วยซ้ำ
      แค่รายการสั้น ๆ ที่แยกแยะได้สูงมาก ก็อาจให้ เอนโทรปีเพิ่มเติม มากพอจะใช้ระบุตัวบุคคลแบบเฉพาะเจาะจงได้ เมื่อนำไปประกอบกับข้อมูลรั่วไหลอย่างอื่น
    • แค่คิดว่าแอปหนึ่งรู้ได้ว่ามีแอปอะไรอีกบ้างติดตั้งอยู่ในโทรศัพท์ฉันก็น่ากลัวแล้ว
      มีที่ไหนให้ดูรายการนั้นบ้าง?
    • ก่อนที่ Apple จะบล็อก Facebook เคย นำเรื่องนี้ไปใช้ในทางที่ผิดในวงกว้าง
  • ข้อมูล “iPhone last setup or erased on ...” นี่เลวร้ายจริง ๆ
    ผู้ใช้จะทำอะไรกับเรื่องนี้ได้จริงบ้าง? ดูเหมือนว่าระบบปฏิบัติการควรทำให้ค่านี้พร่ามัวลงไม่ทางใดก็ทางหนึ่ง

    • โดยรวมแล้ว iPhone ดูเหมือนไม่ได้ถูกออกแบบโดยคำนึงถึง การป้องกัน fingerprinting จากแอปที่ติดตั้งอยู่
      มาตรการป้องกันเดียวคือหลีกเลี่ยงการติดตั้งแอปและใช้เว็บเบราว์เซอร์ให้มากที่สุดเท่าที่ทำได้
    • อาจเป็นฉันเองที่ช้าไปหน่อย แต่ไม่เข้าใจว่าทำไมระบบปฏิบัติการถึงให้ข้อมูลแบบนี้กับแอป
    • ถ้า threat model คือการติดตามผู้ใช้ด้วยการทำ correlation พฤติกรรมข้ามหลายแอป การทำให้ค่าพร่ามัวก็คงไม่ถูกสังเกตเห็นจากการดูเพียงแอปเดียว
  • วันที่สร้างโวลุม นี่ค่อนข้างร้ายแรง
    ไม่เห็นเหตุผลเลยว่าทำไมค่านี้กับ Pasteboard changeCount ต้องละเอียดถึงขนาดนั้น
    การรั่วไหลของ “Installed Apps Probe” ก็น่าตกใจ แต่ถึงอย่างนั้นก็ยังดีกว่าสถานะปัจจุบันของ Android

    • Graphene ไปไกลกว่ามากในเรื่องนี้
    • ตัวนับ Pasteboard มีไว้เพื่อช่วยให้แอปไม่ต้องถามซ้ำเกี่ยวกับรายการเดิมในบัฟเฟอร์
      และก็ไม่ได้มีอะไรขัดขวางการรีเซ็ตมันทุกวัน
  • ยอดเยี่ยม
    พอได้เห็นอะไรแบบนี้ก็ยิ่งตระหนักว่าจำเป็นต้องมีเครื่องมือที่ช่วยให้รับรู้ได้ทางภาพมากแค่ไหน
    ฉันเคยทำอะไรคล้ายกันสำหรับเว็บไว้ที่นี่: https://neberej.github.io/exposedbydefault/
    Github: https://github.com/neberej/exposedbydefault

  • ถ้าใครไม่มี iPhone หรือไม่อยากติดตั้งแอป ก็สามารถดูเดโมได้ที่นี่
    เป็นเวอร์ชันบนแพลตฟอร์มอื่นของวิดีโอเดียวกัน
    https://odysee.com/@techlore:3/permission-not-required-the-o...
    https://www.youtube.com/watch?v=_n_SpEWtqog
    https://inv.nadeko.net/watch?v=_n_SpEWtqog
    https://techlore.tv/w/d7dh4P7y4dVngNoL7u7s3B

  • ไม่เข้าใจว่าทำไมแอปสุ่ม ๆ ที่ไม่ได้รับสิทธิ์พิเศษถึงเข้าถึงข้อมูลได้มากขนาดนี้ และทำไม Apple ถึงไม่แจ้งข้อมูลสำคัญเหล่านี้ให้ผู้ใช้รู้
    Apple ไม่สามารถทำ รายการ checkbox ยาว ๆ ให้เลือกอนุญาต/บล็อกแยกตามหมวดและตามแอปได้หรือ?
    เช่น ฉันไม่เคยรู้เลยว่าแอปที่ไม่ได้รับสิทธิ์อะไรเลยสามารถมีรายชื่อแอปทั้งหมดที่ติดตั้งในเครื่องได้ทันที และแค่การมี Tinder/Bumble/Hinge ก็อาจใช้อนุมานได้ว่าคุณกำลังเดตอยู่ หรือแม้แต่กำลังนอกใจ
    แค่นี้ก็ดูเพียงพอแล้วสำหรับผู้ไม่หวังดีที่จะหารายได้จากการขายคำตอบเชิงความน่าจะเป็นในรูปแบบบริการอย่าง “เช็กว่าคู่ของคุณกำลังนอกใจหรือเปล่า” ในราคา $10

    • เป็นไอเดียที่งี่เง่า
      แล้วคุณจะทำให้แอป “เช็กว่าคู่ของคุณกำลังนอกใจหรือเปล่า” แบบนั้นไปติดตั้งบนโทรศัพท์ของอีกฝ่ายได้อย่างไร?
    • แล้วแอปแบบนั้นจะไปติดตั้งบนเครื่องของเหยื่อเพื่อใช้ตรวจจับแอปอื่น ๆ ได้อย่างไร?
  • บนโทรศัพท์ Android มีอะไรคล้าย ๆ แบบนี้อยู่แล้วหรือยัง?

  • วันนี้ฉันแค่ยอมแพ้กับความพยายามที่จะไม่แชร์ข้อมูลส่วนตัวแล้ว
    เลยเลือกบล็อกโฆษณาทั้งหมดแทน และจะไม่ใช้แอป/เว็บไซต์ที่ ใช้งานไม่ได้หากไม่มีตัวบล็อกโฆษณา
    พวกเขาอาจมีข้อมูลละเอียดถึงระดับรสไอศกรีมที่ฉันชอบ แต่เพราะฉันไม่ดูโฆษณาเลยก็เลยไม่ได้ใส่ใจมาก
    แน่นอนว่าคงดีกว่าถ้าไม่มีใครมีข้อมูลพวกนี้เลย แต่ในสังคมแย่ ๆ แบบนี้ก็ต้องทำแบบปฏิบัตินิยม

  • เพราะงั้นฉันเลยหลีกเลี่ยงการติดตั้งแอปและไม่ลงไว้เยอะ

    • มันไม่ดีกว่าหรือที่จะมี คอมพิวเตอร์ในกระเป๋า ที่ฉันเป็นเจ้าของจริง ๆ?