แนะนํา 10 เครื่องมือ Open Source สําหรับทดสอบความปลอดภัยเว็บไซต์

16 พฤศจิกายน 2023

NT cyfence
NT cyfenceทีมงาน NT cyfence ที่พร้อมให้คำปรึกษา และ ดูแลความปลอดภัยให้กับทุกองค์กร อย่างครบวงจร ด้วยทีมงานมืออาชีพ

สำหรับองค์กรที่ใช้งาน Web Application ไม่ว่าจะเป็นพัฒนาขึ้นมาเอง หรือว่าจัดซื้อมาใช้งาน ความปลอดภัยจากการโดนโจมตีถือเป็นสิ่งที่ต้องคำนึงถึง ไม่ว่าการโจมตีมาจากความเสี่ยงที่เกิดจากช่องโหว่ของแอปพลิเคชันเอง หรือว่า ช่องโหว่จาก Library ที่แอปพลิเคชันนั้นเรียกใช้ การมีเครื่องมือที่ใช้สำหรับสแกนช่องโหว่ จึงช่วยสร้างความมั่นใจให้กับนักพัฒนา หรือ เจ้าหน้าที่ที่ดูแลรับผิดชอบในการดูแลระบบได้เป็นอย่างดี บทความนี้จึงได้รวบรวม 10 เครื่องมือ Open Source Security Testing สำหรับตรวจสอบช่องโหว่ Web Applications เพื่อเป็นประโยชน์ให้แก่ผู้ที่สนใจและกำลังมองหาวิธีในการเช็คความปลอดภัย ไม่ว่าจะเป็นตอนตรวจรับแอปพลิเคชัน หรือว่าจะใช้เพื่อทดสอบกับระบบที่พัฒนาขึ้นมาเอง รวมไปถึงผู้ที่สนใจ Open Source Penetration Testing Tool สำหรับเจาะช่องโหว่ที่ไม่ได้เป็นเครื่องมือสำหรับ Black Hat Hacker เพียงอย่างเดียว แต่ยังช่วยให้ White Hat Hacker สามารถทดลองเจาะระบบเพื่อตรวจสอบและป้องกันช่องโหว่ได้อีกด้วย

1. Zed Attack Proxy (ZAP)

OWASP Zed Attack Proxy (ZAP) เป็นเครื่องมือสำหรับสแกนและตรวจสอบช่องโหว่ของเว็บแอปพลิเคชันพัฒนาจาก OWASP (The Open Web Application Security Project) ซึ่งเป็นมูลนิธิไม่แสวงหาผลกำไรที่ทำงานเพื่อปรับปรุงความปลอดภัยของ Web Application ชื่อดังเจ้าของ OWASP Top Ten โดย ZAP เป็น Tool แบบ Open source สำหรับทำ Penetration test เพื่อค้นหาช่องโหว่บนเว็บแอปพลิเคชันตาม OWASP Top Ten พัฒนาโดยภาษา Java ส่งผลให้สามารถทำงานได้บนทุกระบบปฏิบัติการไม่เว้นแม้บน Raspberry Pi  ใช้งานง่าย และ ZAP ยังสามารถใช้เป็น Proxy สำหรับการทดสอบหน้าเว็บด้วยตนเอง ช่องโหว่ที่ Zed Attack Proxy (ZAP) สามารถตรวจสอบได้เช่น: 

  • Cookie not HttpOnly flag
  • Missing anti-CSRF tokens and security headers
  • Private IP disclosure
  • Session ID in URL rewrite
  • SQL injection
  • XSS injection

โดยมีคุณสมบัติเด่นเพิ่มเติม ดังนี้:

  • Automatic scanning
  • Multi-platform
  • Rest-based API
  • Support for authentication
  • Uses traditional and powerful AJAX spiders

ZAP จึงเหมาะสำหรับนักพัฒนาเว็บแอปพลิเคชันผู้ดูแลระบบ และนักเจาะระบบ ที่ต้องการตรวจสอบและค้นหาช่องโหว่บนเว็บแอปพลิเคชัน โดยเข้าไปดูรายละเอียดเพิ่มเติมได้ที่: https://www.zaproxy.org/ 

Link สำหรับ Download : www.zaproxy.org/download

2. Wfuzz

