วิธีการใช้ Nmap สำหรับการสแกนช่องโหว่?

Nmap หรือ Network mapper เป็นชุดเครื่องมือสำหรับการทดสอบการทำงานและการเจาะระบบทั่วทั้งเครือข่าย รวมถึงการสแกนพอร์ตและการตรวจจับช่องโหว่

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

Common Vulnerabilities and Exposures (CVE) คือฐานข้อมูลของปัญหาด้านความปลอดภัยของข้อมูลที่เปิดเผยต่อสาธารณะ ทำหน้าที่เป็นแบบจำลองอ้างอิงสำหรับการตรวจจับช่องโหว่และภัยคุกคามที่เกี่ยวข้องกับความปลอดภัยของระบบข้อมูล

ในบทความนี้ เราจะมาดูวิธีการใช้ Nmap สำหรับ Vulnerability Scan

มาเริ่มกันเลย!

การติดตั้ง Nmap

Nmap ได้รับการติดตั้งล่วงหน้าในเกือบทุกการกระจาย Linux ในกรณีที่หายไป คุณต้องติดตั้งด้วยตนเอง สามารถติดตั้งได้ง่ายๆ ด้วยคำสั่งต่อไปนี้

apt-get install nmap

และคุณยังสามารถติดตั้งได้ด้วยการโคลนทางการ ที่เก็บ git.

git clone https://github.com/nmap/nmap.git

จากนั้นไปที่ไดเร็กทอรีนั้นและติดตั้งข้อกำหนดโดยใช้คำสั่งด้านล่าง

./configure
make
make install

เวอร์ชันล่าสุดของซอฟต์แวร์นี้ รวมถึงโปรแกรมติดตั้งไบนารีสำหรับ Windows, macOS และ Linux (RPM) พร้อมให้บริการ ที่นี่.

สแกนช่องโหว่ด้วย Nmap

Nmap-vulners, vulscan และ vuln เป็นสคริปต์การตรวจจับ CVE ทั่วไปและเป็นที่นิยมมากที่สุดในเครื่องมือค้นหา Nmap สคริปต์เหล่านี้ช่วยให้คุณค้นพบข้อมูลสำคัญเกี่ยวกับข้อบกพร่องด้านความปลอดภัยของระบบ

Nmap-vulners

หนึ่งในเครื่องสแกนช่องโหว่ที่เป็นที่รู้จักมากที่สุดคือ Nmap-vulners. มาดูวิธีตั้งค่าเครื่องมือนี้และวิธีเรียกใช้การสแกน CVE พื้นฐานกัน เอ็นจิ้นสคริปต์ Nmap ค้นหาการตอบสนอง HTTP เพื่อระบุ CPE สำหรับสคริปต์ที่กำหนด

การติดตั้ง

ในการติดตั้งสคริปต์ Nmap-vulners ให้ไปที่ไดเร็กทอรีสคริปต์ Nmap โดยใช้คำสั่งต่อไปนี้

cd /usr/share/nmap/scripts/

ขั้นตอนต่อไปคือการโคลนที่เก็บ git

git clone https://github.com/vulnersCom/nmap-vulners.git

หลังจากโคลนที่เก็บ git แล้ว คุณไม่จำเป็นต้องดำเนินการอื่นใดในการกำหนดค่า เครื่องมือจะถูกติดตั้งโดยอัตโนมัติ

  วิธีปรับแต่ง Touch Bar บน MacBook Pro

และถ้าคุณต้องการดูสคริปต์ NSE ที่มีอยู่ในฐานข้อมูล Nmap-vulners ให้ใช้คำสั่ง ls มันจะแสดงสคริปต์ส่วนขยาย .nse ทั้งหมดบนเทอร์มินัล

การใช้งาน

ใช้สคริปต์ NSE ได้ง่าย เพียงส่งอาร์กิวเมนต์ -script ไปยังคำสั่ง Nmap ของเราเพื่อสั่งสคริปต์ NSE ที่จะใช้

nmap -sV --script vulners [--script-args mincvss=<arg_val>] <target>

