0Pricing
Cyber Security Academy · บทเรียน

การสแกนเว็บแอปด้วย Nikto และ OWASP ZAP

สแกนเว็บแอปพลิเคชันเพื่อหาช่องโหว่ทั่วไปโดยใช้เครื่องสแกนแบบทำงานเชิงรุกของ Nikto และ OWASP ZAP

การสแกนเว็บแอปด้วย Nikto และ OWASP ZAP เป็นบทเรียน Cyber Security Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Cyber Security Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Cyber Security Academy มีบทเรียนทั้งหมด 4 บทเรียน

พื้นผิวการโจมตีของเว็บแอปพลิเคชัน

เว็บแอปพลิเคชันเปิดเผยพื้นผิวการโจมตีที่ซับซ้อน ได้แก่ พารามิเตอร์ URL ช่องข้อมูล แบบฟอร์ม คุกกี้ ส่วนหัว การอัปโหลดไฟล์ และ API เครื่องมือสแกนอัตโนมัติจะตรวจสอบสิ่งเหล่านี้ทั้งหมดอย่างเป็นระบบเพื่อค้นหาช่องโหว่ทั่วไป

พื้นฐานของ Nikto

Nikto เป็นเครื่องสแกนเว็บเซิร์ฟเวอร์แบบบรรทัดคำสั่ง ซึ่งตรวจหาไฟล์อันตราย ซอฟต์แวร์ล้าสมัย ส่วนหัวที่ไม่ปลอดภัย และ CVE ที่เป็นที่รู้จัก เครื่องมือนี้รวดเร็ว เรียบง่าย และสร้างการแจ้งเตือนจำนวนมาก จึงไม่ใช่เครื่องมือแบบล่องหน

nikto -h http://target.com

# Key options:
# -h target host
# -p port (default 80)
# -ssl for HTTPS
# -Tuning to filter check types
# -o output file, -Format format

การตีความผลลัพธ์ของ Nikto

Nikto จะใส่ + ไว้หน้ารายการที่ตรวจพบ ควรมองหารายการต่อไปนี้: อินเทอร์เฟซผู้ดูแลระบบที่เปิดเผย การแสดงรายการไดเรกทอรี ส่วนหัวด้านความปลอดภัยที่ขาดหายไป เวอร์ชันเซิร์ฟเวอร์ที่ล้าสมัย และไฟล์ที่อาจเป็นอันตราย เช่น /phpinfo.php

+ Server: Apache/2.4.49
+ /admin/: Admin login page found
+ /phpinfo.php: PHP info exposed
+ X-Frame-Options header missing
+ Allowed HTTP Methods: GET, POST, PUT, DELETE

ภาพรวม OWASP ZAP

OWASP ZAP (พร็อกซีการโจมตี Zed) เป็นเครื่องสแกนความปลอดภัยเว็บแอปพลิเคชันแบบครบฟังก์ชันที่มี GUI และ API ทำหน้าที่เป็นพร็อกซี เครื่องมือรวบรวมลิงก์ และเครื่องสแกนเชิงรุก จึงเหมาะสำหรับทั้งการทดสอบด้วยตนเองและการทดสอบอัตโนมัติ

การตั้งค่าพร็อกซี ZAP

กำหนดค่าเบราว์เซอร์ให้ใช้ ZAP เป็นพร็อกซี (localhost:8080) ZAP จะดักจับข้อมูลจราจรทั้งหมดและสร้างแผนผังเว็บไซต์ ขั้นตอนแบบพาสซีฟนี้รวบรวมข้อมูลโดยไม่ส่งข้อมูลโจมตี

# Start ZAP
zap.sh

# Or headless CLI
zap.sh -daemon -port 8080

# Set browser proxy:
# HTTP: 127.0.0.1:8080

เครื่องมือรวบรวมลิงก์ของ ZAP

เครื่องมือรวบรวมลิงก์จะสำรวจแอปพลิเคชันโดยติดตามลิงก์และการทำงานของแบบฟอร์ม เครื่องมือรวบรวมลิงก์ AJAX รองรับแอปแบบหน้าเดียวที่ใช้ JavaScript อย่างมาก ทั้งสองอย่างช่วยสร้างแผนผังเว็บไซต์ที่ครบถ้วนสำหรับการสแกนเชิงรุก

# CLI spider
zap-cli spider http://target.com

# AJAX spider for SPAs
# Use GUI: Tools > AJAX Spider

เครื่องสแกนเชิงรุกของ ZAP

เครื่องสแกนเชิงรุกจะส่งข้อมูลโจมตี (การแทรกคำสั่ง SQL, XSS และการข้ามผ่านเส้นทาง) ไปยังข้อมูลนำเข้าที่ค้นพบทุกจุด ระดับความเสี่ยง ได้แก่ สูง ปานกลาง ต่ำ และให้ข้อมูล

