زمانیکه شما در یک فرآیند تست نفوذ هستید و فاز Enumeration را انجام می دهید ، یکی از ابزارهای سیستم عامل لینوکس که به شما در این راستا می تواند کمک کند ابزار rpcclient است. این ابزار با استفاده از شناسایی کردن سرورهایی که از پروتکل SMB در شبکه استفاده می کنند و پورت های مربوط به سرویس NetBIOS آنها نیز باز است اقدام به ایجاد کردن Null Session به سرور مقصد کردن و امکان بدست آوردن اطلاعات بسیار خوبی از هدف را به ما می دهد .
قبلا در ITPRO در خصوص Null Session یا Anonymous Session صحبت کرده ایم ، فراموش نکنید که این ابزار امکان اسکن پورت ندارد و شناسایی سیستم های هدف به وسیله ابزارهای دیگری مانند Nmap انجام می شود. خوب این ابزار دارای پارامترها و سویچ های مختلفی است که برخی از آنها را با ذکر مثال در ادامه با هم یاد می گیریم ، دستور زیر تلاش برای ایجاد کردن Null Session به سرور مقصد را نشان می دهد ، با توجه به اینکه سرور مقصد آسیب پذیر نیست پاسخ زیر را دریافت خواهید کرد :
$ rpcclient -U "" 192.168.1.31 Enter 's password: could not initialise lsa pipe. Error was NT_STATUS_ACCESS_DENIED could not obtain sid for domain WORKGROUP error: NT_STATUS_ACCESS_DENIED
اما اگر سرور مقصد دارای این آسیب پذیری باشد نتیجه به شکل زیر نمایش داده می شود :
$ rpcclient -U "" 192.168.1.18 Enter 's password: rpcclient $>
بعد از اینکه با موفقیت به سرور مقصد متصل شدید ، شما می توانید با استفاده از Help ابزار دستورات موجود برای این ابزار را مشاهده کنید ، در ادامه دستوراتی که بیشترین کاربرد را دارند را به شما معرفی می کنیم ، دستور زیر به شما اطلاعات ساده و اولیه ای در خصوص سرور مقصد ارائه می دهد :
rpcclient $> srvinfo LUIGI Wk Sv PrQ Unx NT SNT nintendo server platform_id : 500 os version : 4.9 server type : 0x809a03
دستور زیر برای بدست آوردن لیست کاربران یا User Enumeration استفاده می شود :
rpcclient $> enumdomusers user:[admin] rid:[0x3ec] user:[Administrator] rid:[0x1f4] user:[Guest] rid:[0x1f5] user:[lisa] rid:[0x3f1] user:[mark] rid:[0x3f2]</pre>
دستور زیر برای بدست آوردن لیست گروه ها یا Group Enumeration استفاده می شود :
rpcclient $> enumalsgroups builtin group:[Administrators] rid:[0x220] group:[Backup Operators] rid:[0x227] group:[Guests] rid:[0x222] group:[Power Users] rid:[0x223] group:[Users] rid:[0x221]
دستور زیر می تواند سطح دسترسی های کاربران را به شما نمایش بدهد که در اصطلاح Privilege گفته می شود :
rpcclient $> enumprivs found 8 privileges SeMachineAccountPrivilege 0:6 (0x0:0x6) SeTakeOwnershipPrivilege 0:9 (0x0:0x9) SeBackupPrivilege 0:17 (0x0:0x11) SeRestorePrivilege 0:18 (0x0:0x12) SeRemoteShutdownPrivilege 0:24 (0x0:0x18) SePrintOperatorPrivilege 0:4097 (0x0:0x1001) SeAddUsersPrivilege 0:4098 (0x0:0x1002) SeDiskOperatorPrivilege 0:4099 (0x0:0x1003)
دستور زیر لیست Share های شبکه ای که بر روی سیستم مقصد وجود دارد را نمایش می دهد :
rpcclient $> netshareenum netname: IPC$ remark: IPC Service path: C:\tmp password: netname: Lisa Share remark: Lisa Docs path: C:\home\lisa\files password:
البته مجموعه ابزارهای قویتر و کاربردی تری هم وجود دارند که بسیاری از فرآیند های مربوط به Null Session را خودکار انجام می دهد که از آن جمله می توانیم به enum4linux اشاره کنیم . امیدوارم مورد توجه شما قرار گرفته باشد. ITPRO باشید
نویسنده : محمد نصیری
منبع : ITPRO
هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی می باشد
هکر کلاه سفید ، کارشناس امنیت اطلاعات و ارتباطات
هکر کلاه سفید ، کارشناس امنیت اطلاعات و ارتباطات و کشف جرائم رایانه ای ، بیش از 12 هزار ساعت سابقه تدریس در بیش از 40 سازمان دولتی ، خصوصی و نظامی ، علاقه مند به یادگیری بیشتر و عاشق محیط زیست ، عضو کوچکی از مجموعه توسینسو
16 آبان 1396 این مطلب را ارسال کرده