.. | ||
screenshots | ||
README.md |
ตรวจหาสปายแวร์ Pegasus บน Android เบื้องต้นด้วย MVT บนคอมพิวเตอร์ Linux
ปัจจุบัน (ก.ค. 2565) MVT รองรับเฉพาะระบบปฏิบัติการ macOS และ Linux ดังนั้น หากไม่ใช้เครื่อง Mac จะต้องใช้คอมพิวเตอร์ทั่วไปที่ติดตั้งระบบปฏิบัติการ Linux อาจจะเป็นเครื่องที่ติดตั้งแบบ Bare-metal หรือติดตั้งเป็น Virtual machine แล้วทำ USB device passthrough/redirection ก็ได้เช่นเดียวกัน
หากอยู่บน Windows แต่ไม่ต้องการทำ Virtual machine อาจทดลองติดตั้งและใช้งานผ่าน WSL2 แทน ดูรายละเอียดได้ที่นี่
1. ตั้งค่า Environment variable "$PATH"
เราจำเป็นต้องแก้ $PATH เพื่อให้สามารถรันคำสั่งจากแพ็กเกจที่จะถูกติดตั้งโดย pip3
ใน $HOME/.local/bin
ได้โดยการรันคำสั่งต่อไปนี้ในเทอร์มินัล
export PATH=$PATH:$HOME/.local/bin
หากต้องการใช้งานคำสั่งใน $HOME/.local/bin
เป็นประจำ แนะนำให้ใส่คำสั่งข้างต้นลงในไฟล์ .bashrc โดยการรันคำสั่งต่อไปนี้
echo 'export PATH=$PATH:$HOME/.local/bin' >> ~/.bashrc
เปลี่ยน .bashrc
เป็น .zshrc
หากใช้ zsh
2. ติดตั้ง Dependencies
สำหรับดิสโทรกลุ่ม Ubuntu/Debian
sudo apt install adb python3 python3-pip libusb-1.0-0 sqlite3
สำหรับดิสโทรกลุ่ม Fedora/RHEL
sudo dnf install android-tools python3 python3-pip libusb1 sqlite
3. ติดตั้ง MVT และดาวน์โหลด STIX2 Indicators of Compromise (IOCs)
ใช้คำสั่ง pip3
ในการติดตั้ง mvt
pip3 install mvt
สร้างโฟลเดอร์ที่จะใช้ในการจัดเก็บ IOCs
mkdir -p $HOME/.local/share/mvt/
ดาวน์โหลด IOCs จาก Public repository
mvt-android download-iocs
4. เปิดใช้งาน USB Debugging บนอุปกรณ์ Android
เราจะตรวจกันโดยผ่าน Android Debug Bridge ดังนั้นเราจำเป็นต้องเปิดใช้งานการแก้ไขข้อบกพร่อง USB (USB Debugging) ที่อยู่ในการตั้งค่าสำหรับผู้พัฒนา (Developer options) ก่อน ซึ่งเราสามารถเข้าถึงการตั้งค่าที่ซ่อนอยู่นี้ได้โดยการไปที่หน้า "เกี่ยวกับโทรศัพท์" และกดที่ Build number 7 ครั้ง
5. เชื่อมต่ออุปกรณ์ที่ต้องการตรวจสอบกับคอมพิวเตอร์
- เชื่อมต่ออุปกรณ์ Android ที่ต้องการตรวจสอบกับคอมพิวเตอร์ผ่านสาย USB
- ตั้งค่า USB device passthrough/redirection (หากใช้ Linux ใน Virtual machine)
- กดอนุญาต USB Debugging ที่หน้าจอของอุปกรณ์ Android
6. เริ่มการตรวจสอบ
รันคำสั่งตรวจสอบผ่าน ADB
mvt-android check-adb
MVT จะแสดงผลว่าได้ Parse STIX2 สำหรับการตรวจหา Pegasus, Predator และ RCSLab แล้ว ดังรูป
ที่อุปกรณ์ Android จะมีหน้า Full backup ขึ้นมา หากอุปกรณ์ถูกเข้ารหัส (เช่นการตั้ง PIN ปลดล็อคเครื่อง) ให้ใส่รหัสผ่านที่ใช้ในการปลดล็อคเครื่องถามปกติ
ในขั้นตอนของการตรวจสอบ SMS จะมีการถามจากฝั่งคอมพิวเตอร์ดังรูปต่อไปนี้ ให้ใส่รหัสผ่านที่ใช้ในการปลดล็อคเครื่องเช่นเดียวกัน
จากนั้น MVT จะทำการตรวจสอบตาม STIX2 IOCs ที่เราได้ดาวน์โหลดไปก่อนหน้านี้ ในกรณีที่ต้องการเลือกไฟล์ .stix2
เอง สามารถดูรายละเอียดได้ที่นี่
หาก Modules ต่าง ๆ ตรวจไม่พบตาม IOCs โมดูลต่าง ๆ จะแสดงผล produced no detections!
ดังรูป
หมายเหตุ
สำหรับการตรวจสอบขั้นสูง หรือในกรณีที่ตรวจพบ Pegasus อาจเลือกใช้วิธีการติดต่อหน่วยงานอย่าง iLaw หรือ Amnesty International Thailand เพื่อปรึกษาหรือดำเนินการตามขั้นตอนต่าง ๆ ต่อไป
ช่วยเหลือ
การตรวจหาสปายแวร์ Pegasus บน Android เบื้องต้นด้วยคอมพิวเตอร์ Linux ก็จะประมาณนี้นะครับ ใครมีข้อสงสัย หรือติดขัดตรงไหน สามารถสอบถามกันเข้ามาทางคอมเมนต์หรืออินบอกซ์เพจ Facebook ของเราได้เลยครับ