Skip to content

Instantly share code, notes, and snippets.

@bigta
bigta / How_to_write_NTFS_on_Mac_ OS_X_El_Capitan.md
Last active July 5, 2016 06:05
How to write NTFS on Mac OS X El Capitan

#How to write NTFS on Mac OS X El Capitan

เจองานวิจัยเรื่องการขโมย SMS OTP ผ่านโทรศัพท์มือถือ Android/iOS มีสิ่งน่าสนใจหลายเรื่อง

[Android]

  • ใน Android ปกติเวลาเราสั่งติดตั้งแอปผ่านหน้าเว็บไซต์ Google Play พอติดตั้งเสร็จแอปที่พึ่งติดตั้งเข้าไปใหม่จะอยู่ในสถานะ deactivated จนกว่าผู้ใช้จะเป็นคนกดเรียกตัวแอปนั้นขึ้นมาทำงาน ซึ่งแปลว่าต่อให้แอปนั้นมีการขอ permission อย่าง BOOT_COMPLETED หรือ SMS_RECEIVED ก็ยังไม่สามารถทำงานได้
  • แปลว่าถ้ามีคนเข้า Google Account ของเราได้ หรือควบคุมเบราว์เซอร์ในเครื่องที่ล็อกอิน Google Play ไว้ได้ (เช่น ทำผ่าน browser extension) แล้วสั่งติดตั้งแอปขโมย SMS ถ้าเราไม่ทะลึ่งไปเปิดแอปตัวนั้นขึ้นมา มันก็จะยังไม่สามารถขโมย SMS ได้
  • อย่างไรก็ตาม ตัว Android มีระบบ intent ที่ให้แอปสามารถ register โดเมนหรือโพรโทคอลพิเศษของตัวเองได้ (ประมาณว่าถ้าเปิดเข้าเว็บนี้หรือเรียกโพรโทคอลนี้ให้โหลดแอปตัวนี้ขึ้นมา) ซึ่งถ้าทำแบบนี้แล้วหลอกให้เหยื่อเข้าเว็บไซต์ที่กำหนดไว้ ก็สามารถ trig ให้แอปที่ถูก deactivated เปิดขึ้นมาเองได้
  • ในงานวิจัยนี้มีจุดน่าสนใจอย่างนึงคือเค้าบอกว่าสามารถหลอกระบบตรวจจับมัลแวร์ (Google Bouncer) ได้ โดยอัปโหลดแอปธรรมดาข
@bigta
bigta / Android_N_Direct_Boot.md
Last active April 10, 2016 16:14
Android N Direct Boot

นั่งอ่านฟีเจอร์ของ Android N Developer Preview แล้วพบความน่าสนใจหลายอย่าง แต่ที่เตะตาที่สุดน่าจะเป็นฟีเจอร์ Direct Boot

ปกติแล้วถ้าเราเปิดใช้งาน full disk encryption มันจะ encrypt ข้อมูลในพาร์ทิชัน /data ซึ่งเวลาเราเปิดเครื่องขึ้นมามันจะให้ใส่รหัสผ่านเพื่อ decrypt ถ้ารหัสผ่านไม่ถูกมันก็จะไม่บู๊ตต่อ ที่ผ่านมามันมีประเด็นว่าถ้าเกิดเรานอนหลับอยู่ดีๆ แล้วเครื่องมันทะลึ่งรีสตาร์ทตัวเอง มันก็จะค้างที่หน้าจอให้ใส่รหัสผ่านอยู่อย่างนั้น ตั้งปลุกไว้หกโมงเช้าก็อาจจะตื่นนู่นเที่ยง ใครโทรเข้ามาก็โทรไม่ติดเพราะเครื่องมันยังค้างอยู่

ทาง Google เลยแก้ปัญหานี้โดยการแยกข้อมูลที่เก็บในพาร์ทิชัน data ออกมาเป็น 2 ส่วนคือ Device encrypted storage กับ Credential encrypted storage โดยต่อไปนี้เครื่องที่เปิดใช้งาน FDE เวลาเปิดเครื่องขึ้นมาจะไม่มีการถามรหัสผ่านสำหรับ decrypt แล้ว จะบู๊ตเข้ามาที่โหมดการใช้งานปกติได้เลย เพียงแต่ข้อมูลที่เข้าถึงได้จะมีแค่ข้อมูลที่อยู่ใน Device encrypted storage เท่านั้น (เช่นพวกการตั้งค่านาฬิกาปลุกหรือ notification) ส่วนข้อมูลอื่นๆ ที่มีความสำคัญมากๆ จะอยู่ใน Credential encrypted storage ซึ่งต้องให้ผู้ใ