How to intercept communication using “Echo Mirage”

บทนำ (Overview)

บทความนี้นำเสนอการดักจับข้อมูล (Interception) ของโปรแกรมประเภท “Java application” ที่เขียนติดต่อกับ “Server” ทั้งการส่งข้อมูลและรับข้อมูล เพื่อหาข้อมูลความลับที่สำคัญ (Sensitive information) โดยตัวโปรแกรมในการดักจับใช้กระบวน “Inject” ตัว “Process” ของโปรแกรมที่ต้องดักจับ และทำหน้าทีเหมือนเป็น “Proxy” ก่อนส่งข้อมูลออกไป ส่วนโปแกรมที่จะใช้สำหรับการทดสอบสามารถเขียนขึ้นเองได้ จากบทความดังนี้

 ขั้นตอน (Steps)

  1. ดาวน์โหลดและติดตั้งโปรแกรม “Echo Mirage” (http://echo-mirage.software.informer.com/download/)
  2. เปิดโปรแกรม Java (.jar) ที่เราจะทดสอบ

    Echo_Mirage1
    Java client
  3. ตัวโปรแกรมจะทำหน้ารับค่า “Username” และ “Password” และส่งไปประมวลที่ “Server” จากนั้นจะส่งค่ากลับคืนมาที่ตัว “Application”

    javapost2
    ผลการคลิกปุ่ม Login
  4. เปิดโปรแกรม “Echo Mirage”

    Echo_Mirage2
    โปรแกรม Echo Mirage
  5. จากนั้นเลือกเมนู “Process > Inject” หรือเลือกที่ “icon” Echo_Mirage3
  6. จะปรากฏรายชื่อ “Process” ที่กำลังทำงานอยู่ ให้เลือก “Process” ที่ชื่อ “javaw.exe” และคลิกปุ่ม “OK” (นอกจากนี้เรายังประยุกต์ใช้กับ “Process” อื่น ๆ ได้)

    Echo_Mirage4
    รายชื่อ Process ที่ทำงานอยู่
  7. โปรแกรมจะรอรับการส่งข้อมูลจาก “JAVA Client” เราลองทดสอบกรอกข้อมูลและคลิก “Login”

    Echo_Mirage5
    ข้อมูลส่วนของ Header ของ Protocol HTTP
  8. จากรูปข้างต้นจะพบว่าส่วนของ “Head” ของโปรโตคอล “HTTP มาก่อน” จากนั้นลองคลิกปุ่ม Echo_Mirage6 จะพบส่วนของ POST ที่บรรจุ “Username” และ “Password”

    Echo_Mirage7
    ข้อมูลส่วนของ POST Method
  9. และสุดท้ายเมื่อคลิก Echo_Mirage6 อีกครั้งจะพบส่วนของ HTTP response จะตอบกลับมา

    Echo_Mirage8
    ข้อมูลส่วนของ HTTP response

ใส่ความเห็น