বাগ বাউন্টির জন্য অ্যাডভান্সড Nmap
অ্যাডভান্সড পোর্ট স্ক্যানিং
অ্যাডভান্সড পোর্ট স্ক্যানিং: প্রথম ধাপ
বাগ বাউন্টি হান্টিংয়ের জন্য শুধু সাধারণ TCP কানেক্ট স্ক্যান যথেষ্ট নয়। দ্রুত এবং কার্যকরভাবে তথ্য সংগ্রহ করতে হলে সার্ভারের লগ ফাইলে কম চিহ্ন রেখে কাজ করতে হয়। এখানেই Nmap-এর অ্যাডভান্সড স্ক্যানিং কৌশলগুলো কাজে আসে। যেহেতু আপনি SOC পরিবেশে কাজ করেছেন, তাই আপনি জানেন যে প্রতিটি নেটওয়ার্ক অ্যাকশনই লগ হতে পারে। তাই আমাদের লক্ষ্য হলো প্রয়োজনীয় তথ্য বের করা, কিন্তু যতটা সম্ভব নীরবে।
এই পর্যায়ে আমরা সাধারণ TCP কানেকশন এড়িয়ে স্টিলথ স্ক্যান, ইউডিপি স্ক্যান এবং নির্দিষ্ট পোর্ট রেঞ্জ টার্গেট করার পদ্ধতি শিখব। শুরু করা যাক দিয়ে, যা নেটওয়ার্ক রিকনে একটি অপরিহার্য কৌশল।
TCP কানেক্ট বনাম SYN স্ক্যান
সাধারণত, যখন আমরা একটি পোর্টের অবস্থা পরীক্ষা করি, তখন Nmap একটি সম্পূর্ণ TCP কানেকশন তৈরি করে। একে বলা হয় TCP কানেক্ট স্ক্যান (-sT)। এই প্রক্রিয়াটি অনেকটা ফোনে কাউকে কল করার মতো। আপনি কল করেন (SYN), অপর প্রান্ত থেকে হ্যালো বলে (SYN-ACK), এবং আপনি নিজের পরিচয় দিয়ে কথা শুরু করেন (ACK)। এই পুরো কথোপকথনটি ফোনের লগ বুকে রেকর্ড থাকে।
অন্যদিকে, SYN স্টিলথ স্ক্যান (-sS) আরও চতুর। এটি কল করে অপর প্রান্ত থেকে 'হ্যালো' শোনার পরই লাইন কেটে দেওয়ার মতো। আপনি নিশ্চিত হলেন যে সেখানে কেউ আছে, কিন্তু সম্পূর্ণ কথোপকথন হলো না। যেহেতু সম্পূর্ণ কানেকশন তৈরি হয় না, তাই অনেক সিস্টেম এই অ্যাক্টিভিটি লগ করে না। বাগ বাউন্টিতে এটি অত্যন্ত কার্যকর, কারণ এটি টার্গেট সিস্টেমে কম নয়েজ তৈরি করে।
# TCP Connect Scan (Loud)
nmap -sT target.com
# SYN Stealth Scan (Quieter)
# Note: Requires root/administrator privileges
nmap -sS target.com
SYN স্ক্যান ব্যবহার করার জন্য আপনার সিস্টেমে রুট বা অ্যাডমিনিস্ট্রেটর প্রিভিলেজ প্রয়োজন, কারণ এটি র প্যাকেটের মাধ্যমে কাজ করে, যা অপারেটিং সিস্টেমের বিশেষ অনুমতি ছাড়া সম্ভব নয়।
পোর্ট ও প্রোটোকল নির্দিষ্ট করা
সবসময় সব পোর্ট স্ক্যান করার প্রয়োজন হয় না। এতে সময়ও বেশি লাগে এবং অপ্রয়োজনীয় লগ তৈরি হয়। বাগ বাউন্টির সময় প্রায়ই আমরা নির্দিষ্ট কিছু সার্ভিসের দিকে মনোযোগ দিই। Nmap-এ -p ফ্ল্যাগ ব্যবহার করে আমরা নির্দিষ্ট পোর্ট বা পোর্টের রেঞ্জ স্ক্যান করতে পারি।
# শুধুমাত্র পোর্ট 80 এবং 443 স্ক্যান করা
nmap -sS -p 80,443 target.com
# 1 থেকে 1024 পর্যন্ত সব পোর্ট স্ক্যান করা
nmap -sS -p 1-1024 target.com
শুধু TCP পোর্টই নয়, পোর্ট স্ক্যান করাও জরুরি। অনেক গুরুত্বপূর্ণ সার্ভিস যেমন DNS (পোর্ট 53) এবং SNMP (পোর্ট 161) ইউডিপি ব্যবহার করে। তবে ইউডিপি স্ক্যানিং ধীর এবং কিছুটা কম নির্ভরযোগ্য হতে পারে, কারণ এই প্রোটোকলটি কানেকশনবিহীন। একটি পোর্ট খোলা, বন্ধ, নাকি ফায়ারওয়াল দ্বারা ফিল্টার করা, তা বোঝা কঠিন হতে পারে।
# সাধারণ কিছু UDP পোর্ট স্ক্যান করা
nmap -sU --top-ports 20 target.com
স্ক্যান কৌশলগুলোর তুলনা
সঠিক স্ক্যান কৌশল বেছে নেওয়া আপনার লক্ষ্যের উপর নির্ভর করে। গতি, নির্ভুলতা এবং স্টিলথ—এই তিনটি বিষয়ের মধ্যে একটি ভারসাম্য খুঁজে বের করতে হয়।
| স্ক্যান টাইপ | কমান্ড | সুবিধা | অসুবিধা |
|---|---|---|---|
| TCP Connect | -sT | নির্ভরযোগ্য, প্রিভিলেজ লাগে না | খুব নয়েজি, সহজেই শনাক্ত করা যায় |
| SYN Stealth | -sS | স্টিলথি, দ্রুত | রুট প্রিভিলেজ প্রয়োজন |
| UDP Scan | -sU | গুরুত্বপূর্ণ নন-TCP সার্ভিস খুঁজে বের করে | ধীর, ফলস পজিটিভ/নেগেটিভ হতে পারে |
| Fast Scan | -F | অত্যন্ত দ্রুত | শুধুমাত্র ১০০টি সাধারণ পোর্ট স্ক্যান করে |
এই কৌশলগুলো ব্যবহার করে আপনি বাগ বাউন্টির প্রাথমিক ধাপে অনেক মূল্যবান তথ্য সংগ্রহ করতে পারেন। পরবর্তী ধাপে আমরা দেখব কীভাবে Nmap স্ক্রিপ্টিং ইঞ্জিন (NSE) ব্যবহার করে ভালনারেবিলিটি খুঁজে বের করা যায়।
এবার আপনার জ্ঞান পরীক্ষা করার পালা।
বাগ বাউন্টি হান্টিংয়ে TCP কানেক্ট স্ক্যান (-sT)-এর চেয়ে SYN স্টিলথ স্ক্যান (-sS) বেশি পছন্দের কারণ কী?
কেন TCP পোর্টের পাশাপাশি UDP পোর্ট স্ক্যান করাও জরুরি?