อย่าลืมส่งอาร์กิวเมนต์ “-sV” ขณะใช้สคริปต์ NSE Nmap-vulners จะไม่สามารถเข้าถึงฐานข้อมูล Vulners Exploit ได้ หากไม่ได้รับข้อมูลเวอร์ชันใดๆ จาก Nmap ดังนั้น พารามิเตอร์ -sV จึงจำเป็นตลอดเวลา

ตัวอย่างคำสั่ง

ไวยากรณ์ค่อนข้างตรงไปตรงมา เพียงเรียกสคริปต์ด้วยตัวเลือก “–script” และระบุเอ็นจิ้นช่องโหว่และเป้าหมายเพื่อเริ่มการสแกน

nmap -sV --script nmap-vulners/ <target>

หากคุณต้องการสแกนพอร์ตใดพอร์ตหนึ่ง ให้เพิ่มตัวเลือก “-p” ที่ส่วนท้ายของคำสั่ง และส่งหมายเลขพอร์ตที่คุณต้องการสแกน

nmap -sV --script nmap-vulners/ <target> -p80,223

Nmap – vuln

สคริปต์ NSE ถูกจัดประเภทตามชุดของหมวดหมู่ที่กำหนดไว้ล่วงหน้าซึ่งแต่ละสคริปต์เป็นของ การรับรองความถูกต้อง การออกอากาศ การดุร้าย การล่วงล้ำ มัลแวร์ ปลอดภัย เวอร์ชัน และช่องโหว่เป็นหมวดหมู่บางส่วน คุณสามารถค้นหาประเภทหมวดหมู่ทั้งหมดของสคริปต์ NSE และเฟสได้ ที่นี่.

สคริปต์ที่อยู่ในหมวดหมู่ “ช่องโหว่” จะค้นหาช่องโหว่ที่ทราบเฉพาะและรายงานกลับเฉพาะหากมีการระบุในระบบเป้าหมาย

nmap -sV --script vuln <target>

Nmap-vulscan

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

ปัจจุบัน มีฐานข้อมูลที่ติดตั้งไว้ล่วงหน้าดังต่อไปนี้:

  • Exploitdb.csv
  • osvdb.csv
  • securitytracker.csv
  • openvas.csv
  • scipvuldb.csv
  • xforce.csv
  • securityfocus.csv
  • cve.csv

การติดตั้ง

ในการติดตั้ง Vulscan ก่อนอื่น ให้ไปที่ไดเร็กทอรีสคริปต์ Nmap โดยใช้คำสั่งต่อไปนี้

cd /usr/share/nmap/scripts/

ขั้นตอนต่อไปคือการโคลนที่เก็บ git และติดตั้งข้อกำหนดทั้งหมด

git clone https://github.com/scipag/vulscan.git

ln -s `pwd`/scipag_vulscan /usr/share/nmap/scripts/vulscan 

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

cd vulscan/utilities/updater/

ถัดไป เปลี่ยนการอนุญาตของไฟล์ที่จะเรียกใช้ในระบบ

chmod +x updateFiles.sh

และสุดท้าย อัปเดตฐานข้อมูลการหาประโยชน์ด้วยคำสั่งด้านล่าง

 ./updateFiles.sh

การใช้งาน

ลองใช้ vulscan เพื่อทำการสแกนช่องโหว่ของ Nmap สคริปต์ vulscan NSE สามารถใช้ในลักษณะเดียวกับ nmap-vulners

nmap -sV --script vulscan <target>

โดยค่าเริ่มต้น Vulscan จะค้นหาฐานข้อมูลทั้งหมดพร้อมกัน ใช้เวลานานในการสืบค้นข้อมูลโดยใช้ฐานข้อมูลทั้งหมด การใช้พารามิเตอร์ vulscandb คุณสามารถส่งผ่านฐานข้อมูล CVE ได้ครั้งละหนึ่งฐานข้อมูลเท่านั้น

--script-args vulscandb=database_name

ตัวอย่างคำสั่ง

nmap -sV --script vulscan --script-args vulscandb=exploit.csv <target> -p 80,233

การสแกนช่องโหว่ส่วนบุคคล

