Nmap (Network Mapper) কী?
Nmap (Network Mapper) হলো גורডন লায়ন (Fyodor) তৈরি একটি ফ্রি, ওপেন-সোর্স নেটওয়ার্ক ডিসকভারি ও সিকিউরিটি অডিটিং টুল। এটি প্যাকেট পাঠিয়ে ও প্রতিক্রিয়া বিশ্লেষণ করে হোস্ট, সার্ভিস, OS, ফায়ারওয়াল রুলস ও ভালনারেবিলিটি শনাক্ত করে। সিস্টেম অ্যাডমিন, নেটওয়ার্ক ইঞ্জিনিয়ার, পেনট্রেশন টেস্টার ও সিকিউরিটি রিসার্চারের অপরিহার্য টুল।
Nmap-এর মূল ক্ষমতা (Core Capabilities)
- হোস্ট ডিসকভারি (Host Discovery): কোনো নেটওয়ার্কে কোন হোস্টগুলো আপ/আলাইভ
- পোর্ট স্ক্যানিং (Port Scanning): TCP/UDP পোর্ট(open, closed, filtered) শনাক্তকরণ
- সার্ভিস/ভার্সন ডিটেকশন: খোলা পোর্টে কোন সার্ভিস (Apache, SSH, RDP) চলছে এবং তার ভার্সন
- OS ফিংগারপ্রিন্টিং: TCP/IP স্ট্যাক বিশ্লেষণ করে টার্গেট OS অনুমান
- NSE (Nmap Scripting Engine): ৬০০+ লুয়া স্ক্রিপ্ট দিয়ে ভালনারেবিলিটি ডিটেকশন, এক্সপ্লয়েটেশন, ব্রুটফোর্স
- ফায়ারওয়াল/IDS ইভেশন: ফ্র্যাগমেন্টেশন, ডিকয়, টাইমিং কন্ট্রোল, সোর্স পোর্ট ম্যানিপুলেশন
- আউটপুট ফরম্যাট: নরমাল, XML (-oX), Greppable (-oG), JSON (-oJ) — অটোমেশন/রিপোর্টিং-ফ্রেন্ডলি
Nmap কীভাবে নেটওয়ার্ক সিকিউরিটিতে সাহায্য করে (Blue Team / Defensive)
- নেটওয়ার্ক ইনভেন্টরি ও এসেট ম্যানেজমেন্ট: কোন ডিভাইসগুলো নেটওয়ার্কে আছে, কী সার্ভিস চলছে — CMDB আপডেট করতে সাহায্য করে
- অনঅথরাইজড ডিভাইস/সার্ভিস ডিটেকশন: রগ ডিভাইস, শ্যাডো আইটি, অনাকাঙ্ক্ষিত খোলা পোর্ট শনাক্ত করা
- ভালনারেবিলিটি অ্যাসেসমেন্ট: NSE স্ক্রিপ্টস (vuln, auth, exploit ক্যাটাগরি) দিয়ে নন-ইন্ট্রুসিভ ভালনারেবিলিটি চেক
- ফায়ারওয়াল রুলস ভেরিফিকেশন: কোন পোর্ট/সার্ভিস এক্সপোজড আছে কিনা যাচাই
- নেটওয়ার্ক সেগমেন্টেশন যাচাই: VLAN/জোন আলাদা করা হয়েছে কিনা টেস্ট করা
- কমপ্লায়েন্স অডিট: PCI-DSS, HIPAARequirement (যেমন: পোর্ট ২২, ৩৩৮৯ এক্সপোজড নেই) যাচাই
- বেসলাইন স্থাপন: নরমাল নেটওয়ার্ক স্টেট বেসলাইন করে পরবর্তী স্ক্যানে পরিবর্তন ডিটেক্ট করা
সাধারণ Nmap কমান্ড ও ইউজ কেস (সিকিউরিটি অডিটিং-ফোকাসড)
| কমান্ড | বর্ণনা | ব্যবহার |
|---|---|---|
nmap -sn 192.168.1.0/24 | পিং স্ক্যান (হোস্ট ডিসকভারি, পোর্ট স্ক্যান না) | কত ডিভাইস আপ তা জানতে |
nmap -sS -T4 192.168.1.0/24 | TCP SYN স্ক্যান (স্টেলথ, দ্রুত) | সাধারণ পোর্ট স্ক্যান |
nmap -sV -sC 192.168.1.100 | ভার্সন ডিটেকশন + ডিফল্ট NSE স্ক্রিপ্ট | সার্ভিস এনামারেশন |
nmap -O 192.168.1.100 | OS ডিটেকশন | টার্গেট OS জানতে |
nmap -p- -T4 192.168.1.100 | সকল ৬৫৫৩৫ পোর্ট স্ক্যান | কম্প্রিহেনসিভ স্ক্যান |
nmap --script vuln 192.168.1.100 | ভালনারেবিলিটি NSE স্ক্রিপ্ট রান | ভালনারেবিলিটি স্ক্যান |
nmap -sU --top-ports 100 192.168.1.100 | UDP টপ ১০০ পোর্ট স্ক্যান | UDP সার্ভিস ডিটেকশন |
nmap -f -D RND:10 192.168.1.100 | ফ্র্যাগমেন্টেশন + ডিকয় (IDS ইভেশন) | ফায়ারওয়াল টেস্টিং |
Nmap আউটপুট পার্সিং / অটোমেশন
# XML আউটপুট → পাইথন/অন্যান্য টুলে পার্স
nmap -oX scan.xml -sV 192.168.1.0/24
# Greppable আউটপুট → কমান্ড লাইন ফিল্টারিং
nmap -oG scan.gnmap -sV 192.168.1.0/24
grep "Ports:" scan.gnmap | grep "open"
# Ndiff: দুটি স্ক্যান তুলনা (চ_change detection)
ndiff scan1.xml scan2.xml
Nmap-এর সীমাবদ্ধতা ও রিস্ক
- নেটওয়ার্ক ডাউন করতে পারে: আগ্রাসী স্ক্যান (-T5, -p-) পুরানো ডিভাইস/ফায়ারওয়াল ক্র্যাশ করতে পারে
- আইনি রিস্ক: অনুমতি ছাড়া স্ক্যান করা অনেক দেশে আইনত নিষিদ্ধ (USA: CFAA, UK: Computer Misuse Act, বাংলাদেশ: ICT Act)
- ফালস পজিটিভ/নেগেটিভ: ফায়ারওয়াল/IDS ফিল্টারিং কারণে ভুল ফলাফল আসতে পারে
- শুধু স্ক্যানার: এক্সপ্লয়েট করে না (Metasploit/Cobalt Strike-এর সাথে কম্বাইন করতে হয়)
Nmap থেকে রক্ষা পাওয়ার উপায় (Defensive Measures)
- রেট লিমিটিং / থ্রটলিং: ফায়ারওয়াল/IDS-এ SYN ফ্লাড প্রোটেকশন, কানেকশন রেট লিমিট
- পোর্ট নকিং / SPA (Single Packet Authorization): fwknop, knockd
- হোস্ট-বেসড ফায়ারওয়াল: অপ্রয়োজনীয় পোর্ট বন্ধ রাখুন (ufw, Windows Firewall, iptables/nftables)
- IDS/IPS রুলস: Suricata/Snort রুলস Nmap সিগনেচার ডিটেক্ট করার জন্য
- হানিপট / ডিসেপশন টেকনোলজি: ফেক সার্ভিস/পোর্ট খুলে আক্রমণকারী ফাঁসান
- নেটওয়ার্ক সেগমেন্টেশন: ল্যাটারাল মুভমেন্ট লিমিট করা
সার্টিফিকেশন ও লার্নিং রিসোর্স
- Nmap Network Exploration and Security Auditing (Official Book) — Fyodor著
- Nmap.org — অফিসিয়াল ডকুমেন্টেশন, NSE ডক, চিটশিট
- TryHackMe "Nmap" Room — ইন্টারঅ্যাক্টিভ ল্যাব
- Hack The Box / Proving Grounds — রিয়েলিস্টিক প্র্যাকটিস
Nmap শুধু একটি পোর্ট স্ক্যানার নয়—এটি একটি শক্তিশালী নেটওয়ার্ক ইন্টেলিজেন্স টুল। সঠিক হাতে থাকলে এটি নেটওয়ার্ক সিকিউরিটি বাড়াতে অপরিহার্য; ভুল হাতে থাকলে ক্ষতিকর। সবসময় লিখিত অনুমতিতে স্ক্যান করুন।