Wfuzz: The Web fuzzer¶เป็นแอปพลิเคชันที่พัฒนาโดยภาษา Python โดยเป็นเครื่องมือที่ใช้สำหรับการประเมินความปลอดภัยของเว็บแอปพลิเคชันโดยอัตโนมัติและสามารถช่วยรักษาความปลอดภัยเว็บแอปพลิเคชันโดยการค้นหาและใช้ประโยชน์จากช่องโหว่ของเว็บแอปพลิเคชัน ทำงานแบบไม่ผ่าน GUI interface และใช้งานได้ผ่าน Command Line เท่านั้น โดยช่องโหว่ที่ Wfuzz สามารถตรวจสอบได้เช่น: 

  • LDAP injection
  • SQL injection
  • XSS injection 

โดยมีคุณสมบัติเด่นเพิ่มเติม ดังนี้: 

  • Authentication support
  • Cookies fuzzing
  • Multi-threading
  • Multiple injection points
  • Support for proxy and SOCK

เครื่องมือนี้ จึงเหมาะสำหรับนักพัฒนาเว็บแอปพลิเคชันและนักเจาะระบบที่ต้องการตรวจสอบ และค้นหาช่องโหว่บนเว็บแอปพลิเคชันสามารถเข้าชมได้ที่: https://wfuzz.readthedocs.io/en/latest/

3. Wapiti

Wapiti เป็นอีกหนึ่งเครื่องมือที่สแกนเว็บแอปพลิเคชันแบบ Open Source พัฒนาด้วย Python ใช้ตรวจสอบช่องโหว่ด้านความปลอดภัยของเว็บแอปพลิเคชันโดยไม่ต้องการข้อมูลเชิงลึก (Black-box) ไม่ต้องเรียนรู้จากซอร์สโค้ด โดยจะค้นหาช่องโหว่จากเว็บแอปเพื่อหาสคิร์ปต์และฟอร์มที่น่าจะ inject ข้อมูลได้ ทำงานเสมือน Fuzzer ตัวหนึ่งใส่ Payload ต่าง ๆ เข้าไปว่าจะทำงานยังไง และใช้โจมตี HTTP ได้ทั้ง GET และ POST โดยช่องโหว่ที่ Wapiti สามารถตรวจสอบได้เช่น: 

  • Command Execution detection
  • CRLF injection
  • Database injection
  • File disclosure
  • Shellshock or Bash bug
  • SSRF (Server Side Request Forgery)
  • Weak .htaccess configurations that can be bypassed
  • XSS injection
  • XXE injection

โดยมีคุณสมบัติเด่นเพิ่มเติม ดังนี้:

  • ใช้การ Authentication ที่แตกต่างกัน รวมถึง Kerberos และ NTLM
  • สามารถใช้ Brute Force directory และ ไฟล์ใน Web Server เป้าหมายได้
  • ทำงานคล้าย fuzzer
  • รองรับการโจมตีทั้งในรูปแบบ GET และ POST

ผู้ที่สนใจสามารถศึกษาเรียนรู้ข้อมูลเพิ่มเติมได้ที่: https://wapiti-scanner.github.io/

4. W3af

W3af เป็นตัวสแกนและเจาะช่องโหว่เว็บแอปพลิเคชันแบบ Open Source ซึ่งจะให้ข้อมูลเกี่ยวกับช่องโหว่ที่ตรวจพบและวิธีการอุดช่องโหว่เบื้องต้นได้ โดยโปรแกรมนี้ถูกพัฒนาโดยใช้ภาษา Python และใช้งานได้ผ่านทั้ง GUI และ Command Line โดยช่องโหว่ที่ W3af สามารถตรวจสอบได้เช่น: 

  • Blind SQL injection
  • Buffer overflow
  • Cross-site scripting
  • CSRF
  • Insecure DAV configurations

โดยมีคุณสมบัติเด่นเพิ่มเติม ดังนี้:

  • Authentication support
  • Easy to get started with
  • Offers intuitive GUI interface
  • Output can be logged into a console, a file or email

ผู้ที่สนใจสามารถศึกษาเรียนรู้ข้อมูลเพิ่มเติมได้ที่: http://w3af.org/ 

5. SQLMap

SQLMap เป็นหนึ่งในตัวสแกนและเจาะช่องโหว่เว็บแอปพลิเคชันแบบ Open Source ที่ได้รับความนิยมตัวหนึ่งที่ใช้ในการวิเคราะห์ช่องโหว่ SQL Injection รวมถึงสามารถโจมตีได้ถ้าเกิดเว็บที่ทำการทดสอบนั้นมีช่องโหว่ และยังมีฟีเจอร์มากมายให้เลือกใช้ รวมถึงสามารถแก้ไขหรือเพิ่ม payload ในกรณีที่เจอเคสที่ซับซ้อนที่ SQLMap ไม่สามารถโจมตีหรือวิเคราะห์ช่องโหว่ได้โดย default  และยังถูกนำมาใช้ในทดสอบระบบความปลอดภัยของเว็บไซต์ โดยช่องโหว่ที่ SQLMap สามารถตรวจสอบได้เช่น: 

  • Boolean-based blind
  • Error-based
  • Out-of-band
  • Stacked queries
  • Time-based blind
  • UNION query