การสแกนช่องโหว่แต่ละรายการสามารถทำได้โดยใช้สคริปต์เฉพาะในแต่ละหมวดหมู่ นี่คือรายการทั้งหมด 600+ สคริปต์ NSE และ 139 ห้องสมุด NSE.

  วิธีเพิ่มวิดเจ็ตลงในหน้าจอโฮมของ iPad บน iPadOS 14

ตัวอย่าง

  • http-csrf: สคริปต์นี้ตรวจพบช่องโหว่ Cross-Site Request Forgery (CSRF)
nmap -sV --script http-csrf <target>
  • http-sherlock: ตั้งใจที่จะใช้ประโยชน์จากช่องโหว่ “shellshock” ในเว็บแอปพลิเคชัน
nmap -sV --script http-sherlock <target>
  • http-slowloris-attack: สคริปต์นี้จะตรวจสอบเว็บเซิร์ฟเวอร์หรือระบบเป้าหมายโดยไม่เปิดการโจมตี DoS เพื่อหาช่องโหว่ในการโจมตี Slowloris DoS
nmap -sV --script http-slowloris-check <target>
  • http-vmware-path-vuln: VMWare ESX, ESXi และ Server ทั้งหมดได้รับการทดสอบหาช่องโหว่ในการข้ามเส้นทาง
nmap -sV --script http-vmware-path-vuln <target>
  • http-passwd: พยายามดึงข้อมูล /etc/passwd หรือ boot.ini เพื่อดูว่าเว็บเซิร์ฟเวอร์มีความเสี่ยงต่อการข้ามผ่านไดเรกทอรีหรือไม่
nmap -sV --script http-passwd <target>
  • http-internal-ip-disclosure: เมื่อส่งคำขอ HTTP/1.0 โดยไม่มีส่วนหัวของโฮสต์ การตรวจสอบนี้จะกำหนดว่าเว็บเซิร์ฟเวอร์รั่วที่อยู่ IP ภายในหรือไม่
nmap -sV --script http-internal-ip-disclosure <target>
  • http-vuln-cve2013-0156: ตรวจจับเซิร์ฟเวอร์ Ruby บน Rails ที่เสี่ยงต่อการโจมตี DOS และการฉีดคำสั่ง
nmap -sV --script http-vuln-cve2013-0156 <target-address>

และสุดท้าย นี่คือรายการของสคริปต์ NSE ทั้งหมดที่อยู่ภายใต้ “vuln” หมวดหมู่.

ระบบของคุณสามารถตรวจจับการสแกน Nmap ได้หรือไม่?

การลาดตระเวนเป็นขั้นตอนแรกในการทดสอบการแฮ็กและการเจาะข้อมูลอย่างมีจริยธรรม แฮกเกอร์ใช้ขั้นตอนการลาดตระเวนเพื่อค้นหาข้อบกพร่องและช่องโหว่ในระบบเพื่อโจมตี ดังนั้นระบบป้องกันควรจะสามารถตรวจจับพวกมันได้

  12 แอพที่พ่อแม่สุนัขทุกคนต้องดาวน์โหลด

คุณจะได้รับการแจ้งเตือนหากคุณใช้เครื่องมือ SIEM (ข้อมูลความปลอดภัยและการจัดการเหตุการณ์) ไฟร์วอลล์ และมาตรการป้องกันอื่นๆ และนี่คือรายการเครื่องมือ SIEM ที่ดีที่สุดในการรักษาความปลอดภัยให้กับธุรกิจและองค์กรของคุณจากการโจมตีทางไซเบอร์ เครื่องมือเหล่านี้ยังช่วยในการบันทึกการสแกน Nmap การสแกนช่องโหว่นั้นคุ้มค่า เนื่องจากการระบุตัวตนตั้งแต่เนิ่นๆ สามารถป้องกันความเสียหายต่อระบบในอนาคตได้

บทสรุป

ฉันหวังว่าคุณจะพบว่าบทความนี้มีประโยชน์มากในการเรียนรู้วิธีใช้ Nmap สำหรับการสแกนช่องโหว่

คุณอาจสนใจที่จะเรียนรู้รายการ Open Source Web Security Scanners เพื่อค้นหาช่องโหว่

เรื่องล่าสุด

x