วิธีสแกนพอร์ต Tcp ด้วย Nmap

click fraud protection

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

Transmission Control Protocol หรือ TCP เป็นมาตรฐานที่ช่วยให้สามารถเชื่อมต่อระหว่างคอมพิวเตอร์ผ่านเครือข่ายได้ TCP ใช้การจับมือสามทางเพื่อเปิดการเชื่อมต่อที่จะเปิดค้างไว้จนกว่าจะหมดเวลาหรือการเชื่อมต่อถูกปิด นี่ไม่ได้หมายความว่าการเชื่อมต่อกำลังส่งข้อมูลเสมอ แต่มันหมายความว่าทั้งสองฝ่ายจะบันทึกรายละเอียดการเชื่อมต่อและสามารถส่งและรับข้อมูลต่อได้ทันที

Nmap เป็นเครื่องมือมาตรฐานสำหรับการสแกนพอร์ต ได้รับการออกแบบมาเพื่อทำงานบน Linux เป็นหลัก แต่ก็มีเวอร์ชัน Windows ด้วย อินเทอร์เฟซแบบกราฟิกก็มีให้เช่นกัน แต่การใช้งานบรรทัดคำสั่งยังคงเป็นมาตรฐาน

วิธีใช้ Nmap

หากต้องการทดสอบว่าคุณได้ติดตั้ง Nmap บนเครื่อง Linux หรือไม่ ให้เรียกใช้คำสั่ง “nmap” หากคุณได้รับหน้าความช่วยเหลือ แสดงว่ามีการติดตั้งและพร้อมใช้งาน หากคุณได้รับข้อผิดพลาดที่แจ้งว่า "ไม่พบคำสั่ง" คุณจะต้องติดตั้ง Nmap

หน้าความช่วยเหลือมีความหนาแน่นสูงและแสดงตัวเลือกมากมายที่อาจสร้างความสับสน พื้นฐานที่คุณต้องใช้ในการสแกนพอร์ต TCP นั้นค่อนข้างง่าย โครงสร้างพื้นฐานที่คุณต้องการคือ “nmap [ประเภทของการสแกน] [ตัวเลือก] {ข้อกำหนดเป้าหมาย}”

สำหรับการสแกนพอร์ต TCP คุณจะต้องใช้การสแกนประเภทใดประเภทหนึ่งจากสองประเภท ได้แก่ TCP หรือ SYN การสแกน TCP พยายามทำการเชื่อมต่อแบบเต็มไปยังแต่ละพอร์ต โดยดำเนินการจับมือสามทางให้เสร็จสิ้น การสแกน SYN ใช้โปรโตคอลในทางที่ผิดเล็กน้อยและจะไม่ส่งข้อความที่สามของการจับมือสามทาง การสแกน SYN มักจะไม่เครียดกับทรัพยากรระบบ เนื่องจากอุปกรณ์ไม่จำเป็นต้องเปิดการเชื่อมต่อจำนวนมากในคราวเดียว เนื่องจากการเชื่อมต่อไม่เคยสร้างอย่างสมบูรณ์ พวกเขาจึงทำงานเร็วกว่าการสแกน TCP แต่จะต้องรูท สิทธิ์ การสแกน TCP ถูกระบุด้วยแฟล็ก "-sT" ในขณะที่การสแกน SYN ถูกระบุโดย "-sS"

เคล็ดลับ: แฮนด์เชคสามทางคือวิธีการเริ่มต้นการเชื่อมต่อ TCP ซึ่งเกี่ยวข้องกับข้อความสามข้อความ “SYN, SYN-ACK และ ACK” ส่งจากไคลเอนต์ไปยังเซิร์ฟเวอร์ เซิร์ฟเวอร์ไปยังไคลเอนต์ จากนั้นไคลเอนต์ไปยังเซิร์ฟเวอร์ ตามลำดับ

วิธีระบุตัวเลือกการสแกน

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

