- NetBIOS چيست؟
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 Me, Win 2000, or WinXP
اين خروجي اعلام ميکند که پورت ۱۳۹ باز است. پس ميشود از اين ip استفاده کرد.
۲- حالا ميخوام با اين پورت ارتباط برقرار کنم. اصولا بايد مثل سابق از telnet يا nc استفاده کنم ولي در مورد پورت ۱۳۹ روش ارتباطي فرق ميکند. کامنت پرامت را باز کرده و دستور زير را مينويسم:
دستور 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> نباشد، يعني نميتونين از اشتراک گذاري فايل استفاده کنيد ( به عبارت ساده تر بيخيال شو اين کامپيوتر رو ! ). در اين مثال ما اين سطر را داشتيم پس ادامه ميدهيم. حالا مينويسم:
حالا اگه گفتين چي ميشه؟ درسته! دو حالت ممکنه اتفاق بيوفته:
الف) پيغام بياد
کد:
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 را انتخاب کنيد. و يا اينکه از دستور
استفاده کنيد.