Tag Archive Sniffer

Byphunsanit

F-Droid: PCAPdroid Network Sniffer

PCAPdroid เป็นแอปพลิเคชัน Open Source ตัวตึงบน F-Droid ที่เปลี่ยน Android ของคุณให้เป็นเครื่องมือวิเคราะห์ Network ( Network Sniffer ) ระดับโปร โดยจุดเด่นที่สุดคือ “ไม่ต้อง Root เครื่อง” ครับ นี่คือรายละเอียดเจาะลึกที่คุณควรรู้ก่อนใช้งาน


หลักการทำงาน ( Local VPN )

PCAPdroid จะสร้าง Virtual VPN ขึ้นมาภายในเครื่อง เพื่อดักจับ Traffic ทั้งหมดที่วิ่งเข้า-ออกผ่าน Network Interface แล้วนำมาวิเคราะห์ให้เราดูในรูปแบบที่อ่านง่าย ( Readable Format ) โดยที่ข้อมูลไม่ได้ถูกส่งออกไปยัง Server ภายนอกแต่อย่างใด


ฟีเจอร์ที่น่าสนใจ

  • App-specific Analysis: เลือกดู Traffic แยกตามแอปได้เลย ( เช่น ดูว่า Facebook หรือแอปที่คุณเขียนเอง ยิงไปหา IP ไหนบ้าง )
  • Traffic Decryption: สามารถถอดรหัส HTTPS/TLS เพื่อดูเนื้อหาข้างใน API Request / Response ได้ ( ต้องติดตั้งเครื่องมือเสริมและ CA Certificate )
  • Malware Detection: มีระบบแจ้งเตือนหากตรวจพบการเชื่อมต่อที่ดูอันตรายหรือเชื่อมต่อไปยัง Domain ที่ติด Blacklist
  • Export to PCAP: สามารถบันทึกไฟล์เป็นนามสกุล .pcap เพื่อนำไปเปิดวิเคราะห์อย่างละเอียดด้วย Wireshark บนคอมพิวเตอร์ได้
  • HTTP Server: เปิดโหมด Remote เพื่อดู Traffic ผ่าน Browser บนคอมพิวเตอร์ในวง LAN เดียวกันได้ทันที

วิธีการตั้งค่าเพื่อ Debug API ( HTTPS )

เนื่องจาก Android มีความปลอดภัยสูง การจะดูเนื้อหา API ที่เป็น HTTPS คุณต้องทำขั้นตอนเพิ่มเติมดังนี้

  1. ติดตั้ง PCAPdroid จาก F-Droid: ( แนะนำเวอร์ชันจาก F-Droid เพราะฟีเจอร์ครบกว่า Play Store )
  2. ติดตั้ง PCAPdroid CA Certificate: เข้าไปที่การตั้งค่าของแอปเพื่อสร้างใบรับรอง แล้วนำไปลงในเครื่อง ( Settings > Security > Encryption & Credentials > Install from storage )
  3. ช้กับแอปที่พัฒนาเอง: หากคุณเป็น Developer อย่าลืมเพิ่ม Network Security Config ในโปรเจกต์ Android เพื่อให้แอปยอมรับ User CA:
<network-security-config>
    <debug-overrides>
        <trust-anchors>
            <certificates src="user" />
        </trust-anchors>
    </debug-overrides>
</network-security-config>

ข้อดี vs ข้อจำกัด

ข้อดีข้อจำกัด
ไม่ต้อง Root ก็ใช้งานได้เกือบครบถ้าไม่ Root จะไม่สามารถ bypass SSL Pinning ของแอปดังๆ (เช่น Facebook, Banking) ได้
UI ใช้ง่าย เห็น Real-time Trafficการเปิดถอดรหัส HTTPS ค่อนข้างยุ่งยากสำหรับมือใหม่
ประหยัดทรัพยากรเครื่องการรัน VPN ตลอดเวลาอาจกินแบตเตอรี่เพิ่มขึ้นเล็กน้อย

อ่านเพิ่มเติม