0Pricing
Ethical Hacking Academy · บทเรียน

การตรวจจับบริการและ OS

การระบุลักษณะเฉพาะ

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

จากพอร์ตที่เปิดสู่เป้าหมาย

การรู้ว่าพอร์ตเปิดอยู่นั้นยังไม่เพียงพอ คุณต้องรู้ว่าซอฟต์แวร์ใดกำลังรอรับการเชื่อมต่อและเป็นรุ่นใด เพราะช่องโหว่มักมุ่งเป้าไปที่รุ่นเฉพาะ

การตรวจหาบริการและการสร้างลายนิ้วมือระบบปฏิบัติการของ Nmap จะเปลี่ยนรายการพอร์ตที่เปิดให้เป็นข้อมูลเชิงลึกที่นำไปใช้ได้จริง

การตรวจหารุ่นบริการ

แฟล็ก -sV จะส่งโพรบไปยังพอร์ตที่เปิด และเปรียบเทียบการตอบกลับกับฐานข้อมูลของ Nmap เพื่อระบุบริการและรุ่น เช่น 'OpenSSH 8.2p1' หรือ 'Apache httpd 2.4.41'

nmap -sV 192.168.1.10
# 22/tcp open ssh OpenSSH 8.2p1 Ubuntu

การตรวจหารุ่นทำงานอย่างไร

Nmap ส่งโพรบชุดหนึ่ง แล้วเปรียบเทียบการตอบกลับ (แบนเนอร์ พฤติกรรม ข้อความแสดงข้อผิดพลาด) กับลายเซ็นหลายพันรายการใน nmap-service-probes

การดึงแบนเนอร์และจับคู่พฤติกรรมนี้ช่วยระบุบริการได้แม้อยู่บนพอร์ตที่ไม่ใช่มาตรฐาน เช่น เซิร์ฟเวอร์ HTTP ที่ทำงานบนพอร์ต 8000

ระดับความเข้มข้นในการตรวจหารุ่น

คุณสามารถปรับระดับความพยายามของ Nmap ได้ด้วย --version-intensity (ตั้งแต่ 0 ถึง 9):

  • ต่ำกว่า: โพรบน้อยกว่า เร็วกว่า แต่อาจพลาดรุ่น
  • สูงกว่า: โพรบมากกว่า ช้ากว่า แต่แม่นยำกว่า

ทางลัด: --version-light (ระดับ 2) และ --version-all (ระดับ 9)

nmap -sV --version-intensity 9 192.168.1.10

การตรวจหาระบบปฏิบัติการ

แฟล็ก -O เปิดใช้การสร้างลายนิ้วมือระบบปฏิบัติการ Nmap จะตรวจสอบความแตกต่างเล็กน้อยในวิธีที่ชุดโปรโตคอล TCP/IP ตอบสนอง แล้วเปรียบเทียบกับฐานข้อมูลลายเซ็นระบบปฏิบัติการ

ผลลัพธ์จะแสดงการคาดเดาที่ดีที่สุดและเปอร์เซ็นต์ความแม่นยำ รวมถึงประเภทอุปกรณ์และค่าประมาณระยะเวลาที่ทำงานอยู่ หากมีข้อมูล

sudo nmap -O 192.168.1.10
# Running: Linux 5.X | OS CPE: cpe:/o:linux:linux_kernel:5

การสร้างลายนิ้วมือชุดโปรโตคอล TCP/IP

ระบบปฏิบัติการแต่ละระบบนำ TCP/IP ไปใช้แตกต่างกันเล็กน้อย Nmap จะตรวจสอบลักษณะต่าง ๆ เช่น:

  • ค่า TTL เริ่มต้น
  • ขนาดหน้าต่าง TCP
  • วิธีที่ชุดโปรโตคอลจัดการกับชุดแฟล็กที่ไม่ปกติ
  • ลำดับตัวเลือก TCP

ความแตกต่างเล็ก ๆ เหล่านี้รวมกันเป็นลายนิ้วมือที่มีเอกลักษณ์มากพอสำหรับคาดเดาตระกูลและรุ่นของระบบปฏิบัติการ

ข้อควรระวังด้านความแม่นยำ

