هنر بازجویی از سرورها!
شناخت، نصف مسیر پیروزی است!
🕶️وقتی سرورها خودشان را لو میدهند!
سلام به همه تکودمیایهای عزیز و علاقهمندان به امنیت شبکه! تا حالا شده جلوی یک خانه بایستید و بدون اینکه وارد شوید، بفهمید صاحبخانه کیست، چه سیستم امنیتی دارد و حتی پستچی چه بستهای برایش آورده؟ در دنیای شبکه و هک قانونمند، به این کار Banner Grabbing میگوییم.
این تکنیک دقیقاً همان جایی است که متخصصان امنیت (و البته هکرها) کارشان را شروع میکنند. ما میخواهیم بفهمیم روی سرور هدف چه خبر است؟ چه نرمافزاری نصب است؟ نسخهاش چند است؟
بیایید با هم شیرجه بزنیم در دنیای شناسایی سرویسها یا همان OS Discovery و ببینیم چطور میتوانیم مچ سرورها را بگیریم!
💥Banner Grabbing دقیقاً چطور کار میکند؟
کل داستان خیلی ساده اما هوشمندانه است. این پروسه سه مرحله اصلی دارد که شبیه یک مکالمه مودبانه (اما با نیتهای خاص!) است:
- ارسال درخواست (The Knock): ابزارهای ما یک “تقتق” به درِ سرور میزنند. این میتواند یک درخواست HTTP، FTP یا Telnet باشد.
- دریافت پاسخ (The Banner): سرور که معمولاً خیلی مودب است، پاسخ میدهد. مثلاً میگوید: «سلام! من وبسرور آپاچی نسخه ۲.۴.۴۹ هستم». به این پیام خوشآمدگویی، بَنر (Banner) میگوییم.
- تحلیل اطلاعات (The Analysis): حالا ما میدانیم با چه کسی طرفیم. اگر نسخه نرمافزار قدیمی باشد، یعنی باگهای امنیتی شناختهشدهای دارد که میتوانیم از آنها استفاده کنیم.
✅ابزارهای پایه برای شروع کار
برای این مکالمه، ما به ابزار نیاز داریم. معروفترینهایشان اینها هستند:
- Netcat (چاقوی سوئیسی): یک ابزار ساده اما فوقالعاده قدرتمند برای برقراری ارتباط خام با پورتها.
- Nmap (سلطان اسکن): اگر بخواهیم حرفهای و پیشرفته کار کنیم، Nmap بهترین دوست ماست.
- Telnet (پیرمرد باتجربه): قدیمی است، اما هنوز هم برای گرفتن سریع بنرها جواب میدهد.
🤷♂️انواع Banner Grabbing: اکتیو یا پسیو؟ مسئله این است!
مثل هر کار دیگری در امنیت، اینجا هم دو روش داریم: یکی پر سروصدا و یکی ساکت و مرموز.
🤸۱. روش فعال (Active Banner Grabbing)
در این روش، ما مستقیماً یقه سرور را میگیریم و میپرسیم “تو کی هستی؟”.
- ابزارها یا اسکریپتهای ما مستقیماً پکت (بسته) به سرور میفرستند.
- مزایا: دقت بسیار بالا. ما دقیقاً میفهمیم چه سرویسی با چه ورژنی در حال اجراست.
- معایب: ریسک لو رفتن بالاست! فایروالها و سیستمهای IDS/IPS سریع میفهمند که دارید سرک میکشید. همچنین ممکن است بار روی سرور ایجاد کنید.
- مثال خفن: استفاده از Nmap برای فرستادن یک درخواست مستقیم به پورت ۸۰.
😴۲. روش غیرفعال (Passive Banner Grabbing)
اینجا ما نقش کارآگاه مخفی را بازی میکنیم. به سرور دست نمیزنیم، فقط گوش میدهیم.
- ما ترافیکی که در حال عبور از شبکه است را شنود (Sniff) و تحلیل میکنیم. هیچ درخواستی مستقیماً به سرور هدف ارسال نمیشود.
- مزایا: کاملاً مخفیانه! احتمال شناسایی شدن شما تقریباً صفر است چون با سرور تعاملی ندارید.
- معایب: اطلاعات ممکن است ناقص باشد. اگر ترافیکی رد و بدل نشود، شما هم چیزی نمیفهمید. نیاز به دسترسی خاص به شبکه و ابزارهایی مثل Wireshark دارید.
- نتیجهگیری: اگر دقت میخواهید، اکتیو باشید. اگر امنیتِ خودتان مهم است، پسیو بمانید.
🎃مراحل عملی: چطور یک بنر را بقاپیم؟
بیایید دست به آچار شویم. مراحل کلی به این صورت است:
- شناسایی هدف: اول IP یا دامنه قربانی (یا بهتر بگوییم، هدف تست) را پیدا کنید.
- انتخاب پروتکل: سرویس وب است؟ (HTTP). ایمیل است؟ (SMTP). انتقال فایل است؟ (FTP). پروتکل مناسب را انتخاب کنید.
- شلیک نهایی: ابزار را اجرا کنید.
یک مثال واقعی با Nmap
فرض کنید میخواهیم بفهمیم روی IP ۱۹۲.۱۶۸.۱.۱ چه خبر است و چه نسخههایی نصب شده. دستور جادویی ما این است:
nmap -sV 192.168.1.1
- توضیح: سوییچ
-sVمخفف Service Version است. یعنی “انمپ جان، فقط نگو پورت باز است، بگو چه نسخهای پشتش نشسته!”
🦄ابزار خاص و سریع Unicornscan
خسته شدید از کندی اسکنرهای معمولی؟ وقتش رسیده با Unicornscan آشنا شوید. این ابزار برای سرعت و شبکههای بزرگ ساخته شده است. برخلاف Nmap که خیلی باکلاس و دقیق است، یونیکورن مثل یک مسلسل عمل میکند!
چرا Unicornscan خفن است؟
- چند نخی (Multithreaded): همزمان هزاران پورت را چک میکند.
- دو زیست: هم TCP و هم UDP را مثل آب خوردن اسکن میکند.
- تستهای توزیعشده: برای شبکههای غولپیکر عالی است.
نصب و راهاندازی
اگر لینوکس (دبیان/کالی) دارید، با این دستور نصبش کنید:
sudo apt-get install unicornscan
دستورات کاربردی Unicornscan که باید بلد باشید:
- اسکن تمام پورتهای TCP (همه را بریز روی دایره):
unicornscan -mT [IP-Target]
اسکن پورتهای UDP (برای سرویسهای خاص):
unicornscan -mU [IP-Target]
اسکن پورتهای خاص (مثلاً فقط وب):
unicornscan -mT -p 80,443 [IP-Target]
ذخیره نتیجه در فایل (برای گزارشدهی):
unicornscan -i eth0 -mT [IP-Target] > result.txt
🧙♂️جادوی Nmap Script Engine (NSE)
اگر فکر میکنید Nmap فقط یک پورت اسکنر است، سخت در اشتباهید! با قابلیت NSE، این ابزار تبدیل به یک پلتفرم کامل تست نفوذ میشود.
NSE به شما اجازه میدهد اسکریپتهای نوشته شده به زبان Lua را اجرا کنید تا کارهای پیچیدهای مثل کشف آسیبپذیری، بروتفورس و شناسایی پیشرفته را انجام دهید.
دستهبندی اسکریپتهای NSE:
- Auth: چک کردن رمزهای عبور ضعیف یا دیفالت.
- Discovery: اطلاعات عمیقتر از شبکه.
- Vuln: گشتن به دنبال حفرههای امنیتی معروف.
- Exploit: حتی تلاش برای نفوذ (با احتیاط استفاده کنید!).
چطور از NSE استفاده کنیم؟
فرمول کلی ساده است: nmap --script [نام اسکریپت] [هدف]
چند مثال “خفن” و کاربردی:
- پیدا کردن حفرههای امنیتی در SSH:
nmap –script ssh-vuln-idgen 192.168.1.5
این دستور چک میکند آیا SSH سرور هدف امن است یا نه.
- اجرای تمام اسکریپتهای مربوط به آسیبپذیری HTTP:
nmap –script http-vuln* example.com
با گذاشتن ستاره (*)، هر چه اسکریپت مربوط به باگهای وب است اجرا میشود.
- اسکن کامل آسیبپذیریها (حالت وحشی):
nmap –script vuln 192.168.1.1
این دستور تمام اسکریپتهای دسته Vuln را روی هدف اجرا میکند. مراقب باشید چون سروصدا زیاد دارد!
👍حرف آخر
دوستان، Banner Grabbing دروازه ورود به دنیای تست نفوذ است. چه با روشهای اکتیو و ابزارهایی مثل Nmap و Unicornscan کار کنید، چه با روشهای پسیو و شنود شبکه، هدف یک چیز است: اطلاعات قدرت است.
فقط یادتان باشد، ابزارها مثل چاقو هستند؛ هم میتوان با آنها جراحی کرد و جان نجات داد (امنیت)، و هم میتوان آسیب زد. همیشه اخلاقی و با اجازه قبلی تست کنید.