Day: October 19, 2016

  • วิธีใช้งาน Kali Linux – OWASP Zap – User Authentication

    ในการตรวจสอบ Web Application ที่ต้องมีการ Authentication โดยใช้งานผ่าน Web Form จะต้องกำหนดค่าให้ OWASP Zap รู้ว่า จุดใดเป็น Login Form และ Field ใดที่ใช้เป็น Username และ Password ก่อน หลังจากนั้น จะสามารถกำหนดได้ว่า จะโจมตีด้วย Username ใดบ้าง เพื่อใช้ในการทดสอบ

    ขั้นตอนในการตั้งค่าและโจมตีมีดังนี้

    1. ใน Web Browser ให้ตั้งค่า Proxy เป็น 127.0.0.1 Port 8080
      2559-10-19-14_04_45-program-manager
    2. ทำการเปิด Web Page ที่ต้องการโจมดี โดยให้ทำเป็น Login ตามปรกติ ด้วย Username/Password ที่ใช้งานได้จริง
      2559-10-19-14_05_32-program-manager
    3. เมื่อ Login สำเร็จแล้ว จะได้หน้าตาประมาณนี้
      2559-10-19-14_05_49-program-manager
    4. จากนั้น กลับไปที่ OWASP Zap จะเห็นว่าใน Sites มี URL ของ Website ที่ต้องการโจมตีปรากฏอยู่ จากนั้นให้ คลิกขวาที่ URL ที่ต้องการโจมตี คลิก Include in Context > Default Context
      2559-10-19-14_06_30-program-manager
    5. จะปรากฏหน้าต่าง Session Properties ให้ทราบว่า จะใช้งาน URL นี้ ให้คลิกปุ่ม OK
      2559-10-19-14_06_49-kali-running-oracle-vm-virtualbox
    6. จากนั้นให้คลิก POST Action ที่เป็นการส่งข้อมูลการ Login ผ่าน Web Form แล้ว คลิกขวา เลือก Flag as context > Default Context : Form-based Auth login Request
      2559-10-19-14_07_24-program-manager
    7. จะปรากฏหน้าต่าง Session Properties อีกครั้ง ให้ทราบว่า จะใช้ Login Form Target URL และ Login Request POST DATA ดังภาพ ให้กำหนดว่า Username Parameter และ Password Parameter คือ Field ใด จากนั้น ให้คลิกปุ่ม OK
      2559-10-19-14_08_07-kali-running-oracle-vm-virtualbox
    8. จากนั้น ให้คลิก Tab Response ของ POST Action ที่ใช้ในการ Login แล้วมองหา ข้อความ ที่จะให้ OWASP Zap ค้นหา เพื่อเป็นการยืนยังว่า สามารถ Login ได้แล้ว จากนั้น คลิกขวา แล้วเลือก Flag as Context > Default Context: Authentication Logged-in indicator
      2559-10-19-14_08_46-program-manager
    9. จะปรากฏหน้าต่าง Session Properties อีกครั้ง ให้ทราบว่า Regex pattern identified in Logged in response message คือคำใด จากนั้น ให้คลิกปุ่ม OK
      2559-10-19-14_09_06-kali-running-oracle-vm-virtualbox
    10. จากนั้น คลิก Users ด้านซ้ายมือ แล้ว คลิก เครื่องหมายถูก หน้า Username ที่จะใช้ในการ Login
      2559-10-19-14_09_35-kali-running-oracle-vm-virtualbox
    11. จากนั้น คลิก Forced Users ด้านซ้ายมือ แล้วเลือก User ที่จะใช้ในการโจมตี แล้วคลิก OK
      2559-10-19-14_09_51-kali-running-oracle-vm-virtualbox
    12.   ที่ URL ที่จะโจมตี คลิกขวา แล้วเลือก Attack > Active Scan2559-10-19-14_10_29-program-manager
    13. ในหน้าต่าง Active Scan ให้คลิก Tab Scope แล้วเลือก User ที่จะใช้ในการโจมตี
      2559-10-19-14_10_57-kali-running-oracle-vm-virtualbox
    14. คลิก Tab Policy จากนั้นกำหนดให้ Apply High Threshold และ Apply Insane Strength แล้วคลิกปุ่ม Go ทั้ง 2 อัน
      2559-10-19-14_11_19-kali-running-oracle-vm-virtualbox
    15. ระบบ OWASP Zap จะทำการ Scan สามารถดูผลได้จาก Alerts ดังภาพ ซึ่งแสดงให้เห็นว่า Web Site ดังกล่าวมีชื่อโหว่ SQL Injection ที่สามารถ Bypass การ Authentication ได้ เป็นต้น
      2559-10-19-14_13_17-program-manager

    References:

    https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Project

    https://github.com/zaproxy/zap-core-help/wiki