การตรวจจับบริการและ 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ข้อความปกติ-oXXML (สำหรับเครื่องมือ)-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 ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- การค้นหาโฮสต์
- เทคนิคการสแกนพอร์ต
- การตรวจจับบริการและ OS
- เครื่องมือสร้างสคริปต์ของ Nmap