การตรวจหาระบบปฏิบัติการเป็นเพียงการคาดเดาที่ดีที่สุด ไม่ใช่ข้อสรุปที่แน่นอน ความแม่นยำจะลดลงเมื่อ:

  • ไฟร์วอลล์กรองโพรบที่ Nmap ใช้
  • โฮสต์ใช้ชุดโปรโตคอลที่ไม่ปกติหรือเป็นเสมือน
  • มีพอร์ตเปิดให้สร้างลายนิ้วมือเพียงไม่กี่พอร์ต

ตัวเลือก --osscan-guess ทำให้ Nmap คาดเดาอย่างเข้มข้นขึ้นเมื่อไม่แน่ใจ

การรวมแฟล็ก

ในการใช้งานจริง คุณจะรวมตัวเลือกการตรวจหาเข้าด้วยกัน แฟล็ก -A เป็นทางลัดที่เปิดใช้การตรวจหาระบบปฏิบัติการ การตรวจหารุ่น สคริปต์เริ่มต้น และ traceroute พร้อมกัน

sudo nmap -A 192.168.1.10
# Equivalent to -O -sV -sC --traceroute

เหตุใดรุ่นจึงสำคัญ

รุ่นที่แน่นอนจะกำหนดขั้นตอนถัดไปของคุณ เมื่อพบ 'vsftpd 2.3.4' คุณจะนึกถึงแบ็กดอร์ชื่อดังได้ทันที ส่วน 'Apache 2.4.49' จะทำให้นึกถึง CVE เกี่ยวกับการเจาะผ่านเส้นทาง

ข้อมูลรุ่นที่แม่นยำช่วยให้คุณค้นหาช่องโหว่ที่ตรงกัน แทนที่จะลองโจมตีแบบไร้ทิศทาง และยังนำไปใช้โดยตรงในส่วนช่องโหว่ของรายงานได้ด้วย

การบันทึกผลลัพธ์

โปรดบันทึกผลลัพธ์การสแกนไว้เพื่อวิเคราะห์และจัดทำรายงานเสมอ Nmap รองรับหลายรูปแบบ:

  • -oN ข้อความปกติ
  • -oX XML (สำหรับเครื่องมือ)
  • -oG รูปแบบที่ค้นหาได้
  • -oA ทุกรูปแบบพร้อมกัน
nmap -A -oA scan_results 192.168.1.10

การดึงแบนเนอร์โดยไม่ใช้ Nmap

บางครั้งคุณอาจยืนยันบริการด้วยตนเอง การเชื่อมต่อด้วยไคลเอนต์ดิบและอ่านข้อความทักทาย (แบนเนอร์) จะแสดงซอฟต์แวร์และรุ่นโดยตรง

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

nc 192.168.1.10 22
# SSH-2.0-OpenSSH_8.2p1 Ubuntu-4ubuntu0.5

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

ระบุแฟล็กที่ทำงานได้มากที่สุดในครั้งเดียว

สรุปทบทวน

คุณได้เรียนรู้การสร้างลายนิ้วมือ:

  • -sV ตรวจหารุ่นบริการด้วยการจับคู่โพรบ/แบนเนอร์ ปรับระดับด้วย --version-intensity
  • -O ตรวจหาระบบปฏิบัติการด้วยการสร้างลายนิ้วมือชุดโปรโตคอล TCP/IP โดยผลลัพธ์เป็นการคาดเดาที่ดีที่สุด
  • -A รวมการตรวจหาระบบปฏิบัติการ รุ่น สคริปต์ และ traceroute ไว้ด้วยกัน
  • รุ่นที่แน่นอนช่วยชี้แนวทางการเลือกช่องโหว่ และบันทึกผลลัพธ์ด้วย -oA

ถัดไป: Nmap Scripting Engine สำหรับการทำงานอัตโนมัติเชิงลึก

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

บทเรียน “การตรวจจับบริการและ OS” ฟรีหรือไม่

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

คุณจะเรียนรู้อะไรในบทเรียน “การตรวจจับบริการและ OS”

การระบุลักษณะเฉพาะ คุณปฏิบัติ Ethical Hacking Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

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

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

บทเรียน “การตรวจจับบริการและ OS” ใช้เวลานานแค่ไหน

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

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

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

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

  1. การค้นหาโฮสต์
  2. เทคนิคการสแกนพอร์ต
  3. การตรวจจับบริการและ OS
  4. เครื่องมือสร้างสคริปต์ของ Nmap
← กลับไปที่ Ethical Hacking Academy