คุณสามารถสแกนที่อยู่ IPv4 หรือ IPv6 ในแต่ละครั้ง โดย IPv4 เป็นค่าเริ่มต้น หากคุณต้องการสแกนที่อยู่ IPv6 คุณต้องใช้แฟล็ก "-6" บางครั้ง Nmap จะเรียกใช้การสแกน ping อย่างรวดเร็วเพื่อกำหนดว่าเครื่องใดกำลังฮอต หากนี่เป็นการข้ามโฮสต์ที่คุณต้องการทดสอบ คุณสามารถปิดใช้งานได้ด้วยแฟล็ก "-Pn" หากคุณระบุช่วงกว้าง อาจใช้เวลานานในการสแกน แฟล็ก "-T4" จะทำการสแกนเร็วขึ้นและไม่น่าจะพลาดสิ่งใด อาจทำให้เครือข่ายหรืออุปกรณ์ทำงานช้า เนื่องจากปริมาณการรับส่งข้อมูลจะเพิ่มขึ้นอย่างมาก

วิธีระบุที่อยู่ IP และช่วงพอร์ต

โดยค่าเริ่มต้น Nmap จะสแกนพอร์ต 1,000 อันดับแรกที่ใช้บ่อยที่สุด คุณสามารถตั้งค่าช่วงพอร์ตด้วยตนเองโดยใช้แฟล็ก "-p" แล้วระบุช่วงโดยไม่มีช่องว่าง ช่วงพอร์ตสามารถระบุได้โดยใช้ค่าที่คั่นด้วยเครื่องหมายจุลภาค ช่วงที่ใส่ยัติภังค์ หรือทั้งสองอย่างรวมกัน ตัวอย่างเช่น แฟล็ก "-p22", "-p1-65535" และ "-p21-25,80,139,8080" จะสแกนพอร์ต 22 พอร์ตทั้งหมดระหว่าง 1 ถึง 65535 และพอร์ต 21 ถึง 25, 80, 239 และ 8080 ตามลำดับ นอกจากนี้ยังสามารถระบุแฟล็ก “–top-ports [number]” แทนเพื่อสแกน [number] พอร์ตที่พบบ่อยที่สุด หากคุณต้องการระบุพอร์ตทั้งหมด คุณสามารถใช้ชวเลข “-p-“

เคล็ดลับ: หมายเลขพอร์ตอยู่ระหว่าง 0 ถึง 65535 แม้ว่าจะไม่สามารถใช้ 0 ในทางเทคนิคได้

สิ่งสุดท้ายที่คุณต้องระบุคือที่อยู่ IP ของอุปกรณ์ที่คุณต้องการทดสอบ ในการดำเนินการดังกล่าว เพียงระบุที่อยู่ IP ทั้งหมดที่คุณต้องการสแกน โดยควรคั่นด้วยช่องว่าง และสามารถแสดงรายการแยกกันได้ ตามช่วงที่มีเครื่องหมายยัติภังค์ หรือผ่านสัญกรณ์ CIDR ตัวอย่างเช่น “191.168.0.1” จะสแกนที่อยู่ IP เดียวนั้น “192.168.0.1-5” จะสแกนที่อยู่ IP ห้ารายการระหว่าง 102.168.0.1 และ 192.168.0.5 ในที่สุด “192.168.0.1/24” จะสแกนที่อยู่ IP ทั้งหมดระหว่าง 192.168.0.1 ถึง 192.168.0.255.

คำสั่งโดยรวมควรมีลักษณะคล้ายกับตัวอย่างต่อไปนี้: “nmap -sS -vvv -A -p- 127.0.0.1”, “nmap -sS -v -p80,443,8080 192.168.0.1/24”, “nmap -sS –top-ports 10000 -6 ::1”

รวบรวมอาร์กิวเมนต์ที่คุณต้องการใช้ จากนั้นรันคำสั่ง