Tag: Authentication

  • PSU One Passport (Authentik)

    PSU One Passport (Authentik)

    • PSU One Passport (Authentik) เป็นระบบล็อคอิน แบบใหม่ที่ ระบบเงินเดือน มหาวิทยาลัยสงขลานครินทร์ “ต้องใช้” เพื่อเพิ่มความปลอดภัย ซึ่งระบบล็อคอินนี้ได้ประกาศใช้งานมาเป็นระยะเวลาหนึ่งแล้ว ตั้งแต่ 2 พฤศจิกายน 2567
    • หน้าตาเป็นดังภาพ

    คลิก “ลงชื่อเข้าใช้ด้วย PSU PASSPORT” จะได้หน้าดังภาพ

    เมื่อได้หน้านี้มี 2 ทางเลือกคือ

    1. กรอก Username ของ PSU Passport ลงไปแล้วคลิก Log in
    1. กรอกรหัสผ่านของ PSU Passport ลงไปคลิก Continue
    1. !!สำคัญมาก ให้คลิกเลือกคำว่า “TOTP Device” จะได้ QR Code ดังภาพ
    1. ให้ใช้โปรแกรมจำพวก Authenticator มาสแกน QR Code ดังกล่าวซึ่งโปรแกรมที่เรามีทุกคนอยู่แล้วคือ Microsoft Authenticator นั่นเอง!!!
    1. ในโทรศัพท์จิ้มเครื่องหมาย + (บวก) เลือก Other (Google, Facebook, etc.)
    1. ทำการสแกน QR Code ในข้อ 3. จะได้ PSU One Passport เพิ่มเข้ามาดังภาพ
    1. กลับมาที่ Browser ในคอมพิวเตอร์ให้เลื่อนจอลงมาล่างสุดในหน้าที่มี QR Code จะมีช่องให้ใส่ Code *
    1. ให้นำ Code จาก PSU One Passport ใน App Microsoft Authenticator มาใส่ โดยคลิกที่ คำว่า PSU One Passport จะปรากฎเลข 6 หลัก
    1. นำเลขมาใส่ในช่อง Code * แล้วกด Continue
    1. จะสามารถเข้าระบบที่ใช้งาน Authentik ในการเข้าระบบได้ ในที่นี้คือ https://payroll.urmo.psu.ac.th
    1. จะได้หน้าล็อคอินเข้าระบบอีเมล ของมหาวิทยาลัย

    1. กรอกชื่อบัญชีอีเมลมหาวิทยลัยลงไปแล้วคลิก Next
    1. บางคนจะได้หน้า Approve sign in ที่ปรากฎเลขสองหลัก ให้นำเลขสองหลักไปใส่ใน App Microsoft Authenticator แล้วกดอนุมัติ
    1. หรือบางคนจะได้หน้ากรอกรหัสผ่าน ก็ให้ใส่รหัสผ่านของอีเมลลงไปแล้วจะได้หน้าในข้อที่ 3 เช่นเดียวกัน
    2. นำเลขที่ได้มาใส่ในมือถือ แล้วกด Yes แล้วใส่รหัสปลดล็อคมือถือ (หรือ สแกนนิ้วมือ สแกนหน้า)
    1. จะได้ดังภาพ
    1. ตอบ Yes ได้ถ้าเป็นเครื่องส่วนตัว ถ้าไม่ใช่เครื่องส่วนตัวให้ตอบ No
    2. เข้าระบบได้เรียบร้อย
    3. ถ้าไม่เคยตั้งค่าไมโครซอฟท์ออเทนติเคเตอร์ ให้ทำการตั้งค่าก่อน ตามคู่มือที่ https://sysadmin.psu.ac.th/microsoft-authenticator/
    • ซึ่งแนะนำให้ใช้วิธีที่ 2 ดีกว่า เนื่องจากไม่ต้องตั้งค่าอะไรเพิ่มเติมอีก
  • Install from scratch – licensing (2)

    ใช้ plugin ชื่อว่า WPO365 วิธีการตั้งค่าเพื่อใช้งาน single sign on ของ Microsoft365 ในการล็อคอินเข้าระบบของ WordPress

    Authentication
    1. ต้องเซ็ต HTTPS ที่เว็บให้เสร็จเรียบร้อย
    2. สำคัญ!!! จำเป็นต้องมีสิทธิ์ Global Administrator บน Azure
    3. Login เข้าเว็บ https://portal.azure.com มองหา Azure Active Directory
    4. ซ้ายมือเลื่อนหาคำว่า App registrations
    5. คลิก + New registration แล้วกรอกชื่อที่ต้องการในช่อง Name ในส่วนของ Supported account types เลือก Accounts in this organizational directory only (Prince of Songkla University only – Single tenant)
    1. เลื่อนลงมาจนเจอคำว่า Redirect URI (Optional) เลือก Web ในช่อง select platform และกรอกชื่อเว็บ https://licensing.psu.ac.th/wp-admin/ ลงไปในช่องถัดมา แล้วคลิก Register
    1. หน้าถัดไป คลิก Token configuration บนเมนูซ้ายมือ จากนั้นคลิก + Add optional claim เลือก Token Type เป็น ID และเลือกหัวข้อด้านล่าง ดังนี้ email, family_name, given_name และ upn แล้วคลิกปุ่ม Add จะมีให้ Add optional claim เพิ่ม ให้ติ๊กถูกแล้วกด Turn on the Microsoft Graph email, profile permission (required for claims to appear in token). แล้ว Add จะได้
    1. คลิก API permissions ที่เมนูซ้ายมือ แล้วคลิก + Add permission คลิก Microsoft Graph แล้วคลิก Delegated และเลือกหัวข้อดังต่อไปนี้ (พิมพ์ในช่อง Search ได้เลย) email, offline_access, openid และ profile แล้วคลิก Add permissions

    จากนั้นคลิก Grant admin consent for Prince of Songkla University แล้วคลิก Yes

    1. คลิก Certificates & Secrets ที่เมนูซ้ายมือ คลิก  + New client secret ตั้งชื่อในช่อง Description และเลือกวันหมดอายุ คลิก Add จากนั้นให้ copy ค่าของช่อง Value เก็บไว้
    1. กลับมาที่ https://licensing.psu.ac.th หลังจากติดตั้งปลักอินชื่อ WPO365 | LOGIN และเปิดใช้งาน (activate) เรียบร้อยแล้ว
    2. คลิก WPO365 ที่ด้านซ้ายมือล่างสุด เปิดใช้งาน SINGLE SIGN-ON (SSO) แล้วคลิก configure
    3. กรอกข้อมูลดังนี้
      1. Select Identity Provider (IdP) เลือก Azure AD (default)
      2. Select SSO-protocol เลือก OpenID Connect (default)
      3. Select OpenID Connect flow เลือก Auth.-code flow (recommended)
      4. Application (Client) Secret นำค่าที่ copy เก็บไว้ในข้อ 9 มาใส่ช่องนี้
      5. Directory (tenant) ID นำค่าที่ได้จากหน้า Overview ของ lsc ชื่อฟิลด์ Directory (tenant) ID
      6. Application (Client) ID นำค่าที่ได้จากหน้า Overview ของ lsc ชื่อฟิลด์ Application (client) ID
      7. Redirect URI View in Azure Portal ใส่ว่า https://licensing.psu.ac.th/
      8. Domain hint View Custom domain names ใส่ว่า psu.ac.th, email.psu.ac.th
      9. Add prompt=select_account parameter ติ๊กถูก
      10. กด Save configuration ด้านล่าง แล้วจะมีหน้า Important ขึ้นมากด Confirm
    4. คลิกแท็บ User Registeration ด้านล่างกรอกดังนี้
      1. Custom domains View Custom domain names กรอก psu.ac.th และคลิก + เพิ่มอีกช่องพิมพ์ email.psu.ac.th
      2. เลื่อนลงมาล่างสุดกด Save configuration
    5. คลิกแท็บ Plugin self-test เลื่อนลงมาด้านล่าง กด Start self-test จะถูก redirect ไปหน้า log in ของ mail ให้ Log in ตามปกติ แล้วจะเด้งกลับมาหน้าของ https://licensing.psu.ac.th หากล็อคอินไม่ผ่านให้กลับไปหน้า https://portal.azure.com คลิก App registrations แล้วเลือก lsc แล้วคลิก Authentication คลิก Add URI เพิ่ม https://licensing.psu.ac.th เข้าไปอีก 1 url กด save กลับไปล็อคอินอีกครั้งน่าจะได้แล้ว
  • วิธีใช้งาน 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