space
space
space
 
มีนาคม 2562
 
 12
3456789
10111213141516
17181920212223
24252627282930
31 
space
space
14 มีนาคม 2562
space
space
space

โปรแกรม Nmap

Nmap คืออะไร

Nmap ย่อมาจาก Network Mapper สร้างขึ้นโดยคุณ Gordon Lyons (มีนามสมมติอีกชื่อหนึ่งเป็นภาษารัสเซียว่า Fyodor Vaskovich) เป็น software ที่เกี่ยวข้องกับทางด้าน Network security ที่ได้รับความนิยมเป็นอย่างสูง และถูกนำไปใช้กันอย่างแพร่หลายโดยเฉพาะผู้ที่ทำงานในด้านการดูแลระบบเครือข่ายและระบบความมั่นคงปลอดภัย เริ่มแรกนั้น Nmap ถูกพัฒนาขึ้นสำหรับ Linux OS  เพื่อใช้ในการค้นหาและสร้างรูปแบบการเชื่อมต่อระหว่างอุปกรณ์ภายในระบบเครือข่ายเป็นหลัก แต่ต่อมาได้ถูกพัฒนาให้มีความสามารถในการค้นหาบริการที่เปิดใช้งานอยู่บนระบบคอมพิวเตอร์ ปัจจุบัน Nmap ถูกพัฒนาให้สามารถใช้งานได้บนแทบทุกระบบปฏิบัติการที่นิยมใช้กันในปัจจุบัน ไม่ว่าจะเป็น Windows, Linux, Mac OS หรือแม้กระทั่งระบบปฏิบัติการสำหรับอุปกรณ์พกพาอย่างเช่น Android จึงทำให้ Nmap เป็นตัวเลือกแรก ๆ ในบรรดาซอฟต์แวร์ประเภท Network security scanner

ความสามารถโดยทั่วไปของ Nmap
Host Discovery คือ การค้นหาอุปกรณ์ที่กำลังทำงานอยู่ในระบบเครือข่ายเป้าหมาย เป็นความสามารถเริ่มแรกของ software ก่อนถูกพัฒนาต่อให้มีความสามารถเพิ่มขึ้น
Port Scanning คือ การตรวจสอบพอร์ตที่เปิดใช้งานอยู่บนระบบเป้าหมาย เพื่อนำไปหมายเลขพอร์ตที่ได้ไปค้นหาต่อว่าระบบดังกล่าวเปิด service อะไรบ้าง เป็นความสามารถที่นิยมใช้งานมากที่สุด
Operating System / Service Version Detection คือ การตรวจสอบเวอร์ชันของระบบปฏิบัติการและบริการที่เปิดใช้งานบนระบบเป้าหมาย
Script Scanning คือ การใช้สคริปต์เพื่อเพิ่มความสามารถของ Nmap ในการทำงานด้านอื่น ๆ โดยทั่วไปจะเกี่ยวข้องกับการตรวจสอบความมั่นคงปลอดภัยของระบบ
เทคนิคของ Port scanning ที่นิยมใน Nmap
The TCP SYN (Half Open) scans เทคนิคนี้บางครั้งถูกเรียกว่า half open เพราะว่าระบบที่ทำการโจมตีไม่ได้ปิดการเชื่อมต่อที่ได้เปิดไว้ scanner จะส่ง SYN packet ไปยังเป้าหมายและรอการตอบสนอง ถ้าพอร์ตถูกเปิดไว้เป้าหมายก็จะส่ง SYN/ACK กลับมา แต่ถ้าพอร์ตถูกปิดอยู่ เป้าหมายก็จะส่ง RST กลับมา วิธีการ scan รูปแบบนี้ยากต่อการตรวจจับ ปกติเครื่องที่เป็นเป้าหมายจะทำหน้าที่ปิดการเชื่อมต่อที่เปิดไว้ และส่วนใหญ่จะไม่มีระบบการบล็อกที่เหมาะสมในการตรวจจับการ scan ชนิดนี้
 
รูปที่ 1.1 การ scan แบบ half open ที่ port ถูกเปิดใช้งาน
รูป 1.1 การ scan แบบ half open ที่ port ถูกเปิดใช้งาน


รูป 1.2 ทดสอบใช้โปรแกรม wireshark ตรวจสอบ packet          


แต่ถ้าพอร์ตถูกปิดอยู่ เป้าหมายก็จะส่ง RST กลับมา ดังรูป


รูป 1.3 การ scan แบบ half open ที่ port ถูกปิดใช้งาน


รูป 1.4 ทดสอบใช้โปรแกรม wireshark ตรวจสอบ packet 

วิธีการ scan รูปแบบนี้ยากต่อการตรวจจับ ปกติเครื่องที่เป็นเป้าหมายจะทำหน้าที่ปิดการเชื่อมต่อที่เปิดไว้ และส่วนใหญ่จะไม่มีระบบการบล็อกที่เหมาะสมในการตรวจจับการ scan ชนิดนี้
 
The TCP FIN scan เทคนิคนี้สามารถที่จะทะลุผ่าน Firewall ส่วนใหญ่, packet filters , และโปรแกรมตรวจจับการ scan ไปได้โดยไม่ถูกตรวจพบ เพราะระบบที่ทำการโจมตีจะส่ง FIN packets ไปยังระบบของเป้าหมาย สำหรับพอร์ตต่างๆ ที่ปิดอยู่จะตอบสนองกลับไปด้วย RST ส่วนพอร์ตที่เปิดจะไม่สนใจ packets เหล่านั้นเลย ดังนั้นเครื่องที่ทำการโจมตีก็จะได้ข้อมูลว่ามันได้รับ RST จากพอร์ตไหนบ้างและไม่ได้ RST จากพอร์ตไหนบ้าง 