โดยมีคุณสมบัติเด่นเพิ่มเติม ดังนี้:

  • Automates the process of finding SQL injection vulnerabilities
  • Can also be used for security testing a website
  • Robust detection engine
  • Supports a range of databases, including MySQL, Oracle, and PostgreSQL

ผู้ที่สนใจสามารถศึกษาเรียนรู้ข้อมูลเพิ่มเติมได้ที่: https://github.com/sqlmapproject/sqlmap 

6. SonarQube

SonarQube เป็นแอปพลิเคชันที่พัฒนาโดย Java ใช้สำหรับการตรวจสอบ Code เช่น bug , ช่องโหว่ และคุณภาพของ Code อีกทั้งยังสามารถทำเป็นศูนย์กลางในการเก็บผลในการตรวจสอบจากเครื่องต่าง ๆ ได้ ซึ่งสามารถติดตั้งได้ในหลาย OS  ไม่ว่าจะเป็น Windows, Linux หรือ MacOS ก็ตาม SonarQube สามารถใช้ในการวิเคราะห์ภาษาที่ใช้ในการพัฒนาได้มากถึง 20 ภาษา โดยช่องโหว่ที่ SonarQube สามารถตรวจสอบได้เช่น : 

  • Cross-site scripting
  • Denial of Service (DoS) attacks
  • HTTP response splitting
  • Memory corruption
  • SQL injection

โดยมีคุณสมบัติเด่นเพิ่มเติม ดังนี้:

  • Detects tricky issues
  • DevOps integration
  • Set up analysis of pull requests
  • Supports quality tracking of both short-lived and long-lived code branches
  • Offers Quality Gate
  • Visualize history of a project

ผู้ที่สนใจสามารถศึกษาเรียนรู้ข้อมูลเพิ่มเติมได้ที่: https://www.sonarsource.com/products/sonarqube/

7. Nogotofail

Nogotofail คือ Network Traffic Security Testing Tool จาก Google ออกแบบมาเพื่อช่วยให้นักพัฒนาและนักวิจัยด้านความปลอดภัยตรวจสอบและแก้ไขการเชื่อมต่อ TLS/SSL ที่อ่อนแอ โดยช่องโหว่ที่ Nogotofail สามารถตรวจสอบได้เช่น: 

  • MiTM attacks
  • SSL certificate verification issues
  • SSL injection
  • TLS injection

โดยมีคุณสมบัติเด่นเพิ่มเติม ดังนี้:

  • ใช้งานง่าย
  • ไม่หนักเครื่อง (Lightweight)
  • Deploy ง่าย 
  • สามารถตั้งให้เป็น  router, proxy หรือ VPN server ได้

ผู้ที่สนใจสามารถศึกษาเรียนรู้ข้อมูลเพิ่มเติมได้ที่: https://github.com/google/nogotofail 

8. IronWasp

IronWasp เป็นอีกหนึ่งเครื่องมือสแกน Open Source ที่มีประสิทธิภาพมากตัวนึง เพราะสามารถเปิดเผยช่องโหว่ของเว็บแอปพลิเคชันได้มากกว่า 25 ภาษา นอกจากนี้ยัง Iron Wasp สามารถ detect false ได้ทั้ง positive และ negative โดยช่องโหว่ที่ IronWasp สามารถตรวจสอบได้เช่น: 

  • Broken authentication
  • Cross-site scripting
  • CSRF
  • Hidden parameters
  • Privilege escalation

โดยมีคุณสมบัติเด่นเพิ่มเติม ดังนี้:

  • Extensible via plugins or modules are written in C#, Python, Ruby, or VB.NET
  • GUI-based
  • Report generation in HTML and RTF formats

ผู้ที่สนใจสามารถศึกษาเรียนรู้ข้อมูลเพิ่มเติมได้ที่: https://github.com/Lavakumar/IronWASP

9. Grabber