zap-cli active-scan --scanners all http://target.com

# Or via API
curl "http://localhost:8080/JSON/ascan/action/scan/?url=http://target.com"

การอ่านการแจ้งเตือนของ ZAP

ZAP จัดกลุ่มรายการที่ตรวจพบเป็นการแจ้งเตือน การแจ้งเตือนแต่ละรายการจะแสดงระดับความเสี่ยง ระดับความเชื่อมั่น URL ที่ได้รับผลกระทบ ข้อมูลโจมตีที่ใช้ หลักฐานจากการตอบกลับ และคำแนะนำในการแก้ไข ระดับความเชื่อมั่นสูงหมายถึงมีผลบวกลวงน้อยลง

ZAP ในกระบวนการ CI/CD

ZAP มีอิมเมจ Docker สำหรับการสแกนอัตโนมัติในกระบวนการต่าง ๆ สคริปต์ zap-baseline.py ทำการสแกนแบบพาสซีฟที่เหมาะสำหรับ CI ส่วน zap-full-scan.py ทำการสแกนเชิงรุก

# Docker baseline scan (passive only)
docker run -t zaproxy/zap-stable \
  zap-baseline.py -t http://target.com

# Full active scan
docker run -t zaproxy/zap-stable \
  zap-full-scan.py -t http://target.com

การเปรียบเทียบ Nikto กับ ZAP

Nikto: เรียบง่าย รวดเร็ว ใช้งานผ่านบรรทัดคำสั่ง เหมาะที่สุดสำหรับการตรวจสอบอย่างรวดเร็วและปัญหาระดับเซิร์ฟเวอร์ ZAP: ครอบคลุม ใช้พร็อกซี รองรับแอปพลิเคชันที่ซับซ้อน และเหมาะกว่าสำหรับช่องโหว่ระดับแอปพลิเคชันและการผสานเข้ากับ CI

ขอบเขตและการอนุญาต

ควรสแกนเฉพาะระบบที่คุณเป็นเจ้าของหรือได้รับอนุญาตเป็นลายลักษณ์อักษรให้ทดสอบ การสแกนโดยไม่ได้รับอนุญาตอาจละเมิดกฎหมาย (CFAA, Computer Misuse Act) และข้อกำหนดการให้บริการ แม้จะไม่ได้ตั้งใจสร้างความเสียหายก็ตาม

ตรวจสอบอย่างรวดเร็ว

อะไรคือข้อแตกต่างระหว่างเครื่องสแกนเชิงรุกของ ZAP กับการสแกนแบบพาสซีฟ

สรุป: เครื่องมือสแกนเว็บ

Nikto ให้ผลการตรวจพบระดับเซิร์ฟเวอร์ได้อย่างรวดเร็วภายในไม่กี่วินาที ส่วน ZAP ให้การสแกนระดับแอปพลิเคชันเชิงลึกด้วยการดักจับผ่านพร็อกซี การรวบรวมลิงก์ และการโจมตีเชิงรุก ทั้งสองเครื่องมือต้องได้รับอนุญาต ในกระบวนการที่มีการจัดการ成熟 ควรทำให้การสแกนพื้นฐานของ ZAP เป็นอัตโนมัติในการนำระบบไปใช้งานทุกครั้ง เพื่อค้นหาการถดถอยก่อนที่จะเข้าสู่ระบบจริง

คำถามที่พบบ่อย

บทเรียน “การสแกนเว็บแอปด้วย Nikto และ OWASP ZAP” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “การสแกนเว็บแอปด้วย Nikto และ OWASP ZAP” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Cyber Security Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Cyber Security Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “การสแกนเว็บแอปด้วย Nikto และ OWASP ZAP”

สแกนเว็บแอปพลิเคชันเพื่อหาช่องโหว่ทั่วไปโดยใช้เครื่องสแกนแบบทำงานเชิงรุกของ Nikto และ OWASP ZAP คุณปฏิบัติ Cyber Security Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Cyber Security Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Cyber Security Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน

บทเรียน “การสแกนเว็บแอปด้วย Nikto และ OWASP ZAP” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Cyber Security Academy นี้ได้ไหม

ได้ บทเรียน Cyber Security Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การให้คะแนน CVE, CWE และ CVSS
  2. การเรียกใช้การสแกนด้วย Nessus หรือ OpenVAS
  3. การสแกนเว็บแอปด้วย Nikto และ OWASP ZAP
  4. การจัดลำดับความสำคัญและแก้ไขข้อค้นพบ
← กลับไปที่ Cyber Security Academy