รูป 2.1 การ scan แบบ FIN scan ที่ port ถูกปิดใช้งาน



รูป 2.2 ทดสอบใช้โปรแกรม wireshark ตรวจสอบ packet


รูป 2.3 การ scan แบบ FIN scan ที่ port ถูกเปิดใช้งาน


รูป 2.4 ทดสอบใช้โปรแกรม wireshark ตรวจสอบ packet

The TCP NULL scan เทคนิคนี้จะส่ง TCP packet ที่มี sequence number แต่ไม่มี flag ออกไปยังเครื่องเป้าหมาย ถ้าพอร์ตปิดอยู่จะส่ง กลับมา RST packet กลับมา แต่ถ้าพอร์ตเปิดอยู่ ก็จะไม่สนใจ packet นั้นเลย


รูป 3.1 การ scan แบบ Null scan ที่ port ถูกปิดใช้งาน


รูป 3.2 ทดสอบใช้โปรแกรม wireshark ตรวจสอบ packet


รูป 3.3 การ scan แบบ Null scan ที่ port ถูกเปิดใช้งาน


รูป 3.4 ทดสอบใช้โปรแกรม wireshark ตรวจสอบ packet

The TCP XMAS ถูกใช้เพื่อหาพอร์ตบนเครื่องเป้าหมายที่อยู่ในสถานะ listening โดยจะส่ง TCP packet ที่มี flag เป็น URG, PSH และ FIN ใน TCP header ไปยังพอร์ตของเครื่องเป้าหมาย ถ้าพอร์ต TCP ของเครื่องเป้าหมายปิดอยู่ พอร์ตนั้นก็จะส่ง RST กลับมา แต่ถ้าพอร์ตเปิดอยู่ก็จะไม่สนใจ packet นั้นเลย


รูป 4.1 การ scan แบบ XMAS scan ที่ port ถูกปิดใช้งาน


รูป 4.2 ทดสอบใช้โปรแกรม wireshark ตรวจสอบ packet


รูป 4.3 การ scan แบบ XMAS scan ที่ port ถูกเปิดใช้งาน


รูป 4.4 ทดสอบใช้โปรแกรม wireshark ตรวจสอบ packet

การป้องกัน Nmap
1.ติดตั้ง Personal Firewall บนเครื่องคอมพิวเตอร์ที่ต้องการป้องกัน แล้วทำการ set rule ให้ inbound traffic เป็น deny all
2.ป้องกันไม่ให้บุคคลภายนอกองค์กรสามารถใช้งานระบบเครือข่ายได้ เช่นการทำ port security เป็นต้น
3.ทำการปิดพอร์ตและบริการต่างๆที่ไม่ได้ใช้งาน ตรวจสอบไฟล์ /etc/inetd.conf, /etc/init.d และไฟล์ run control บนระบบอย่างสม่ำเสมอเพื่อค้นหาบริการที่ไม่จำเป็น
4.ใช้โปรแกรม TCP Wrappers ซึ่งช่วยให้ผู้ดูแลสามารถกำหนดการอนุญาตหรือปฏิเสธการเข้าถึงบริการต่าง ๆ โดยอ้างอิงถึง IP addresses หรือ domain names โดยทำงานร่วมกับไฟล์ /etc/inetd.conf
5.ใช้โปรแกรม PortSentry ผลิตโดย Psionic สำหรับ PortSentry นั้นจะตรวจจับการเชื่อมต่อที่ร้องขอเข้ามาที่พอร์ตจำนวนหนึ่ง และสามารถตั้งค่าให้ไม่ต้องสนใจการร้องขอเข้ามาได้ โดยผู้ดูแลระบบสามารถเลือกว่าจะให้ PortSentry สนใจการเชื่อมต่อเข้ามาที่พอร์ตไหนและจะปฏิเสธการร้องขอไหนบ้าง  

อ้างอิง
https://www.thaicert.or.th/papers/technical/2013/pa2013te001.html
https://www2.thaiadmin.org/board/index.php?topic=12654.0&fbclid=IwAR1xXYe0A-scaS9Nr2O0gGH6z6xQn1x1hKhc3dTxiSD5I_aTo_Whzyh-Ncg
https://www.tnetsecurity.com/content_audit/scan_port.php?fbclid=IwAR1Fpung_h8yhmRlYXOLHX1-pBLw9ez26bXTCB0xwm-euF-R7a5B1qjSBiQ 




 

Create Date : 14 มีนาคม 2562
0 comments
Last Update : 14 มีนาคม 2562 12:38:05 น.
Counter : 3747 Pageviews.

ชื่อ :
Comment :
  *ใช้ code html ตกแต่งข้อความได้เฉพาะสมาชิก
 

space

สมาชิกหมายเลข 5184305
Location :


[ดู Profile ทั้งหมด]

ฝากข้อความหลังไมค์
Rss Feed
ผู้ติดตามบล็อก : 1 คน [?]






space
space
[Add สมาชิกหมายเลข 5184305's blog to your web]
space
space
space
space
space