Grabber เป็นแอปพลิชันที่ใช้งานได้แบบไม่ต้องติดตั้ง เหมาะสำหรับ สแกนเว็บแอปพลิเคชันขนาดเล็ก รวมถึง Webboard และเว็บไซต์ส่วนตัว ถือเป็นเครื่องมือทดสอบความปลอดภัยที่สะดวกสบาย ทำงานแบบไม่มี GUI interface และเขียนด้วยภาษา Python และสนับสนุน JS code analysis โดยช่องโหว่ที่ Grabber สามารถตรวจสอบได้เช่น: 

  • Backup files verification
  • Cross-site scripting
  • File inclusion
  • Simple AJAX verification
  • SQL injection

โดยมีคุณสมบัติเด่นเพิ่มเติม ดังนี้:

  • Generates a stats analysis file
  • Simple and portable
  • Supports JS code analysis

ผู้ที่สนใจสามารถศึกษาเรียนรู้ข้อมูลเพิ่มเติมได้ที่: https://github.com/amoldp/Grabber-Security-and-Vulnerability-Analysis-

10. Arachni

Arachni เป็น Ruby framework ที่ช่วยในการทดสอบความปลอดภัยของเว็บแอปพลิเคชันสมัยใหม่ ใช้งานได้ฟรี รองรับทั้งระบบปฏิบัติการ Windows, MacOS X, และ Linux ช่องโหว่ที่ Arachni สามารถตรวจสอบได้เช่น:

  • XSS injection
  • SQL injection
  • Code injection
  • File inclusion variants
  • Invalidated redirect
  • Local and remote file inclusion

โดยมีคุณสมบัติเด่นเพิ่มเติม ดังนี้:

  • Instantly deployable
  • Modular, high-performance Ruby framework
  • Multi-platform support

ผู้ที่สนใจสามารถศึกษาเรียนรู้ข้อมูลเพิ่มเติมได้ที่: https://ecsypno.com/pages/arachni-web-application-security-scanner-framework

 

จาก 10 เครื่องมือ Open Source สําหรับทดสอบความปลอดภัยเว็บไซต์ที่รวบรวมมาไว้ในบทความข้างต้นนี้คงเป็นประโยชน์ไม่มากก็น้อยให้กับผู้ที่กำลังเริ่มต้นศึกษาเกี่ยวกับการทดสอบระบบ และต้องการตรวจสอบค้นหาช่องโหว่บนเว็บ หรือผู้ที่สนใจทางด้านนี้ สามารถเรียนรู้และลงมือทำได้ด้วยตัวเองผ่านเครื่องมือนี้ได้

แต่ถ้าท่านไหนไม่สะดวกทดสอบระบบด้วยตัวเอง ทาง NT cyfence มีบริการ Vulnerability Assessment ช่วยตรวจสอบช่องโหว่ของระบบ ตั้งแต่ช่องโหว่ในกระบวนการทำงานของระบบ เซิร์ฟเวอร์ และเครือข่าย ไปจนถึงอุปกรณ์รักษาความปลอดภัย ทำให้คุณได้ทราบถึงช่องโหว่ภายในองค์กร และนำไปสู่การแก้ไขปรับปรุงได้อย่างถูกจุด อันเป็นการลดความเสี่ยงจากภัยคุกคามที่อาจเกิดขึ้น หากองค์กรหรือหน่วยงานที่มีทีมดูแลระบบอยู่แล้วแต่ยังอยากเพิ่มความปลอดภัยขั้นสูงสุด NT cyfence ยังมีบริการที่ช่วยดูแลและเฝ้าระวังระบบให้คุณแบบเรียลไทม์ด้วยบริการ Cybersecurity Monitoring ที่เป็นบริการที่เฝ้าระวังภัยคุกคามทางด้านไซเบอร์ และความปลอดภัยของระบบเทคโนโลยีสารสนเทศผ่านศูนย์ปฏิบัติการ Cybersecurity Operations Center (CSOC) โดยมีผู้เชี่ยวชาญที่มากประสบการณ์ (Security Analyst) ในการวิเคราะห์ภัยคุกคามทางด้านไซเบอร์ แจ้งเตือนเหตุการณ์ภัยคุกคาม รวมถึงแนวทางในการจัดการ การแก้ไขปัญหาเบื้องต้นให้กับคุณ

สำหรับผู้ที่สนใจบริการเพิ่มเติมบริการด้าน Cybersecurity สามารถติดต่อ NT cyfence ได้ทาง https://www.cyfence.com/contact-us/  หรือโทร 1888 เรามีทีมงานผู้เชี่ยวชาญพร้อมให้คำแนะนำ และเป็นที่ปรึกษาความปลอดภัยด้านสารสนเทศอย่างครบวงจร

ที่มา : blognone , techtalkthai ,hackr,

บทความที่เกี่ยวข้อง